Як створити резервну копію сайту WordPress на Linux

Створення резервної копії WordPress на Linux: Повний посібник

WordPress, будучи найпоширенішою платформою для ведення блогів у світі, очікувано не має вбудованої системи резервного копіювання. Тому, користувачам, які прагнуть створити резервну копію свого сайту WordPress, доведеться зробити це самостійно.

Резервне копіювання бази даних SQL

Ключовим елементом резервного копіювання будь-якої інсталяції WordPress на Linux є база даних SQL. На щастя, процес створення резервної копії SQL у Linux досить простий. Для цього ми скористаємося інструментом “mysqldump”, який дозволяє легко експортувати вміст баз даних SQL.

Щоб експортувати базу даних WordPress, відкрийте термінал та отримайте права root, ввівши команду su - (або sudo -s, якщо обліковий запис root вимкнено).

Тепер, з правами root, створіть нову папку для резервних копій, включаючи підкаталоги для SQL та файлів інсталяції:

mkdir -p /root/wp-backup
mkdir -p /root/wp-backup/sql
mkdir -p /root/wp-backup/wp-installation-files

Перейдіть до підпапки sql в каталозі wp-backup за допомогою команди cd:

cd /root/wp-backup/sql

Далі експортуйте базу даних WP у файл SQL на сервері Linux. Важливо пам’ятати, що команда mysqldump не спрацює, якщо ви не вкажете правильні дані бази даних (ім’я БД, користувача та пароль). Якщо ви слідували інструкціям зі встановлення WordPress на сервері Ubuntu, то ім’я бази даних WP SQL — “wordpressdb”, а користувач — “ubuntuwordpress”.

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

Виконайте команду ls, щоб перевірити наявність нового файлу db.wp_backup.sql у папці /root/wp-backup/sql:

ls -a

Якщо файл SQL є в папці, резервне копіювання бази даних WordPress SQL завершено!

Резервне копіювання файлів інсталяції WordPress

Після збереження бази даних, наступним кроком є створення резервної копії самої інсталяції WordPress. Для цього скористаємося командою cp, щоб скопіювати всі файли з /var/www/html до /root/wp-backup/wp-installation-files.

У терміналі введіть наступну команду для копіювання всіх файлів:

cp -rp /var/www/html/* /root/wp-backup/wp-installation-files/

Процес копіювання може зайняти деякий час, залежно від розміру вашої інсталяції WordPress. Після його завершення перейдіть до каталогу резервної копії та скористайтеся командою ls, щоб перевірити наявність файлів. Якщо деякі файли відсутні, рекомендується запустити команду ще раз.

cd /root/wp-backup/wp-installation-files/
ls -a

Стиснення резервної копії

Всі важливі файли WordPress тепер збережено в резервній копії. Наступним кроком є стиснення всього в архів Tar. Хоча це може здатися несуттєвим, стиснення значно спростить транспортування та зберігання резервної копії. Створіть новий архів Tar за допомогою наступної команди:

tar -zcvpf wordpress-backup.tar.gz /root/wp-backup

Після завершення стиснення, резервна копія готова до транспортування. Ви можете завантажити резервну копію, але пам’ятайте, що вона не зашифрована. Зберігати резервну копію незашифрованою – дуже небезпечно, адже це означає, що будь-хто може отримати доступ до файлу бази даних SQL, структури сайту та іншої конфіденційної інформації.

Шифрування архіву резервної копії WP – проста процедура, що починається з установки GnuPG на сервері. Знайдіть “gpg” в менеджері пакетів та встановіть його. Потім, використайте команду нижче для шифрування архіву:

gpg -c wordpress-backup.tar.gz

Під час процесу шифрування Gpg запитає пароль. Введіть пароль та натисніть Enter.

Після завершення шифрування вихідним файлом буде wordpress-backup.tar.gz.gpg. Це безпечна форма резервної копії, єдиний файл, який вам потрібен. У жодному разі не зберігайте незашифрований архів!

Відновлення резервної копії

Щоб відновити резервну копію, виконайте наступні дії:

Спочатку, отримайте права root, ввівши команду su - або sudo -s.

su -

або

sudo -s

Потім перейдіть до /root та вставте туди файл wordpress-backup.tar.gz.gpg.

Розшифруйте зашифровану резервну копію:

gpg wordpress-backup.tar.gz.gpg

Розпакуйте архів за допомогою Tar:

tar -xvpf wordpress-backup.tar.gz

Перейдіть до папки SQL та імпортуйте базу даних:

cd /root/wp-backup/sql
mysqldump -u username -p databasename < db.wp_backup.sql

Імпорт бази даних SQL відновить всі дані блогу, інформацію про користувачів, записи тощо. Після цього, залишиться лише перенести системні файли WordPress у потрібне місце.

Скористайтеся командою cp, щоб скопіювати файли:

cp -rp /root/wp-backup/* /var/www/html

Нарешті, видаліть архівні файли та очистіть папку /root:

rm wordpress-backup.tar.gz
rm wordpress-backup.tar.gz.gpg
rm -rf wordpress-backup