REKLAMA: Jeśli już potrafisz tworzyć strony internetowe, wejdź na blog z poradami dla średnio-zaawansowanych webmasterów www.PomocnikWebmastera.pl |
Zawsze na dysku trzymam kopię zapasową swojego serwisu (mam taki nawyk, że robię stronę na dysku a jak zrobię to wtedy wrzucam ją na serwer). Dzięki temu gdy padnie serwer, mam kopię serwisu na dysku. Jednak z upływem czasu zapomniałem np. skasować stary plik z dysku, który skasowałem z serwera, dodałem trochę skryptów, które generują pliki na serwerze i okazało się, że to co mam na dysku nie pokrywa się w 100% z tym co mam na serwerze. Mógłbym ściągnąć na dysk wszystkie pliki, ale to nie jest wygodne (szczególnie wtedy, gdy masz dużo plików).
Często na serwerze jest dużo małych plików a ściąganie 1000 małych plików o rozmiarze 1MB trwa znacznie dłużej niż ściągnięcie 1 dużego pliku o rozmiarze 1MB. Najlepiej by było zrobić archiwum całego serwisu i ściągnąć taki plik. Dzięki temu zyskujemy:
Warto od czasu do czasu pobrać z serwera pliki, gdyż na wypadek awarii, będziesz miał na dysku w miarę wierną kopię serwisu. A oto prosty skrypt w PHP robiący backup:
<?
$q = system("tar -cf ../g.tar ../*");
sleep(10);
$q = system("gzip ../g.tar");
sleep(10);
?>
Ten plik należy wrzucić do katalogu public_html (lub www, zależy to od ustawień serwera) i odpalić z poziomu przeglądarki internetowej. Należy odczekać kilka sekund (a nawet minut, gdy masz obszerny serwis) a potem możesz wejść na serwer FTP i 1 poziom nad katalogiem public_html znajdziesz plik g.tar.gz, który zawiera kopię serwisu. Format tar.gz jest bardzo popularnym formatem archiowów pod linuxem (a jak wiadomo serwery stoją głównie na linuxach) jednak WinRar bez problemu rozpakuje taki plik.
Jeśli masz dostęp do shella, to nie musisz pisać skryptu w
PHP, możesz sam ręcznie wyklepać następujące komendy (przejdź do katalogu o 1 poziom
wyższego od public_html, czyli wydając komendę ls, w wynikach powinien zostać
zwrócony właśnie katalog public_html):
tar -cf g.tar *
gzip g.tar
Podobne porady:
Webmasterze, dlaczego warto się uczyć linuxa