Рано чи пізно файли треба закинути на сервер: збірку сайту, дамп бази, конфіг, написаний локально. FTP-сервер для цього не потрібен — SSH уже дає три добрі інструменти. В усіх прикладах документаційні адреси; підставте адресу свого сервера.
Дізнайтеся параметри підключення
- Тариф із виділеним IP:
root@203.0.113.10, порт 22. - NAT-тариф: хост і ваш персональний SSH-порт показано в панелі (наприклад, порт 20123). Цей порт потрібен у кожній команді нижче — див. як влаштований доступ через NAT.
scp: скопіювати файл або теку
Завантажити файл:
scp backup.sql root@203.0.113.10:/root/
Звантажити:
scp root@203.0.113.10:/var/log/nginx/access.log .
Цілу теку:
scp -r ./site root@203.0.113.10:/var/www/
На NAT-тарифі додайте порт через велику -P:
scp -P 20123 backup.sql root@your-nat-host:/root/
rsync: правильний інструмент для тек
rsync надсилає лише різницю, показує прогрес і продовжує з місця обриву. Він має стояти на обох боках (apt install -y rsync).
rsync -avzP ./site/ root@203.0.113.10:/var/www/site/
-aзберігає права й час зміни,-vвиводить список файлів,-zстискає,-Pпоказує прогрес і дозволяє докачувати.
З нестандартним SSH-портом:
rsync -avzP -e "ssh -p 20123" ./site/ root@your-nat-host:/var/www/site/
Щоб місце призначення стало точним дзеркалом (із видаленням файлів, які ви прибрали локально), додайте --delete — але спершу подивіться, що станеться:
rsync -avzP --delete --dry-run ./site/ root@203.0.113.10:/var/www/site/
Стежте за скісною рискою в кінці. ./site/ копіює вміст site; ./site копіює саму теку всередину місця призначення. З --delete ця різниця вирішує, яка тека спорожніє.
SFTP: інтерактивно або в графіці
Консольний клієнт працює як маленький файловий менеджер:
sftp -P 20123 root@your-nat-host
sftp> put backup.sql
sftp> get /etc/nginx/nginx.conf
sftp> exit
Хочете GUI? FileZilla, WinSCP чи Cyberduck підключаються з тими самими даними: протокол SFTP, ваш хост, порт 22 (або порт NAT), користувач root і ваш SSH-ключ чи пароль.
Швидше з SSH-ключами
Усі інструменти вище працюють поверх SSH, тож SSH-ключ прибирає запити пароля — і дозволяє запускати передачі з cron. Якщо ключа ще немає: автентифікація за SSH-ключем. Нові сервери EQVPS приймають пароль root із панелі, доки ви не перейдете на ключі, — і це ми радимо зробити першого ж дня.
Великі передачі
Для десятків гігабайтів розумний лише rsync: якщо з'єднання обірветься, запустіть ту саму команду знову — і він продовжить із місця зупинки. Запускайте його всередині tmux або screen на машині, що відправляє, щоб закриття ноутбука його не вбило.
Коментарі
Поки немає коментарів. Будьте першим.