Como impedir o acesso ao ponto de montagem desmontado

8

Ok, eu tenho isso no fstab

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

Eu tenho rsnapshot no meu cron quais backups / etc / e / usr / local / e alguns outros arquivos para / backups

Recentemente, descobri que quando outro mashine está inoperante e / backups não podem ser montados, os backups rsnapshot para pastas / backups físicos, portanto, consome partição / espaço. Como posso evitar isso?

Posso impedir qualquer gravação em / backups quando não estiver montado (o rsnapshot é executado como root, pois é necessário fazer backup de alguns arquivos do sistema)

jonny
fonte

Respostas:

17

Outra opção é definir o diretório para ser imutável. Para fazer isso, você precisa executar o seguinte comando com o ponto de montagem desmontado.

chattr +i /backups

Eu faço isso em qualquer diretório que se destina a ser apenas um ponto de montagem apenas para impedir esse tipo de coisa. Porque há situações em que você não está em posição de adicionar uma verificação para ver se algo está montado. Por exemplo, se o processo não é um script que você controla ou é um humano que está gerando ou movendo os dados. Essa abordagem evitará que dados indesejados sejam gravados em um ponto de montagem desmontado nessas situações. Eu ainda adicionaria a verificação de montagem aos seus scripts para que você possa gerar erros significativos.

3dinfluence
fonte
1
Funciona e não requer modificação de nada, exceto a pasta do ponto de montagem. Ótimo!
jonny
6

Por que não apenas o script de backup testar se / backups está montado e sair se não estiver?

mount | grep -q /backups || exit 1

fonte
apenas modifiquei o meu crontab comoif [ ! -z "$(ls /backups/)" ]; then /usr/bin/rsnapshot daily; fi;
jonny
2

a maneira mais fácil de lidar com isso é .. com o rsnapshot diretamente.

Você deve dar uma olhada na opção no_create_root

HTH

Yann Sagon
fonte