Escape codes en SSH Lunes 9 dUTC Junio dUTC 2008
Posted by drencrom in ssh.add a comment
El caracter de escape por defecto en SSH, salvo que se defina otra cosa en /etc/ssh/ssh_config es ~
Digitando ~? podemos ver la lista de opciones de escape disponibles.
Las más interesantes son ~. que permite cerrar la sesión por la fuerza cuando la misma no responde ningún comando ni siquiera el ^C.
La otra es ~C que permite abrir una consola de comando propia del SSH. Desde aquí se puede habilitar y deshabilitar forwarding de puertos entre otras cosas (con help en la consola se pueden ver las opciones disponibles)
Es importante tener en cuenta que estos códigos de escape solo valen luego de un fin de línea. O sea que poner un ~ en el medio de un comando no se va a considerar un escape.
Otra cosa importante es que ~~ pasa el caracter de escape a la consola remota, por lo que es si se tienen conexiones ssh en cascada es posible usar posible usar ~~. para cerrar la segunda sesión sin cerrar la primera.
Ocultar y mostrar bloques con vimdiff Domingo 8 dUTC Junio dUTC 2008
Posted by drencrom in vim.add a comment
Cuando se muestran las diferencias entre dos archivos vimdiff oculta automáticamente los bloques de texto que coinciden.
Para mostrar uno de los bloques ocultos hay que posicionarse sobre la línea que marca el bloque y presionar zo
Para ocultarlo se debe estar posicionado en cualquier parte del bloque y presionar zc
No hay que poner : antes de estos comandos.
Recargar la tabla de particiones sin reiniciar el sistema Sábado 5 dUTC Abril dUTC 2008
Posted by drencrom in Linux.add a comment
Puede ser un poco raro este problema pero puede ser muy molesto cuando se trata de servidores. La solución es muy fácil, solamente hay que ejecutar el comando partprobe que es parte del paquete parted
fstab con UUID Sábado 5 dUTC Abril dUTC 2008
Posted by drencrom in Linux.add a comment
Muchas distribuciones nuevas usan el UUID de las particiones en lugar del nombre tradicional de las misma spara definirlas en el archivo /etc/fstab
Para obtener el UUID de un partición hay que ejecutar:
vol_id <nombre tradicional de la partición>
Luego de esto se hace igual que siempre solo que en lugar del nombre de la partición se pone UUID=<uuid> en el fstab.
Supuestamente la gracia de esto es que si se mueven los discos de lugar el sistema va a encontrar las particiones en el lugar correcto aunque cambien de nombre (ej. de /dev/sda1 a /dev/sda2) (más…)
Múltiples SSID en Linksys con OpenWRT Lunes 31 dUTC Marzo dUTC 2008
Posted by drencrom in OpenWRT.add a comment
Es posible configurar más de un SSID con OpenWRT (probado solamente en un Linksys WRT54g) con la salvedad de que solamente se puede hacer broadcast del primero de ellos. En este ejemplo estan configuradas dos redes: una pública con broadcast y sin cifrado y una privada con WPA2 y sin broadcast.
Para empezar hay que editar el archivo /etc/config/network de esta forma:
#### VLAN configuration
config switch eth0
option vlan0 "0 1 2 3 5*"
option vlan1 "4 5"
option vlan2 "5"
#### Loopback configuration
config interface loopback
option ifname "lo"
option proto static
option ipaddr 127.0.0.1
option netmask 255.0.0.0
#### LAN configuration
config interface lan
option type bridge
option ifname "eth0.0"
option proto static
option ipaddr 192.168.x.1
option netmask 255.255.255.0
#### WAN configuration
config interface wan
option ifname "eth0.1"
option proto pppoe
option username "user"
option password "passwd"
option keepalive 10
option mtu 1492
#### WLAN configuration
config interface wlan
option type bridge
option ifname "eth0.2"
option proto static
option ipaddr 192.168.y.1
option netmask 255.255.255.0
Donde las vlans permiten separar los puertos del router en diferentes redes. Básicamente (según entiendo yo) los puertos 0, 1, 2 y 3 son las tres bocas del switch, el puerto 4 es la boca wan y el puerto es 5 algo mágico que tiene que estar en todos
En esta configuración se tiene una vlan con las bocas físicas, una para la wan (así viene por defecto) y una vlan nueva para la red inalámbrica pública que estará separada de la red donde están las bocas físicas del router.
Luego de esto se configura el loopback y después hay una entrada para configurar cada una de las 3 vlans en el orden en que se definieron. La primera y la tercera son de tipo bridge para que incluyan también a la red inalámbrica.
Luego de esto hay que configurar las redes inalámbricas en /etc/configure/wireless donde se pone esto:
config wifi-device wl0
option type broadcom
option channel 5
config wifi-iface
option device wl0
option network wlan
option mode ap
option ssid ssid1
option encryption none
option hidden 0
config wifi-iface
option device wl0
option network lan
option mode ap
option ssid ssid2
option encryption psk2
option key "passwd"
option hidden 1
Aquí se configura primero la red pública en la red wlan (ver archivo anterior) y luego la privada en la red lan. La pública debe ser la primera para que ande el broadcast. Aquí está deshabilitado para la segunda pero no anda aunque se habilite.
Con esto ya están los dos SSID andando pero si se quiere que ambos funcionen con dhcp hay que cambiar también el archivo /etc/config/dhcp de esta forma:
config dhcp
option interface lan
option start 100
option limit 150
option leasetime 12h
config dhcp
option interface wlan
option start 100
option limit 150
option leasetime 12h
config dhcp
option interface wan
option ignore 1
Para incluir a las dos interfases (por defecto trae una sola).
Por último pero no menos importante si se quiere que la red wlan tenga salida a Internet hay que agregar una regla parecida a esta en /etc/firewall.user
iptables -A forwarding_rule -i br-wlan -o ppp0 -j LOG --log-prefix 'OPEN NETWORK ACCESS: '
iptables -A forwarding_rule -i br-wlan -o ppp0 -j ACCEPT
Que permita el acceso desde el bridge br-wlan a la interfaz ppp0. Agrego también un log que no viene mal dado que la red va a ser pública.
Ver uso de cada CPU en un multiprocesador Lunes 31 dUTC Marzo dUTC 2008
Posted by drencrom in Linux.add a comment
En máquinas con múltiples procesadores no son muy útiles los datos que se obtienen con uptime para saber la carga real del sistema. Si hay algún procesador cargado ya se van a obtener valores mayores a 1 aunque la máquina tenga recursos libres.
Para solucionar esto esta la utilidad mpstat que permite ver la carga de cada uno de los procesadores por separado. Este programa usualmente está dentro del paquete sysstat o similar dependiendo de la distro.
Después de instalado, para ver la carga de todas las CPUs hay que ejecutar: mpstat -P ALL
Cambiar una contraseña del root olvidada Lunes 31 dUTC Marzo dUTC 2008
Posted by drencrom in Linux.add a comment
Estas son las instrucciones en caso de que se use Grub como boot manager:
- En el menú del grub se selecciona la opción del kernel que se quiera bootear y se presiona la letra e de edit
- Ahí se pueden cambiar los parámetros que se le van a mandar al kernel al bootear. La idea es agregar esto:
init=/bin/bashAsí se logra decirle al kernel que use al bash como proceso init (es el pid 1). Para bootear con estas opciones cambiadas se debe presionar la letra b. - Entonces vamos a terminar con una consola enseguida que se levanta el kernel (va a ser el único proceso corriendo)
- Ahora tenemos que montar el directorio raiz (y el que tenga el /etc) como escritura dado que por defecto a esta altura estan montados como solo lectura. Para esto hay que ejecutar:
mount -o remount,rw / - Luego alcanza con ejecutar
passwdpara cambiar la contraseña y luego reiniciar