Иногда бывает так, что доступ к удаленному компьютеру есть только по ssh. А надо как-то обмениваться файлами, заливать конфигурационные файлы и т.д. В таком случае используют команду scp. Программа scp используется для копирования файлов с одного хоста на другой. Она действует практически аналогично программе ssh. Т.е. использует аутентификацию пользователя и обеспечивает шифрование передаваемых данных. Когда файл передается или записывается на компьютер scp запрашивает пароль от ssh соединения пользователя, а также может работать по ключам ssh.
Если у вас стоит ssh клиент, то устанавливать ничего не потребуется, а иначе устанавливаем пакет Openssh.
Консольное использование scp
В следующем примере файл readme.txt копируется из текущего каталога пользователя в корневой каталог пользователя mik на удаленном хосте 192.168.0.17
mik@gw:~$ scp readme.txt mik@192.168.0.17:
mik@192.168.0.17's password:
readme.txt 100% 0 0.0KB/s 00:00
Обратите внимание, что команда заканчивается на :. Если после двоеточия ничего не указывать, то это будет считаться корневой директорией пользователя (/home/user) удаленного компьютера. После двоеточия обычно указывают название папки на удаленном хосте, или измененное название имени файла, который мы передаем. К примеру:
scp readme.txt mik@192.168.0.17:./temp/upload/
Мы скопировали наш readme.txt в папку , которая находится на удаленном компьютере по пути /home/mik/temp/upload/. Не забывайте в команде scp писать пути относительно пользовательской директории /home/user
А вот так
scp readme.txt mik@192.168.0.17:./temp/upload/test.txt
мы скопировали файл и одновременно переименовали его в test.txt.
При копировании файла с удаленной системы, просто переставьте местами пути назначения
scp mik@192.168.0.17:./temp/upload/test.txt readme.txt
Будьте внимательны, если в то место куда вы копируете файлы файл с таким названием уже существует, то он перетрется новым файлом без предупреждения.
На заметку вам несколько ключей, которые возможно понадобятся с работой scp.
- -q отключает вывод каких либо данных на экран при копировании
- -r копирует целые каталоги
- -v подробный информативный режим
- -C включает режим сжатия данных
- -P<port> указывает настандартный порт ssh
Пример использования дополнительных ключей scp.
mik@m1k:~$ scp -P6666 -v ./temp/upload/test.txt mik@gw:
Executing: program /usr/bin/ssh host gw, user mik, command scp -v -t .
OpenSSH_5.2p1, OpenSSL 0.9.8k 25 Mar 2009
debug1: Reading configuration data /home/mik/.ssh/config
debug1: Applying options for *
debug1: Applying options for gw
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: auto-mux: Trying existing master
Sending file modes: C0644 0 test.txt
Sink: C0644 0 test.txt
test.txt 100% 0 0.0KB/s 00:00
Midnight Commander & scp
В программе Midnight Commander (команда запуска mc) существует простейший графический интерфейс для работы через scp.
После запуска, нажимаем F9(Меню) и выбираем Правая панель или Левая панель > Shell-соединение. В появившейся строке набираем параметры соединения. Подсказка синтаксиса, через F1.
/#sh:mik@gw:P6666/home/mik
где P6666 - это дополнительная опция, указан нестандартный порт ssh.
Теперь можно копировать файлы в привычном режиме право-лево
Похожие материалы: