Сб. Дек 21st, 2024

В предшествующей статье я описывал как сделать бекап сайта с базой mysql и залить на любой FTP. Но столкнулся с тем,что такой способ заливки портил архив и он становился нечитабельным. Потому решил делать все тоже самое,только заливать файл по SSH с помощью утилиты scp.

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

ssh-keygen -t rsa

и генерируем ключ сервера для текущего пользователя. Затем копируем этот ключ на сервер бекапа:

ssh-copy-id имя_сервера_бекапа

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

ssh имя_сервера_бекапа

Если зашло сходу,без ввода пароля, то все получилось.

Теперь сама команда заливки бекапа,которая является заменой команды заливки по FTP. Сам скрипт смотрите в предидущей статье.

scp /путь_к_файлу/имя_файла$DATE.zip пользователь@сервер:/home/пользователь/backup/
Теперь по порядку:

scp — собственно сама программа

/путь_к_файлу/имя_файла$DATE.zip — путь и сам файл на сервер хостинга

пользователь@сервер — данные для входа на сервер бекапа, например [email protected]

:/home/пользователь/backup/ — абсолютный путь,куда заливать на сервер. Учтите что заливаете с правами пользователя,так что в какой нибудь /etc/ вы точно не зальете.

от RUSUA

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Анти-спам: выполните заданиеWordPress CAPTCHA