rsync sobre SSH con clave pública

Describiré como realizar un backup de los archivos de un host cliente en un servidor remoto. Se usará rsync y no pedirá contraseña para SSH.

Todos los comandos serán ejecutados en el host cliente:

ssh-keygen -b 4096 -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub root@vmrsync

Cada uno cambiará root@vmrsync por lo que le convenga, siendo el patrón usuario@servidor

Acto seguido, ya podremos realizar desde el host cliente los backups. Por ejemplo:

rsync -aRe ssh --delete --numeric-ids /etc/ vmrsync:/root/SERVIDOR/
rsync -aRe ssh --delete --numeric-ids /home/usuario/ vmrsync:/root/SERVIDOR/

Para las opciones usadas, man rsync

Instalar MLDonkey desde las fuentes y con script de inicio

El problema más habitual de instalar algo desde la fuentes es encontrar o crear un buen script de inicio. Con lo siguiente, aprovecharemos el script de inicio que viene con el paquete mldonkey-server

Lo instalamos: aptitude install mldonkey-server Cuando nos pregunte si queremos que se lance al inicio, le damos a No (al final lo volveremos a poner). Con esto, tendremos el script de inicio y el archivo de variables (en /etc/default/mldonkey-server) necesarios para el inicio automático cuando se enciende el ordenador.

Ahora, por si no lo tenemos ya, vamos a instalar las dependencias necesarias para la compilación con aptitude build-dep mldonkey-server Además, instalaremos CVS para descargar las fuentes: aptitude install cvs

Para compilar, yo tengo este script en un subdirectorio dentro de mi home (/home/mi_user/compilar). Ahí dentro tengo un script llamado mldonkey.sh con el siguiente contenido:

#!/bin/bash
cvs -z3 -d:pserver:anonymous@cvs.sv.gnu.org:/cvsroot/mldonkey co mldonkey
cd mldonkey
./configure --disable-multinet --enable-bittorrent --enable-filetp --prefix=/usr && make

Con las opciones que he uso al configurar, se tendría soporte para la red edonkey, torrent y http (en la ayuda pone: filetp aka wget, pero no lo he probado). Vamos, las más habituales.

Ejecutamos el script (sh mldonkey.sh) con tu_usuario y tras unos minutos acabará la compilación. Después de esto, como root, entraremos en la carpeta y lo instalaremos: cd mldonkey && make install
En caso de que ya lo hubieras compilado, simplemente sobreescribe el ejecutable: cp compilar/mldonkey/mlnet /usr/bin/mlnet

Ahora crearemos el directorio donde estará la configuración y las descargas:

mkdir -p /home/mldonkey/.mldonkey
cp /var/lib/mldonkey/downloads.ini /home/mldonkey/.mldonkey/
chown mldonkey:mldonkey /home/mldonkey -R

El último cambio que haremos será en el archivo /etc/default/mldonkey-server Quedará así:

MLDONKEY_DIR=/home/mldonkey/.mldonkey
MLDONKEY_USER=mldonkey
MLDONKEY_GROUP=mldonkey
MLDONKEY_UMASK=0022
LAUNCH_AT_STARTUP=true
MLDONKEY_NICENESS=0

Aquí se ve que ya hemos cambiado a que se lance al inicio.
Para iniciarlo (o pararlo) manualmente: /etc/init.d/mldonkey start (/etc/init.d/mldonkey stop)

Comprobar la integridad de un DVD grabado

Usaremos hashes MD5.

Creamos el archivo con los hashes:

cd /path/to/mi/directorio/a/grabar
find . -type f -print0 | xargs -0 md5sum >> ../dvd_md5.txt

Una vez grabado el DVD, comprobaremos la integridad, mostrando sólo los errores:

md5sum -c < /path/to/dvd_md5.txt | perl -lne 'print if not /OK$/'

Fuente: http://superuser.com/questions/79149/how-to-check-dvd-integrity-at-max-read-speed-of-dvd-writer/79523#79523

Grabar DVD de datos desde consola

Hay que seguir dos pasos: crear un archivo .iso y luego grabarlo.

Crear ISO

genisoimage -r -J -l -d -joliet-long -allow-multidot -V Etiqueta -o ./archivo.iso /path/to/files/*

NOTA: con este comando, me ha dado problemas para crear la ISO al tener archivos con el mismo nombre en directorios distintos. genisoimage crea una estructura en el raíz de la ISO con todos los archivos… por tanto hay conflicto. Con la opción -graft-points hay que indicar estos directorios con archivos del mismo nombre… lo que es un coñazo.
Para no tener este problema, se recomienda usar la alternativa de debajo.

Grabar ISO

growisofs -dvd-compat -Z /dev/dvd=archivo.iso

Alternativa

Usando growisofs (aptitude install dvd+rw-tools)

growisofs -Z /dev/dvd -r -J -l -d -joliet-long -allow-multidot -V Etiqueta /path/to/file/or/directory

Fuente: http://linuxneophyte.com/creating-isos-dvds-using-console-tools/
http://www.linuxforums.org/forum/installation/35772-how-burn-dvd-iso.html#post190542
http://www.debianhelp.co.uk/burningdvd.htm

Obtener la IP pública desde línea de comandos

Si alguna vez necesitamos conocer nuestra IP pública y la queremos de una forma limpia (sin etiquetas HTML, etc) existen un par de páginas para ello:

curl whatismyip.org
curl icanhazip.com

Fuente: http://rackerhacker.com/2009/07/31/get-the-public-facing-ip-for-any-server-with-icanhazip-com/