OnWorks Linux i Windows Online WorkStation

logo

Darmowy hosting online dla stacji roboczych

<Poprzedni | Spis treści | Następne>

2.1. Rotacja archiwów NFS


W tej sekcji skrypt powłoki zostanie nieco zmodyfikowany, aby zaimplementować schemat rotacji dziadek-ojciec-syn (co miesiąc-tydzień-codziennie):

• Obrót wykona a codziennie kopia zapasowa od niedzieli do piątku.

• W sobotę o tygodniowy kopia zapasowa jest wykonywana, co daje cztery cotygodniowe kopie zapasowe w miesiącu.

miesięcznie kopia zapasowa jest wykonywana pierwszego dnia miesiąca, z rotacją dwóch miesięcznych kopii zapasowych w zależności od tego, czy miesiąc jest nieparzysty, czy parzysty.


Oto nowy skrypt:


#! / bin / bash

####################################

#

# Utwórz kopię zapasową skryptu montowania NFS za pomocą

# rotacja dziadek-ojciec-syn.

#

####################################


# Co wykonać kopię zapasową.

backup_files="/home /var/spool/mail /etc /root /boot /opt"


# Gdzie wykonać kopię zapasową. cel="/mnt/kopia zapasowa"


# Ustaw zmienne dla nazwy pliku archiwum. dzień=$(data +%A)

nazwa hosta=$(nazwa hosta -s)


# Znajdź, który to tydzień miesiąca 1-4. dzień_num=$(data +%-d)

if (( $day_num <= 7 )); następnie plik_tygodnia="$nazwa_hosta-tydzień1.tgz"

elif (( $day_num > 7 && $day_num <= 14 )); następnie plik_tygodnia="$nazwa hosta-tydzień2.tgz"

elif (( $day_num > 14 && $day_num <= 21 )); następnie plik_tygodnia="$nazwa hosta-tydzień3.tgz"

elif (( $day_num > 21 && $day_num < 32 )); następnie plik_tygodnia="$nazwa hosta-tydzień4.tgz"

fi



# Sprawdź, czy miesiąc jest parzysty czy nieparzysty. numer_miesiąca=$(data +%m)

miesiąc=$(wyrażenie $miesiąc_num % 2) if [ $miesiąc -eq 0 ]; Następnie

miesiąc_plik="$nazwa_hosta-miesiąc2.tgz"

więcej


fi


miesiąc_plik="$nazwa_hosta-miesiąc1.tgz"


# Utwórz nazwę pliku archiwum. jeśli [ $day_num == 1 ]; następnie plik_archiwum=$plik_miesiąca

elif [ $dzień != "Sobota"]; następnie plik_archiwum="$nazwa hosta-$dzień.tgz"

inaczej plik_archiwum=$plik_tygodnia

fi


# Wydrukuj komunikat o stanie rozpoczęcia.

echo „Tworzenie kopii zapasowej $backup_files do $dest/$archive_file” data

przegapić


# Wykonaj kopię zapasową plików za pomocą tar.

tar czf $dest/$archive_file $backup_files


# Wydrukuj komunikat o stanie zakończenia. Echo

echo Data zakończenia tworzenia kopii zapasowej


# Długa lista plików w $dest, aby sprawdzić rozmiary plików. ls -lh $dest/


Skrypt można wykonać tymi samymi metodami, co w Sekcji 1.2, „Wykonywanie skryptu” [s. 325].


Na wypadek awarii dobrą praktyką jest zabranie nośników kopii zapasowych poza siedzibę. W przykładzie skryptu powłoki nośnikiem kopii zapasowych jest inny serwer udostępniający udział NFS. Najprawdopodobniej przeniesienie serwera NFS do innej lokalizacji byłoby niepraktyczne. W zależności od szybkości połączenia może być dostępna opcja skopiowania pliku archiwum przez łącze WAN na serwer w innej lokalizacji.


Inną opcją jest skopiowanie pliku archiwum na zewnętrzny dysk twardy, który można następnie zabrać poza siedzibę. Ponieważ ceny zewnętrznych dysków twardych stale spadają, opłacalne może być użycie dwóch dysków na każdy poziom archiwum. Umożliwiłoby to podłączenie jednego dysku zewnętrznego do serwera kopii zapasowych i jednego w innej lokalizacji.


Najlepsze przetwarzanie w chmurze dla systemu operacyjnego w OnWorks: