Вопрос: Как скопировать данные с сервера Ubuntu с помощью терминала через telnet?


У меня есть одна папка для копирования, состоящая из PHP и подобных файлов для создания веб-сайта.

Как скопировать одну папку с сервера (Linux Ubuntu) на клиентский ПК (Linux Ubuntu) с помощью терминала? Могу ли я использовать ftp? Для терминального соединения я использую Telnet.

Расположение папки на сервере:

qa@ubuntu:~/www/html/js 

И я хочу скопировать его клиенту по адресу:

qa@desktop2:~/home/qa/html

4
2017-07-01 01:59


Источник




Ответы:


Вы можете использовать scp, если у вас есть ssh-сервер, работающий на удаленной машине (это хорошо, если так или иначе). Telnet не очень хорош, его незашифрованный и назойливый.

Поскольку я предполагаю, что вы можете ssh на удаленную машину, основным способом использования scp является:

scp -r ~/www/html/js qa@desktop2:~/home/qa/html/js

Предполагая, что вы хотите скопировать qa@ubuntu:~/www/html/js в qa@desktop2:~/home/qa/html/js scp довольно мощный, поэтому я предлагаю прочитать страницу man для него на

man scp

5
2017-07-01 04:47



Правильный синтаксис user@host:path, не  user@host/~/path, Если я правильно понял, ваш пример должен быть scp qa@ubuntu:www/html/js qa@desktop2:home/qa/html (хотя неясно, хочет ли @klox ~/home/qa/html или ~/html). - grawity
К сожалению, мой плохой. Спасибо за исправление. - Aatch


Редактировать: У вас будет проблема с копированием файлов через telnet, мой друг. Почему вы настаиваете на использовании терминала?

Значит, вы используете Windows, поэтому предположительно имеете доступ к графической среде. Так будет ли использоваться совместное использование файлов Windows / веб-браузер / ftp client / ssh client / etc, потому что они графические? И если да, то почему?

У вас есть root-доступ на машине Ubuntu? Я предлагаю вам установить ssh-сервер:

sudo apt-get install openssh-server

Затем возьмите клиент SSH / SCP для Windows, например. WinSCP, и использовать его для входа на сервер и копирования файлов.

Если вы действительно хотите сделать это через терминал по какой-то причине, возьмите Cygwin и установите его, а затем используйте команду scp, упомянутую ниже.

Вы должны быть немного более конкретными в своей ситуации.

  • какой ОС работает клиент?
  • какая ОС работает на сервере?
  • какие службы - сервер, если вы знаете (FTP, HTTP, NFS, SMB, SSH и т. д.),

Например, если у вас есть SSH-доступ к серверу, что-то вроде этого будет работать:

scp user@server.mydomain.com:/remote/path/file.txt /local/path/

Если у вас есть HTTP-доступ к файлу (http://server.mydomain.com/path/file.txt), то в качестве предложенного плаката wget:

wget http://server.mydomain.com/path/file.txt

Ответ в значительной степени зависит от вашей ситуации.


4
2017-07-01 02:25



посмотри мой отредактированный вопрос .. - klox
расположение папки на сервере: qa @ ubuntu: ~ / www / html / js, и я хочу скопировать на клиента: qa @ desktop2: ~ / home / qa / html - klox


Если вы используете Windows для этого, и вы действительно не можете использовать HTTP, чтобы получить файл, вы можете прибегнуть к передаче файлов старой школы через 7-битные ASCII-протоколы. Я говорю о Z-модеме. В последнее время он широко использовал коммутируемый доступ в Интернет, особенно в мире BBS, с боковым линией в передачах unix-to-unix, когда FTP был недоступен (как правило, над rsh, но я отвлекаюсь).

В любом случае, чтобы получить это дерево каталогов из Windows, без использования FTP или HTTP, просто терминал.

  1. Telnet для сервера с использованием HyperTerm.
  2. Тар / Zip вверх по каталогам, которые вас интересуют.
  3. Из командной строки,
    sz filename.tar.gz 
  4. Из Hyperterm выберите Transfer -> Receive File.
  5. Укажите путь сохранения и «Zmodem» в качестве принимающего протокола.

Он не будет передаваться так быстро, как FTP или HTTP, но он получит файлы.


1
2017-07-01 04:06



как, если я хочу передать с тем же ОС Linux в linux ..? - klox


Если ssh / scp недоступен, попробуйте netcat.

http://nakkaya.com/2009/04/15/using-netcat-for-file-transfers/

Netcat - это, в основном, простой дамп файла для сетевого порта. Это полезно для передачи на barebone-хост, когда ssh недоступен, или передача очень больших файлов через LAN / internet, где накладные расходы на шифрование SSH становятся узким местом.

Тем не менее, scp по-прежнему является стандартным способом передачи файлов с удаленных хостов. И если вы пытаетесь передать весь каталог, лучше всего использовать rsync over ssh:

rsync -avz -e ssh qa@ubuntu:~/www/html/js  ~/home/qa/html

Scp перемещает каталог по мере его переноса, он может быть очень медленным с большими папками. Rsync проходит через весь каталог и применяет сжатие gzip до начала передачи. Если существует локальная копия, rsync сравнивает их и переносит только дельта: измененную часть файлов.

И добавленная корректировка для предыдущего предложения scp: scp целая директория требует опции -r:

scp -r qa@ubuntu:~/www/html/js  ~/home/qa/html

1
2017-07-29 08:47





Это зависит от способа подачи файла. Если файл можно загрузить из веб-браузера, то команда wget будет работать: http://linux.die.net/man/1/wget


0
2017-07-01 02:14