Reklama

kopia zapasowa witryny wordpressOstatnim razem, gdy rozmawialiśmy o kopiach zapasowych WordPress, pokazałem, jak niezwykle łatwo było wykonać kopię zapasową całego baza danych i pliki przez SSH Jak wykonać kopię zapasową witryny za pośrednictwem wiersza polecenia SSHTworzenie kopii zapasowej witryny lub bloga może być kosztownym i uciążliwym zadaniem, wymagającym różnych wtyczek lub dodatkowych planów od dostawcy usług hostingowych - ale tak naprawdę nie musi być. Jeśli masz SSH ... Czytaj więcej za pomocą tylko kilku poleceń. Tym razem pokażę, jak zautomatyzować te polecenia, zapewniając nowe kopie zapasowe całej witryny co tydzień, przy bardzo małym wysiłku. Będzie to również świetne wprowadzenie do skryptów powłoki i CRON, jeśli nigdy ich nie dotknąłeś przedtem - kluczem do nauki tak rozległych tematów jest rozpoczęcie ich od zrobienia czegoś pożytecznego ty.

Podsumowanie: wykonaj kopię zapasową wszystkiego

Omówiliśmy to ostatni raz, ale szybkie podsumowanie dwóch poleceń potrzebnych do utworzenia kopii zapasowej bazy danych i plików, zakładając, że już się zalogowałeś i przeniosłeś do katalogu witryny (jeśli nie, przeczytaj pierwszy samouczek) Rozumiesz). Upewnij się, że wykonujesz je w tej kolejności, aby kopia zapasowa pliku zawierała plik bazy danych, który wyprowadzasz w pierwszym poleceniu:

instagram viewer

mysqldump --add-drop-table -u nazwa użytkownika -p nazwa bazy danych> databasebackup.sql. tar -cf backupfile.tar.

Zastąpić Nazwa Użytkownika i nazwa bazy danych elementy z danymi bazy danych i nazwy użytkownika.

Automatyzacja Krok pierwszy: Skrypty

Na razie przygotujemy nowy skrypt, który po prostu uruchomi polecenia, których nauczyłeś się na potrzeby tworzenia kopii zapasowych, z kilkoma zmiany uwzględniające także hasło (ponieważ zostanie to zautomatyzowane, nie będziesz mógł wpisać hasła) każdego razu). Kiedy skończymy, powinieneś mieć tylko jedno polecenie do wykonania, które wykona dla ciebie dwa polecenia!

Najwyższy czas, abyś nauczył się również edytować pliki tekstowe za pomocą wiersza poleceń, ponieważ nie możesz polegać na FTP i GUI. Aby to zrobić, możesz użyć prostego edytora tekstowego o nazwie vi.

Aby uruchomić aplikację i utworzyć pierwszy skrypt, wpisz:

vi mybackupscript.sh

Jeśli plik już nie istnieje, zostanie utworzony i wyświetli się raczej zniechęcający ekran podobny do tego:

kopia zapasowa witryny wordpress

vi ma dwa tryby - tryb edycji i polecenia. Aby przejść do trybu edycji, naciśnij i. Następnie możesz zacząć pisać. Będziesz wiedział, że zadziałało, ponieważ lewy dolny róg zmieni się na –INSERT–

kopia zapasowa witryny wordpress

Zacznij od wpisania następujących informacji:

#! / bin / sh. mysqldump --add-drop-table -uNazwa Użytkownika -phasłoNazwa tabeli > dbbackup.sql. tar -cf backup.tar.

Zauważ, że tym razem uwzględniamy hasło w poleceniu. Zauważ również, że kiedy używamy przełącznika -p do określenia hasła, umieszczamy hasło natychmiast po nim, bez spacji między nimi. Jeśli wolisz, możesz zamiast tego napisać takie polecenie, ale funkcjonalnie nie ma różnicy:

#! / bin / sh. mysqldump --add-drop-table --user =Nazwa Użytkownika --password =hasłoNazwa tabeli > dbbackup.sql. tar -cf backup.tar.

Teraz musimy to zapisać. Naciśnij ESC raz, aby wyjść z trybu edycji i przejść do trybu poleceń edytora tekstu. Rodzaj:

:pisać

i naciśnij enter, a następnie

:porzucić

i wejdź ponownie.

Do tej pory zorientujesz się, że wszelkie wydawane polecenia muszą być poprzedzone dwukropkiem. To wszystko na razie z vi.

Wróć do wiersza poleceń i zrób nowy skrypt wykonywalny, wpisując następujące polecenie:

chmod 744 mybackupscript.sh

Na koniec przetestuj to za pomocą:

./mybackupscript.sh

Oczywiście w zależności od wielkości witryny i prędkości serwera może to chwilę potrwać. Na końcu możesz wyświetlić listę plików i powinieneś znaleźć plik backup.tar. Na moim wirtualnym serwerze prywatnym utworzenie kopii zapasowej witryny WordPress o wielkości 100 MB zajęło około 5 sekund.

Krok drugi automatyzacji: CRON

CRON to harmonogram zadań dla systemu Linux. Nie będziemy tutaj omawiać go szczegółowo, ale dam ci to, czego potrzebujesz, aby uruchomić skrypt tworzenia kopii zapasowych co tydzień. Omówiliśmy również sposób uruchamiania zadań CRON z poziomu panelu sterowania witryny opartego na graficznym interfejsie użytkownika. Aby dodać zadanie do harmonogramu CRON, wystarczy dodać wiersz do „crontab”. Edytuj to, wpisując:

crontab -e

Spowoduje to otwarcie pliku CRON w edytorze tekstu, najprawdopodobniej ponownie vi. Jeśli nigdy niczego wcześniej nie dodałeś, prawdopodobnie również będzie puste. Bez obaw. Dodaj te linie:

00 4 * * 0 /httpdocs/mybackupscript.sh

Format tego polecenia jest trochę trudny, ale wygląda następująco:

minuta godzina dzień miesiąca miesiąc dzień tygodnia

Znak * we wzorze ignoruje ten element. Tak więc w powyższym przykładzie uruchomimy skrypt tworzenia kopii zapasowych o 00 minutach 4 godziny, co 0 (niedzielę) tygodnia.

Oto kilka innych przykładów, które pomogą Ci zrozumieć:

01 * * * * echo „To polecenie jest uruchamiane co minutę po każdej godzinie” 17 8 * * * echo „To polecenie jest uruchamiane codziennie o 8:17” 17 20 * * * echo „To polecenie jest uruchamiane codziennie o 20:17” 00 4 * * 0 echo „To polecenie jest uruchamiane o 4 rano w każdą niedzielę” * 4 * * Echo słońca „To jest to” 42 4 1 * * echo „Polecenie to jest uruchamiane o 4:42 co 1 dnia miesiąca” 01 * 19 07 * echo „To polecenie jest uruchamiane co godzinę 19 lipca”

Po wprowadzeniu tej opcji zapisz plik, naciskając klawisz ESC, a następnie wpisując: write, a następnie: quit. Skrótową wersją tego jest po prostu wpisać: wq, które zarówno zapisze plik, jak i wyjdzie. Jest to przydatne, ale jeśli jesteś podobny do mnie, zapominasz tych małych skrótów.

Otóż ​​to! Będziesz teraz mieć aktualną kopię bazy danych i całej witryny w katalogu głównym, o nazwie backup.tar (lub cokolwiek, co chcesz nazwać). Możesz nauczyć się nieco więcej skryptów, aby dodać datę na końcu nazwy pliku i unikać zastępowania tego samego za każdym razem, ale to zależy od ciebie. Mam nadzieję, że zobaczysz, jak potężny jest teraz wiersz poleceń!

James ma licencjat z zakresu sztucznej inteligencji i jest certyfikowany przez CompTIA A + i Network +. Jest głównym programistą MakeUseOf i spędza wolny czas grając w paintball VR i gry planszowe. Buduje komputery od dziecka.