Резервная копия сайта из терминала 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

Консоль удаленного рабочего стола(rdp console)

Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…

1 месяц ago

Настройка сети в VMware Workstation

В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…

1 месяц ago

Логи брандмауэра Windows

Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…

1 месяц ago

Правильный способ отключения IPv6

Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…

1 месяц ago

Ключи реестра Windows, отвечающие за параметры экранной заставки

Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…

1 месяц ago

Как управлять журналами событий из командной строки

В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…

1 месяц ago