SSH-протокол для передачи файлов и папок (SCP)

Скопировать совершенно все что есть в папке с сохранением структуры каталогов, на удаленный сервер:

scp -r usertwo@server2.ua:/путь/откуда/скопировать/от/корня/ /путь/к/папке/от/корня/
Если нестандартный порт к примеру 222:
scp -rP 222 usertwo@server2.ua:/путь/откуда/скопировать/от/корня/ /путь/к/папке/от/корня/

Создаем ShellScript и устанавливаем его в cron (запланированные задачи по времени)
В пользователе userone создаем в его домашнем каталоге файл runscp.sh и выставляем права на запуск для пользователя:
touch ~/runscp.sh
chmod 755 ~/runscp.sh

Теперь нам требуется в этом shellscript-е указать что запускать.
К примеру если нам надо скачать один файл из одной папки и переписать другую папку на удаленный сервер, то вносим в файл runscp.sh следующие строки:
#!/bin/sh
# Копируем файл на удаленный сервер
/usr/bin/scp /home/userone/dirone/file.txt usertwo@server2.ua:dirone/file.txt
# Копируем структуру каталогов с файлами
/usr/bin/scp -r /home/userone/dirtwo/ usertwo@server2.ua:dirtwo/

usertwo@server2.ua:dirtwo/ - тут мы не ошиблись, после входа пользователя usertwo@server2.ua мы сразу попадаем в его домашний каталог, из за чего не обязательно начинать указывать путь от корня.

Теперь добавляем задание в cron, для автоматического запуска скрипта в нужное время (только из под супер пользователя root, если нет доступа root, то прописать через панель или попросить хостера прописать задание).
Для CentOS, Debian, Fedora, Gentoo, Mandriva, Ubuntu:

echo '0 */1 * * * /bin/sh /home/userone/runscp.sh' >> /var/spool/cron/userone

Для FreeBSD, NetBSD, OpenBSD:
echo '0 */1 * * * /bin/sh /home/userone/runscp.sh' >> /var/cron/tabs/userone

Вот и все...

Если есть вопросы, то просим Вас посетить наш форум, на котором Вы сможете попросить бесплатно описание...



Яндекс.Метрика
Счётчик ТЦ#65533;Ц LiveRSS: Каталог русскоязычных RSS-каналов