Da, acesta este comportamentul intenționat al grsync, rsync, etc. și al multor alte instrumente de backup și este responsabilitatea utilizatorului să verifice dacă volumul este montat înainte de a executa aceste instrumente (după cum faceți aluzie). Puteți crea un script care rulează comanda grsync în loc să o rulați direct și apoi să puneți niște comenzi care verifică dacă volumul este montat înainte de a rula comanda grsync (sau pur și simplu rulați manual comenzile de verificare de montare, funcționează și asta). Ceva de genul acesta ar putea funcționa:
cd /home/nume utilizator/
scripturi mkdir
scripturi cd
nano grsyn.sh
sudo chmod 750 grsync.sh
nano grsync.sh
Apoi, în fișierul care se deschide în editorul de text nano, copiați și lipiți și ajustați acest script la nevoile dvs.:
dacă grep -qs '/mnt/backup ' /proc/mounts; atunci
echo "Voi continua cu grsync deoarece volumul este gata."
grsync [introduceți comenzile/steaguri aici]
altfel
echo „Volumul nu este pregătit, așa că nu rulez grsync.”
fi
Puteți rula scriptul manual navigând la directorul scripturilor și tastând ./grsync.sh
. The q
flag este opțional și poate fi eliminat în funcție de preferințele utilizatorului. Puteți crea opțional un job cron pentru a rula acest script după cum urmează:
sudo crontab -e
Sub ultima intrare, copiați/lipiți și ajustați următoarele în funcție de nevoile dvs.:
0 8 * * * /bin/bash /home/username/scripts/ >> /home/username/grsync.log
Acest script va rula comanda grsync dorită în fiecare zi, la ora 8:00.
Utilizatorii noi și/sau fluxurile de lucru mai puțin complexe ar putea necesita doar o simplă verificare și, în acest caz, este mai ușor să introduceți o singură comandă la consolă. Pentru a face asta, utilizați sintaxa grep de mai sus, dar asigurați-vă că omiteți q
marcați astfel încât rezultatul să fie imprimat la ieșirea standard:
grep -s '/mnt/backup ' /proc/mounts
Acest lucru va imprima apoi un rezultat similar cu acesta dacă volumul este montat:
/dev/sdb /mnt/backup ext4 rw,nosuid,nodev,noatime,attr2,inode64,logbufs=8,logbsize=32k,noquota 0 0
Dacă nu primiți nicio ieșire și atâta timp cât șirul dvs. grep este precis, atunci acest lucru ar indica că volumul probabil nu este montat. În sfârșit, dacă vrei asta integrat în front-end-ul grafic al grsync în loc să fie manipulat la linia de comandă, apoi introduceți pur și simplu comanda manuală în Opțiuni suplimentare / Executați această comandă înainte de rsync / Opriți la eșec.