Para realizar las copias de seguridad de los datos almacenados en el servidor utilizo un disco SATA en una caja externa con conexión e-SATA, y una controladora PCI Conceptronic en el servidor, con puerto e-SATA.
Conecto el disco externo y ejecuto el siguiente comando para que se le asigne un dispositivo:
atacontrol attach ata4
Creo el filesystem en el disco, en un slice creado anteriormente desde sysinstall:
newfs -U /dev/ad8s1c
Creo el usuario que utilizaré para realizar las copias de seguridad, y que sólo tendrá permisos de lectura sobre los datos a copiar:
pw useradd -n backup -G datos,operator -m -h 0
Añado la siguiente línea al fichero /etc/devfs.rules, en el apartado [localrules=5] que habíamos creado anteriormente, para que se asignen los permisos necesarios al dispositivo cada vez que se conecte el disco:
add path 'ad8*' mode 0660 group operator
En el archivo /etc/rc.conf ya debemos tener de antes la siguiente línea:
devfs_system_ruleset="localrules"
Reinicio el proceso devfs:
/etc/rc.d/devfs restart
Creo el directorio donde se montará el filesystem y le cambio el propietario al usuario backup:
mkdir /mnt/backup
chown backup:backup /mnt/backup
Creo un script para lanzar el backup desde el usuario root, con el siguiente contenido:
atacontrol attach ata4
mount /dev/ad8s1c /mnt/backup
su -m backup -c "rsync -rlti --delete /datos/ /mnt/backup --exclude '.snap' --exclude 'download' --exclude 'lost+found'"
sleep 5
umount /mnt/backup
atacontrol detach ata4
Hay información interesante sobre el manejo de discos externos aquí: