Jak wykonać kopię zapasową bloga Ghost w systemie Linux

Platforma blogowa Ghost jest wspaniała dla nowych użytkowników, którzy chcą hostować własne oprogramowanie, dzięki automatycznemu skryptowi instalacyjnemu. Niestety nie ma automatycznego skryptu kopii zapasowej. W rezultacie wiele instalacji Ghost przebiega bez kopii zapasowych. Prostym sposobem na utworzenie kopii zapasowej bloga Ghost jest użycie zintegrowanego menedżera kopii zapasowych. Chociaż prawdą jest, że ta metoda nie jest tak dokładna i nie daje tyle swobody, jest przydatna w mgnieniu oka.

Aby wykonać kopię zapasową bloga Ghost z interfejsu Ghost, otwórz nową kartę przeglądarki i przejdź pod następujący adres URL:

https://myghostblog.com/ghost/settings/labs/

Na stronie Laboratorium w interfejsie internetowym Ghost znajdź przycisk „Eksportuj” i wybierz go. Kliknięcie Eksportuj umożliwi wykonanie kopii zapasowej całego bloga. Aby przywrócić ten typ kopii zapasowej w późniejszym terminie, przejdź pod ten sam adres URL, kliknij „Importuj”, wyszukaj kopię zapasową i załaduj ją. Wkrótce po zaimportowaniu ustawienia i dane powinny powrócić do stanu, w jakim były wykonywane po raz pierwszy.

Kopia zapasowa wiersza polecenia

Ghost ma przyzwoite narzędzie do tworzenia kopii zapasowych wbudowane w swoje oprogramowanie, ale nie oferuje tego samego rodzaju bezpieczeństwa, automatyzacji i wolności, jakie mogą pochodzić z kopii zapasowej za pośrednictwem wiersza poleceń Linuksa. Aby wykonać kopię zapasową bloga Ghost na hoście z systemem Linux, utwórz nowy folder. W tym folderze będą przechowywane wszystkie ważne pliki kopii zapasowych i dane dotyczące programu Ghost.

W terminalu serwera użyj polecenia mkdir, aby utworzyć nowy folder. Nie rób tego jako root!

mkdir -p ~/ghost-blog-backup
mkdir -p ~/ghost-blog-backup/sql

Uruchomienie mkdir tworzy nowy katalog w folderze / home / aktualnie zalogowanego użytkownika. Jest to dobra lokalizacja do przechowywania plików kopii zapasowych, ponieważ nie zostaną one zgubione w przypadkowych lokalizacjach w systemie plików Linuksa.

Następnie użyj narzędzia sqldump do wyeksportowania bazy danych Ghost SQL.

Uwaga: wpisz Root w „nazwa użytkownika” i nazwę bazy danych nadaną Ghost podczas instalacji.

mysqldump -u username -p databasename > db.ghost_blog.sql

Wejdź do katalogu Ghost za pomocą polecenia CD.

cd /var/www/ghost

W katalogu oprogramowania Ghost wykonaj funkcję Ghost Stop, aby wyłączyć oprogramowanie Ghost.

ghost stop

Przy wyłączonym oprogramowaniu serwera można bezpiecznie wykonać pełną kopię wszystkiego do ~ / ghost-blog-backup.

cp -rp /var/www/ghost/* ~/ghost-blog-backup

Uruchomienie polecenia CP z flagami RP zapewni, że wszystkie uprawnienia ustawione przez oprogramowanie instalacyjne Ghost pozostaną nienaruszone. Stąd użyj CD, aby wyjść z / var / www / ghost i wrócić do / home / username.

cd ~/

Kompresuj kopię zapasową

Wszystkie ważne pliki blogów Ghost znajdują się w ~ / ghost-blog-backup, a ich uprawnienia są nienaruszone. Następnym krokiem jest skompresowanie tych plików do jednego archiwum Tar. Utworzenie archiwum Tar programu Ghost znacznie ułatwia przenoszenie kopii zapasowych z serwerów, ładowanie ich do miejsc takich jak Dropbox, NextCloud lub udostępnianie współpracownikom.

Aby utworzyć nowe skompresowane archiwum kopii zapasowej Ghost, użyj polecenia tar w terminalu.

Uwaga: pamiętaj, aby dokładnie skopiować polecenie. Niezastosowanie się do tego może spowodować niepowodzenie w zachowaniu uprawnień do plików podczas procesu kompresji!

tar -zcvpf ghost-blog-backup.tar.gz /home/username/ghost-blog-backup

Szyfruj kopię zapasową

Kolejny krok w procesie tworzenia kopii zapasowej jest krytyczny. Bez tego kroku baza danych twojego bloga Ghost, krytyczne pliki systemowe i inne są ujawnione i dostępne dla każdego, kto może uzyskać dostęp do miejsca, w którym przechowujesz archiwum Tar. Na szczęście bardzo łatwo jest zaszyfrować archiwum Tar w systemie Linux.

Najszybszym sposobem szyfrowania z wiersza poleceń Linuksa jest użycie GnuPG. Aby zaszyfrować, upewnij się, że zainstalowano „gpg”. Stamtąd uruchom następujące polecenie:

sudo gpg -c ghost-blog-backup.tar.gz

Uruchomienie gpg z flagą c natychmiast rozpocznie proces szyfrowania. Po zakończeniu procesu wynikiem końcowym jest ghost-blog-backup.tar.gz.gpg.

Teraz, gdy kopia zapasowa jest zaszyfrowana za pomocą GPG, można bezpiecznie usunąć niezaszyfrowane archiwum Tar. Aby go usunąć, użyj polecenia rm.

rm ghost-blog-backup.tar.gz

Przywracania kopii zapasowej

Przywracanie kopii zapasowej Ghost w nowym systemie rozpoczyna się od odszyfrowania kopii zapasowej. Przenieś ghost-blog-backup.tar.gz.gpg do / home / username / na serwerze i odszyfruj za pomocą:

gpg ghost-blog-backup.tar.gz.gpg

Następnie wypakuj niezaszyfrowane archiwum.

tar -xvpf ghost-blog-backup.tar.gz

Używając CD, przenieś terminal do folderu SQL i użyj polecenia mysqldump, aby przywrócić bazę danych.

cd ~/ghost-blog-backup/sql

sudo -s

mysqldump -u username -p databasename <  db.ghost_blog.sql
rm -rf /home/username/ghost-blog-backup/sql

Po przywróceniu bazy danych przenieś pliki systemowe na miejsce za pomocą CP.

cp -rp /home/username/ghost-blog-backup/* /var/www/

Gdy wszystko zostanie przywrócone, zainstaluj ponownie Ghost-cli z NPM.

Uwaga: może zajść potrzeba ponownej instalacji NodeJS, Yarn itp. Zapoznaj się z naszym samouczkiem, aby uzyskać pomoc tutaj.

sudo npm i -g ghost-cli

Na koniec uruchom oprogramowanie serwera Ghost z:

ghost start

Uruchomienie polecenia Ghost start powinno natychmiast włączyć usługę blogowania Ghost na serwerze.