Задача:
Удаленно через консоль скачать файл, с одного сервера на другой.
Как мне подсказал sftp —help
нужно пользоваться командой sftp [user@]host[:file …]
шаблон: sftp user@host:/tmp/tmp.txt /tmp
В консоли сервера, на который хотим закачать файл, вам нужно выполнить такую команду:
sftp root@192.168.1.1:/home/backup/sdb1.img.gz /home/Image_Servers
Здесь root@192.168.1.1 — имя пользователя root и ip адрес сервера 192.168.1.1
/home/backup/sdb1.img.gz — мы скачиваем файл sdb1.img.gz из папки /home/backup/ с сервера 192.168.1.1
/home/Image_Servers — директория куда будет скачивать файл на нашем сервере, на котором в данный момент мы зашли по ssh.
Способ 2:
Копирование директорий на удалённый сервер используя tar, ssh, cat или dd
Бывает так, что необходимо быстро и одним действием скопировать или заархивировать какую либо директорию на удалённый (соседний) сервер.
Существует несколько способов это сделать, принцип у них схож, а различаются они только тем или иным подручным материалом (наличие или отсутствие чего либо)
1. Архивирование директории на удалённый сервер.
С использованием cat:
tar zcvfp — /home/user/sourcedir | ssh user@remote_host «cat > ~/from_somehost.tar.gz»
С использованием dd:
tar zcvfp — /home/user/sourcedir | ssh user@remote_host «dd of=~/from_somehost.tar.gz»
2. Архивирование с удалённой машины на локальную:
С использованием cat:
ssh user@remote_host «tar zcvfp — /home/user/sourcedir» |cat > ~/from_somehost.tar.gz
С использованием dd:
ssh user@remote_host «tar zcvfp — /home/user/sourcedir» |dd of=~/from_somehost.tar.gz
3. Ну и напоследок — распаковка удалённого архива на локальную машину.
ssh user@remote_host «cat /home/user/from_somehost.tar.gz» |tar xvfp —
Остальное придумывать лень. Различная комбинация tar, ssh, cat или dd и пайпов сделает своё дело как надо.
https://www.shinkei.ru/node/4
Просмотров: 3160