Существует довольно много способов передачи файлов между разными машинами. Для Ubuntu и большинства других Linux есть простой способ.
Обычно используют USB-кабель или приложение для обмена сообщениями для передачи изображений между персональным компьютером и мобильными устройствами.
Однако USB-кабель не всегда находится под рукой, или не всегда хочется сканировать QR-код на ПК для регистрации третьего приложения. В этом случае создание временного файлового http-сервера с помощью Python является простым и хорошим выбором.
Плюсы и минусы
Python предустановлен в большинстве дистрибутивов Linux. Так что это универсальный метод для Linux. Он также работает в Windows и macOS с установленным языком программирования Python.
В качестве простого http-сервера любые устройства с веб-браузером могут загружать (или качивать) файлы с одной на другую сторону сервера либо по локальной сети, либо через Интернет.
Однако http НЕ предназначен для передачи файлов. Можно работать с небольшими файлами (например, изображениями и короткими видеороликами размером нескольких сотен МБ). Но для больших файлов размером в несколько ГБ и более это может не сработать! Кроме того, это НЕ безопасно для доступа к важным файлам вне локальной сети.
Команда для создания http-сервера Python:
Для тех, кто не знаком с Linux, пользователь может сначала открыть файловый менеджер, перейти к папке, содержащей файлы для совместного использования с другим устройством, щелкнуть правой кнопкой мыши пустую область и выбрать «Открыть в Терминале».
Он откроет окно терминала и автоматически перейдет к этой папке в качестве рабочего каталога.
Или вы также можете открыть терминал из меню «Пуск» и запустить cd-команду для навигации по каталогу. Например, выполните приведенную ниже команду, чтобы перейти к папке «Изображения» пользователя:
cd ~/Pictures
Затем выполните единственную команду, чтобы запустить файловый сервер http (для некоторых Linux замените python3 на python в команде):
python3 -m http.server
По умолчанию он прослушивает порт 8000. Если порт уже используется, используйте python3 -m http.server 9090 для установки другого номера порта (измените номер 9090 на свое усмотрение).
После этого зайдите на http://ip-address:8000 (измените номер 8000, если вы задали другой порт) на любом устройстве через веб-браузер. Затем вы можете открыть и/или щелкнуть правой кнопкой мыши «Сохранить как», чтобы загрузить любой файл из этой папки.
Создайте http-сервер python с поддержкой загрузки
1. Если вы хотите отправить файлы с любого устройства в Ubuntu Linux, откройте терминал и выполните команду:
python3 -m pip install —user uploadserver
Сначала установите pip через sudo apt install python3-pip, если приведенная выше команда не работает. Эта команда установит сервер загрузки модуля Python .
2. Затем откройте или перейдите к нужной папке в окне терминала и запустите команду для создания простого файлового http-сервера с поддержкой загрузки и выгрузки :
python3 -m uploadserver
Также укажите номер порта, если хотите, например, python3 -m uploadserver 9990
3. Наконец, откойте сраницу http://ip-адрес:8000 на любом устройстве через веб-браузер, чтобы получить доступ и загрузить файлы. Или перейдите по адресу http://ip-address:8000/upload для загрузки файлов.
Из соображений безопасности вы можете добавить аутентификацию по токену, чтобы клиентские машины должны были пройти проверку перед загрузкой файла. Для этого вместо этого запустите приведенную ниже команду в Ubuntu Linux:
python3 -m uploadserver -t password_here