Para ver cuánta memoria está consumiendo un proceso disponemos del siguiente comando:
pmap PID
(el PID de un proceso lo podemos obtener con el comando ps)
El resultado es algo como esto:
# pmap 2333
2333: /usr/sbin/acpid
08048000 32K r-x-- /usr/sbin/acpid
08050000 4K rw--- /usr/sbin/acpid
[...]
b7fe8000 8K rw--- /lib/ld-2.7.so
bffe4000 84K rw--- [ stack ]
total 1772K
Hay veces que queremos saber si se están estableciendo conexiones a un determinado puesto de nuestra máquina. Para ello se puede usar la herramienta iptables, que aunque habitualmente se utiliza para filtrar también permite guardar un registro de todo lo relacionado con red.
Por ejemplo, para supervisar conexiones a una BBDD MySQL, que escucha en el puerto 3306:
iptables -A INPUT -p tcp --dport 3306 --syn -j LOG
La mayoría de vosotros ya sabréis que un comando que se lanza desde terminal añadiendo un "&" se ejecuta en segundo plano. Sin embargo, si cerramos la sesión cuando el comando aún no ha terminado, éste es abortado por el sistema.
Para evitarlo se puede ejecutar:
nohup comando parámetros &
Esto crea un fichero "nohup.out" en el directorio actual (o en $HOME si no se tienen permisos), al que se redirige lo que el comando escupa por pantalla (stdout).
A continuación tenéis un pequeño videotutorial para aquellos que os manejéis un poco con la programación y queráis modificar alguno de vuestros programas habituales.
En el vídeo se muestra cómo descargar un paquete fuente, realizar modificaciones al código, recompilarlo e introducirlo en el sistema en su versión binaria.
Además de la autenticación por contraseña, existe otro método para acceder a una máquina remota con SSH: usando llaves pública/privada. Hace unos años montar la infraestructura necesaria para esto era algo complicado, pero hoy en día se reduce al uso de dos simples comandos.
Primero, es necesario generar un par de llaves:
$ ssh-keygen -t rsa
Este comando solicitará un nombre para el fichero generado (podemos aceptar el que viene por omisión, $HOME/.ssh/id_rsa) y una clave para proteger la llave privada generada (se puede dejar en blanco, ver más abajo).
A continuación tenéis varios comandos de terminal (la mayoría propios de bash) que os pueden ser de utilidad:
cd
Te lleva a tu directorio $HOME
cd -
Te lleva al directorio en el que estuvieses antes del último cd
for i in `ls -1 *zip`; do unzip $i; done
Descomprime todos los ficheros ZIP de un directorio
Cuando uno intenta instalar la versión para Linux del juego Alpha Centauri en una distribución moderna, a veces éste se cierra bruscamente nada más comenzar la partida. Para evitarlo, es necesario añadir las siguientes líneas al fichero /etc/X11/xorg.conf (o modificar la sección existente):
Section "Extensions"
Option "Composite" "Disable"
EndSection
El sistema Debian GNU/Linux utiliza para la instalación de software unos repositorios públicos disponibles en la red. Además de los repositorios "oficiales", existen numerosas fuentes adicionales por Internet que pueden proporcionarnos software bastante interesante.
Para usar estas fuentes no oficiales es necesario añadir líneas de texto al fichero /etc/apt/sources.list, bien "a pelo" mediante un editor, o bien desde vuestra herramienta de instalación de software favorita.
Explico aquí algunos de los que uso para la distribución estable (Lenny, actualmente):
Este artículo de Linux Journal me ha alegrado el día: parece ser que OpenSSH puede multiplexar varias sesiones de terminal usando una misma conexión TCP. Esto que a primera vista puede parecer una tontería tiene un montón de ventajas:
Para pasar ficheros MOD (.mod, .s3m, .xm, etc.) a MP3 u OGG, necesitamos primero convertirlos a WAV. La mayoría de reproductores actuales permiten este tipo de conversión, pero para hacerlo desde línea de comandos, el único que he encontrado ha sido mikmod (disponible en Debian y Ubuntu en el paquete con el mismo nombre).