Я знаю, что могу установить Samba или openssh-server, чтобы иметь возможность обмениваться файлами между двумя компьютерами Ubuntu. Есть ли способ обмениваться файламибезустановка дополнительных пакетов?
Я установил Ubuntu на две системы в одной локальной сети, но без подключения к Интернету. Я обнаружил, что мой обычный способ передачи файлов (scp) не сработал, потому что openssh-server не был установлен ни на одной из систем. Использование Personal File Sharing было невозможно без установки дополнительных пакетов. В итоге я использовал netcat для передачи, что неоптимально и не интуитивно понятно для обычного пользователя.
Поэтому я хотел бы узнать, знает ли кто-нибудь способ сделать это с помощью готовых установок Ubuntu (или, по крайней мере, с помощью пакетов, доступных на компакт-диске Ubuntu для рабочего стола).
Спасибо!
решение1
Вы можете перейти в указанный каталог с помощью cd
, а затем использовать текущий каталог в качестве веб-сервера с помощью команды:
python -m SimpleHTTPServer
На другой машине перейдите по адресуhttp://server-ip:8000/
где "server-ip" — это то, что вы видите, когда выполняете "ifconfig" на исходном компьютере, в "inet addr:". Например, если вывод ifconfig на исходном компьютере начинается так:
eth0 Link encap:Ethernet HWaddr 00:30:67:d5:a7:a4
inet addr:10.0.0.3 Bcast:10.0.0.255 Mask:255.255.255.0
...
затем на целевом компьютере необходимо указать в браузере:
http://10.0.0.3:8000/
решение2
Если вам нужно что-то более быстрое, чем модуль Python SimpleHTTPServer
(который, на мой взгляд, великолепен и является наиболее простым способом), вы можете использовать netcat ( nc
утилиту) — она использует сырой TCP, поэтому у вас не будет накладных расходов, связанных с протоколом HTTP.
Например, если вы пытаетесь скопировать файл config.xml
с хоста germany.local на хост france.local (оба работают под управлением Ubuntu), вам необходимо выполнить следующие действия:
на целевом хосте franca.local запустить:
nc -l -p 7000 > copied_config.xml
(он запустит процесс nc, который прослушивает порт 7000 на предмет входящих данных и записывает их в файл
copied_config.xml
)на исходном хосте germany.local запустить:
nc -q 0 france.local 7000 < config.xml
Вот и все!
Также вы можете проверитьэто полезное руководстводля более подробных инструкций