Cara Mencegah Akses Ke Mount Point Yang Tidak Diount

8

Ok, saya punya ini di fstab

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

Saya memiliki rsnapshot di cron saya yang mencadangkan / etc / dan / usr / local / dan beberapa file lain ke / backup

Baru-baru ini saya menemukan bahwa ketika mashine lain sedang down dan / backup tidak dapat di-mount backup rsnapshot ke folder fisik / backup sehingga memakan partisi / ruang. Bagaimana saya bisa menghindari ini?

Dapatkah saya mencegah penulisan / backup ketika tidak di-mount (rsnapshot berjalan sebagai root, karena perlu membuat cadangan beberapa file sistem)

Jonny
sumber

Jawaban:

17

Pilihan lain adalah mengatur direktori agar tidak berubah. Untuk melakukan ini, Anda perlu menjalankan perintah berikut dengan mount point dilepas.

chattr +i /backups

Saya melakukan ini pada direktori apa pun yang dimaksudkan hanya menjadi titik mount hanya untuk mencegah hal semacam ini. Karena ada situasi di mana Anda tidak dapat menambahkan tanda centang untuk melihat apakah ada sesuatu yang dipasang. Seperti jika prosesnya bukan skrip yang Anda kontrol atau manusia yang menghasilkan atau memindahkan data. Pendekatan ini akan mencegah data yang tidak diinginkan ditulis ke dalam mount point yang tidak terpasang dalam situasi tersebut. Saya masih akan menambahkan mount mount ke skrip Anda sehingga Anda dapat menghasilkan kesalahan yang berarti.

Pengaruh 3d
sumber
1
Ini berfungsi dan tidak perlu memodifikasi apa pun kecuali folder mount point. Bagus!
jonny
6

Mengapa tidak hanya memiliki tes skrip cadangan apakah / backup sudah terpasang, dan keluar jika tidak?

mount | grep -q /backups || exit 1

sumber
baru saja memodifikasi crontab saya sebagaiif [ ! -z "$(ls /backups/)" ]; then /usr/bin/rsnapshot daily; fi;
jonny
2

cara termudah untuk menangani ini adalah .. dengan rsnapshot secara langsung.

Anda harus melihat opsi no_create_root

HTH

Yann Sagon
sumber