Статьи

Як робити бекап сайту на хостингу. Приклад скрипта.

Якщо у вас є сайт, то вам просто необхідно регулярно робити його бекап. Для популярних CMS, часто існують модулі для створення резервних копій. Але на громадському хостингу вони швидше за все працювати не будуть, через обмеження за часом виконання скриптів або очікування веб сервера. На цей випадок, деякі хостинг провайдери пропонують робити бекап вбудованими засобами панелі управління хостингом або використовувати cron / ssh. Нижче я покажу вам приклад скрипта, яким я роблю бекап цього сайту, як раз-таки за допомогою планувальника завдань cron на хостингу. При цьому цей бекап на хостингу не зберігається, і не займає зайвий обсяг далеко не безмежного простору (та й сенсу немає ніякого зберігати бекап там же де він робиться).

Коротше наша процедура буде складатися з двох частин:

1) Власне, створення резервної копії, для цього буде виконуватися скрипт на хостингу

2) Перенесення цього бекапа в інше місце, наприклад на домашній комп'ютер. Тут буде ще один скрипт, який відповідно буде виконуватися на комп'ютері.

І так, скрипт №1:

tar czf ~ / domains / site.ru / backups / tmp / files.tgz ~ / domains / site.ru / public_html / mysqldump -h 'server.hosting.ru' -u 'user' -p'password 'db_name> ~ /domains/mytechnote.ru/backups/tmp/mysql.sql tar czf ~ / domains / site.ru / backups / site_ru _ $ (date + "% Y-% m-% d"). tgz ~ / domains / site. ru / backups / tmp / * rm -rf ~ / domains / site.ru / backups / tmp / *

Давайте розберемо цей скриптик:

У першому рядку ми стискаємо всі файли сайту і поміщаємо їх в тимчасову папку.

У другій ми робимо дамп бази даних MySQL, соответсвенно вам потрібно замінити параметри підключення до бази, а саме ім'я сервера, ім'я користувача, пароль і ім'я бази.

У третьому рядку ми об'єднуємо архів файлів і дамп бази в один файл.

У четвертій ми видаляємо файли з тимчасової папки.

Для роботи цього скрипта у вас повинні бути створені папки куди буде робитися бекап (backups і backups / tmp).

Зберігаємо цей скрипт куди-небудь на хостингу, даємо ім'я, наприклад, backup.sh. Не забуваємо дати права на виконання цього файлу.

Після цього переходимо до налаштування cron на вашому хостингу, в залежності від використовуваної провайдером панелі, процедура настройки може відрізнятися, але принцип буде один. Нам потрібно створити розклад, вказати коли воно повинно виконуватися і в якості програми потрібно вказати наступне - / bin / sh /home/ваше_імя_пользователя/путь/до/сккріпта/backup.sh

Бувають панелі, де розклад не дуже зрозуміло задається, я поясню. Ви можете задати 5 цифр в налаштуваннях. Перша означає хвилини, друга годинник, треться день місяця, четверта місяць, п'ята день тижня. Тобто якщо ми хочемо що б бекап робився раз в день, о 8 ранку, то ваше завдання повинно виглядати так:

0 8 * * * / bin / sh /home/ваше_імя_пользователя/путь/до/сккріпта/backup.sh

На скріншоті можна подивитися, як це виглядає у мого хостера.

На скріншоті можна подивитися, як це виглядає у мого хостера

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

Cкриптов написаний під Linux, але під Windows принцип буде приблизно такою ж, погуглити на тему bat ftp.

#! / Bin / bash ftp -in адрес_ftp << END_SCRIPT user Ваше_імя_пользователя ваш_пароль binary cd / backups lcd / mnt / wd-backup / backup / site mget site * mdelete site * END_SCRIPT

Розберемо цей скрипт.

У другій сходинці підключаємося до сервера, вам потрібно вказати адресу ftp сервера.

У наступній сходинці ви повинні вказати ім'я та пароль вашого користувача

У четвертій переходимо в папку на ftp сервері, шлях вказується щодо кореня ftp, тобто щодо тієї папки в яку ви потрапляєте, коли заходите на сервер по FTP.

Далі переходимо в папку на своєму комп'ютері.

Потім копіюємо всі файли, у яких назва починається на site.

Після чого видаляємо ці файли.

Зберігаємо цей скрипт куди небудь, даємо ім'я наприклад ftp-copy.sh і даємо цьому скрипту право на виконання.

chmod + x ftp-copy.sh

Після цього створимо розклад, що б скрипт запускався автоматично, для цього набираємо команду crontab -e. І в розпочатому файлі в самий низ, додамо рядок:

0 10 * * * / bin / sh /home/sanglyb/scripts/ftp-copy.sh

Відповідно вам потрібно змінити шлях до скрипта на ваш. Це завдання буде запускатися кожен день о 10 ранку.

Ось і все, тепер дані вашого сайту будуть набагато більш збережені. У підсумку, у мене налаштована так що, в 8 ранку бекап робиться на хостингу і в 10 він копіюється до мене на комп'ютер.

Відео по темі:

Новости

Как создать фото из видео
Кризис заставляет искать дополнительные источники дохода. Одним из таких источников может стать торговля на валютном рынке Форекс. Но чтобы не потерять свои деньги необходимо работать с надежным брокером.

Как оформить группу в вконтакте видео
Дано хотел свой магазин в вк, но не знал с чего начать его делать. Так как хотелось не банальный магазин с кучей ссылок и фото, а красиво оформленный. С меню, с аватаркой. После просмотра видео создал

Как оформить диск малыш от рождения до года из фото и видео
Оформить диск "Малыш от рождения до года" из фото и видео можно совершенно разными способами! Кто-то для достижения данной цели идет на шоу-таланты, кто-то пользуется услугами профессионалов, а кто-то

Как создать видео без программ
Реклама - это один из видов деятельности, который помогает людям продвигать свои товары или услуги. Одним из таких видов рекламы является - раздача листовок или более современное название "флаеров". Раздача

Финансовые новости мира
Вернуться в раздел Профессия экономист Экономисты востребованы в компаниях, где требуется контролировать расходы, правильно рассчитывать средства, где необходим постоянный анализ экономической деятельности

Транспортное средство закон
Пункт 1.5. ПДД гласит: «Участники дорожного движения должны действовать таким образом, чтобы не создавать опасности для движения и не причинять вреда», а в пункте 1.2. указано: «Участник дорожного движения»

Квест кімната дніпро
Законопроект о запрете посещения квестов детьми младше 14 лет прокомментировал один из самых популярных в России квест-агрегаторов. Поправки в городской закон о мерах по предупреждению причинения вреда

Труба в изоляции Valsir Pexal
На сегодняшний день имеется масса самых разных отделочных материалов, которые можно использовать, как внутри, так и снаружи помещения в качестве декоративного элемента, однако большинство из них имеет

Роллы
От того, как и чем мы питаемся зависит очень многое. Это и самочувствие и внешность и общее состояние здоровья. Несмотря на широкое предложение, вопросы правильного и вкусного питания стоят очень остро.

Дешевая доставка суши
Суши можно не только запивать, но и заедать: хорошо с суши сочетаются тэмпура (обжаренные в специальном кляре ломтики овощей, грибы или морепродукты), а также мисо-суп (суп, заправленный бобовой пастой).