Резервная копия сайта из терминала Linux

Небольшая шпаргалка, посвященная созданию резервной копии сайта через терминал Linux. Ну и заодно посмотрим как этот бекап потом восстановить через тот же терминал.


Резервная копия файлов

Создание архива

$ cd ~/
$ tar -zcvf site_backup.tar.gz /var/www/domain.com/public_html

Первая команда вовсе не обязательна.

cd ~/

перекидывает вас в домашнюю директорию. Именно там архив и будет создан.

Далее происходит сама архивация.

tar [-ключи] [имя архива] [путь к файлам]

Непонятно пока только с ключами. Разберем каждый из них:


  • -z (--gzip)

    — архив .gz (gzip);

  • -c (--create)

    — собственно создание архива;

  • -v (--verbose)

    — выводим в терминал листинг файлов, которые будут запакованы;

  • -f (--file)

    — созданный архив сохраняем в файл.

Все встало на свои места. Теперь, когда нужно создать просто

.tar

архив, нужно просто выкинуть ключ

-z

из этого примера:

$ tar -cvf site_backup.tar /var/www/domain.com/public_html

или например:

$ tar -jcvf site_backup.bz2 /var/www/domain.com/public_html
Внимание! Не используйте .ZIP архивы. Они имеют ограничение по размеру в 2Гб.

Распаковка архива

Для распаковки используется все та же команда

tar

, просто с другими ключами:

$ cd /var/www/domain.com/publuc_html
$ tar -xvzf site_backup.tar.gz

Разница в том, что вместо



теперь

-x (--extract)

, который позволяет разархивировать указанный файл

На самом деле все еще проще:

$ tar -vxzf site_backup.tar.gz /var/www/domain.com/public_html

Теперь приступаем к БД.

Резервная копия базы данных

Создание резервной копии базы данных

Тут одна большая шпаргалка.

-pPASSWORD — не опечатка. пробела нет между ключем и паролем. Например, если у вас пароль

strongPassword

, то нужно будет писать

-pstrongPassword
# USER - ваш пользователь, у которого есть привилегии read
# PASSWORD - пароль пользователя USER
# DATABASE - база, которую вы хотите сохранить в файл

# Создание резервной копии базы DATABASE
mysqldump -u USER -pPASSWORD DATABASE > ~/data_base_backup.sql

# Перенос структуры БД, без данных
mysqldump --no-data - u USER -pPASSWORD DATABASE > ~/data_base_backup.sql

# Создание резервной копии определенных таблиц users и posts
mysqldump -u USER -pPASSWORD DATABASE users posts > ~/data_base_backup.sql

Восстановление базы данных

Для начал нужно создать базу, куда мы будем делать импорт:

mysqladmin -u USER -pPASSWORD create NEWDATABASE

и залить файл

.sql

туда:

mysql -u USER -pPASSWORD DATABASE < ~/data_base_backup.sql

В этих примерах файлы находились в домашней директории

~/

.

Смена прав и владельца для файлов и папок

Для того, чтобы сменить права на папку через терминал, нужно воспользоваться следующей командой:

$ chmod -R 755 /var/www/domain.com/public_html

Права сменятся не только для папки

public_html

, но и для всех вложенных в нее файлов и папок.

Для смены владельца делаем следующее:

$ sudo chown -R www-data:www-data /var/www/domain.com/public_html

После этой команды директория

public_html

будет принадлежать пользователю

www-data

из группы

www-data

.


admin

Share
Published by
admin

Recent Posts

Что такое Zulip

Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…

5 часов ago

Что такое Zookeeper

Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…

5 часов ago

Что такое Zimbra

Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…

5 часов ago

Что такое Zabbix

Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…

5 часов ago

Что такое YouTube

YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…

5 часов ago

Что такое yota

Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…

5 часов ago