Перейти к содержимому

Передача файлов: scp, rsync, FileZilla и WinSCP

Как загрузить файлы на сервер и скачать их обратно из терминала или графического клиента.

Уровень
Новичок
Время чтения
2 мин чтения
Обновлено
Содержание
  1. scp — скопировать один раз
  2. rsync — синхронизация больших папок
  3. Графические клиенты
  4. Права после загрузки

Отдельный FTP-сервер ставить не нужно: файлы передаются по тому же SSH — протоколу SFTP. Работают те же логины, ключи и порт.

scp — скопировать один раз

Загрузить файл на сервер
$ scp ./site.zip [email protected]:/var/www/
Скачать папку с сервера
$ scp -r [email protected]:/var/www/site ./backup

Если SSH на другом порту, у scp флаг большой буквой: scp -P 2222.

rsync — синхронизация больших папок

rsync передаёт только изменившиеся файлы и умеет продолжать прерванную передачу. Он должен быть установлен на обеих сторонах (apt install -y rsync).

bash
$ rsync -avzP ./site/ [email protected]:/var/www/site/
  • -a сохраняет права, даты и символьные ссылки; -z сжимает; -P показывает прогресс и докачивает.
  • Слеш в конце источника важен: ./site/ копирует содержимое папки, ./site — саму папку внутрь назначения.
  • Флаг --dry-run показывает, что будет сделано, ничего не меняя. Используйте его перед --delete.
  • Нестандартный порт: rsync -avzP -e "ssh -p 2222" ...

Графические клиенты

  1. 01FileZilla (Windows, macOS, Linux): Файл → Менеджер сайтов → Новый сайт. Протокол — SFTP, хост — IP сервера, порт — 22, пользователь и пароль. Для входа по ключу выберите тип входа «Файл с ключом».
  2. 02WinSCP (Windows): протокол SFTP, хост, порт, пользователь. Ключ указывается в «Ещё… → SSH → Аутентификация»; WinSCP сам предложит сконвертировать ключ OpenSSH в .ppk.
  3. 03Cyberduck (macOS, Windows): «Новое подключение», тип — SFTP.

Права после загрузки

Файлы, загруженные под root, принадлежат root. Веб-серверу обычно нужен владелец www-data:

bash
$ chown -R www-data:www-data /var/www/site

Дочитайте до конца — статья засчитается в обучении автоматически.

  • SFTP
  • scp
  • rsync
  • FileZilla
  • WinSCP
  • загрузить файлы

Статья помогла?