Cómo evitar el acceso al punto de montaje desmontado

8

Ok, tengo esto en fstab

  //windows_mashine/Backup /backups cifs credentials=/root/.credentials,rw,_netdev,iocharset=utf8,uid=1000 0 0

Tengo rsnapshot en mi cron que respalda / etc / y / usr / local / y algunos otros archivos a / backups

Recientemente descubrí que cuando otro mashine está inactivo y / copias de seguridad no se pueden montar copias de seguridad rsnapshot en la carpeta / copias de seguridad físicas, por lo que se come partición / espacio. ¿Cómo puedo evitar esto?

¿Puedo evitar escribir / hacer copias de seguridad cuando no está montado (rsnapshot se ejecuta como root, ya que necesita hacer una copia de seguridad de algunos archivos del sistema)

jonny
fuente

Respuestas:

17

Otra opción es configurar el directorio para que sea inmutable. Para hacer esto, debe ejecutar el siguiente comando con el punto de montaje desmontado.

chattr +i /backups

Hago esto en cualquier directorio que esté destinado a ser solo un punto de montaje solo para evitar este tipo de cosas. Porque hay situaciones en las que no está en condiciones de agregar una verificación para ver si hay algo montado. Por ejemplo, si el proceso no es un script que controlas o es un humano que genera o mueve los datos. Este enfoque evitará que los datos no deseados se escriban en un punto de montaje desmontado en esas situaciones. Sin embargo, todavía agregaría la verificación de montaje a sus scripts para que pueda generar errores significativos.

3dinfluence
fuente
1
Funciona y no requiere modificar nada excepto la carpeta del punto de montaje. ¡Excelente!
jonny
6

¿Por qué no simplemente hacer que el script de respaldo pruebe si / backups está montado y salga si no?

mount | grep -q /backups || exit 1

fuente
acabo de modificar mi crontab comoif [ ! -z "$(ls /backups/)" ]; then /usr/bin/rsnapshot daily; fi;
jonny
2

la forma más fácil de manejar esto es ... con rsnapshot directamente.

Deberías echar un vistazo a la opción no_create_root

HTH

Yann Sagon
fuente