Synchronizacja archiwów z dyskiem sieciowym SMB
Przypadek
W sieci lokalnej znajduje się urządzenie lub serwer udostępniający zasób SMB dla celów składowania kopii.
Przygotowanie środowiska
W serwerze musi być zainstalowane polecenie mount.cifs
, przydatne będzie także polecenie smbclient
do ręcznego łączenia się z udostępnionym zasobem.
sudo apt-get install cifs-utils smbclient
Do połączenia będziemy potrzebować:
- Adres IP maszyny (np. 192.168.1.100)
- Nazwa zasobu sieciowego (np. Archiwum)
- Nazwa użytkownika i hasło (np. biblioteka / 123abc)
Skrypt
Skrypt event.on_before_burn_dvd
#!/bin/bash # Utwórz katalog montowania, jeśli nie istnieje mkdir -p /mnt/smb_backup # Zamontuj udział SMB mount -t cifs -o user=biblioteka,pass=123abc,noexec //192.168.1.100/Archiwum /mnt/smb_backup # Sprawdź, czy montowanie się powiodło if mountpoint -q /mnt/smb_backup; then # Jeśli tak, wykonaj synchronizację echo "Mount successful, starting rsync..." rsync -rLt /home/sowa/.sowang/var/backup/00_arch /mnt/smb_backup/ else # Jeśli nie, zakomunikuj błąd echo "Mount failed. Exiting script." fi # Odmontuj udział SMB umount /mnt_backup
Weryfikacja
Można połączyć się z zasobem i sprawdzić jego zawartość.
smbclient -U biblioteka //192.168.1.100/Archiwum