У меня есть рабочий стол (Ubuntu 13.04 и Win 7 Home Premium) и ноутбук (Ubuntu 12.04) , оба имеют адаптеры WiFi. У меня также есть WiFi роутер, подключенный к интернету , к которому оба моих компьютера могут получить доступ.
Я хочу обмениваться файлами между моим настольным компьютером и ноутбуком, используя WiFi (аналогично Homegroup в Windows 7, но без использования кабелей Ethernet) . Как мне это настроить?
Я хочу обмениваться файлами с использованием обеих ОС, если у кого-то есть информация об обмене файлами с любой из ОС, ответьте!
Подключите настольный и портативный компьютер к маршрутизатору WiFi, используя стандартную настройку. Чтобы проверить, что оба компьютера подключены, проверьте, есть ли у вас доступ в Интернет с обоих компьютеров.
Необязательно: В настройке маршрутизатора просмотрите локальные IP-адреса, назначенные настольному компьютеру и портативному компьютеру. Они могут выглядеть как 192.168.0.100 или 192.168.1.199. Если существует возможность постоянного назначения этих конкретных IP-адресов в маршрутизаторе, вы можете это сделать.
Шаг 1 На портативном компьютере создайте папку, которой вы хотите поделиться. Там может быть папка под названием «Public», выберите ее, если хотите. Щелкните правой кнопкой мыши значок папки и выберите «Параметры общего доступа». Откроется новое окно:
Установите флажок «Поделиться этой папкой».
Вы также можете установить два других поля «Разрешить другим создавать и удалять файлы в этой папке». Это позволит пользователю настольного компьютера Windows создавать и удалять файлы в этой папке.
Флажок «Гостевой доступ» не требует пояснений. Это может быть полезно, если ваш идентификатор пользователя Windows не совпадает с вашим идентификатором пользователя Ubuntu.
Он может сообщать вам, что служба общего доступа не установлена:
Нажмите «Установить службу» и позвольте ему установить программное обеспечение, указав пароль для учетной записи пользователя портативного компьютера при появлении соответствующего запроса. Вам может быть предложено установить дополнительное программное обеспечение, например libpam-smbpass
. Установите все программное обеспечение. Вам будет предложено перезапустить службы и нажать «Да».
Шаг 2. Откройте окно свойств папки «Public», щелкнув по ней правой кнопкой мыши. Перейдите на вкладку разрешений и убедитесь, что она выглядит так:
Нажмите кнопку «Изменить разрешения для вложенных файлов» и убедитесь, что она выглядит так:
Теперь вы можете редактировать файлы, созданные в ubuntu, в "Публичная" папка ноутбука в проводнике Windows.
Однако, если вы создадите файл в Windows и поместите его в общую папку портативного компьютера, вы не сможете открыть этот файл, когда подойдете к портативному компьютеру.Это связано с тем, что Windows и Ubuntu не понимают права собственности на файлы и разрешения друг друга. Итак, в ноутбуке с Ubuntu файл, созданный Windows, принадлежит «Никто». Вам нужно будет открыть Nautilus от имени администратора и изменить права собственности и права на чтение и запись на портативном компьютере.
Шаг 3. Перейдите в Windows на настольном компьютере и откройте Проводник Windows , щелкните треугольник рядом с Сеть на левой панели. В раскрывающемся списке вы должны выбрать имя портативного компьютера с Ubuntu .
Теперь вы должны увидеть свою общую папку (скажем, «Public») с портативного компьютера в проводнике Windows. Щелкните папку «Public» и просмотрите файлы в папке. Вы должны иметь возможность копировать файлы из общей папки Ubuntu в локальную папку Windows.
Вот пошаговое руководство с некоторыми подробностями.
Шаг 1 Настройте общий доступ к папкам Windows, используя методы, доступные для Windows. следуйте инструкциям по ссылке выше для части Windows.
Шаг 2 Откройте терминал на портативном компьютере с Ubuntu, нажав Ctrl + Alt + T и введите:
sudo -H gedit /etc/samba/smb.conf
и найдите строку:
; name resolve order = lmhosts host wins bcast
и отредактируйте ее, чтобы она выглядела так
name resolve order = bcast lmhosts host wins
Обратите внимание, что нет; в начале редактируемой строки. Сохраните файл и выйдите из gedit. Введите следующие две строки (по одной), чтобы остановить и запустить самбу:
sudo stop smbd
sudo start smbd
Шаг 3 На портативном компьютере откройте Nautilus, файловый браузер и щелкните Сеть на левой панели. Щелкните «Обзор сети». Щелкните значки в главном окне сети Nautilus и найдите рабочий стол Windows и общую папку. Убедитесь, что вы можете копировать файлы из этой папки и в эту папку.
См. Ошибка «Не удалось получить список общих ресурсов с сервера» при просмотре общего ресурса с помощью Nautilus для справки по редактированию smb.conf.
Загрузите рабочий стол в Ubuntu.
На настольном компьютере и портативном компьютере выполните следующие действия, чтобы убедиться, что ssh-сервер установлен:
Откройте терминал, нажав Ctrl + Alt + T и введите
sudo apt-get install openssh-server
Введите пароль, когда будет предложено. Курсор не переместится при вводе пароля. Это нормально.
Это установит ssh-сервер, если он еще не установлен. Если он уже установлен, он ничего не сделает.
Рабочий стол Сначала:
Откройте Nautilus и найдите пункт меню «Другие места». Внизу найдите Connect to Server:
В разделе Server Address введите:
sftp://laptop_user_id@laptop_name.local/home/laptop_user_id
где laptop_user_id
- это идентификатор пользователя, для которого вы создали на своем портативном компьютере. Вы можете узнать свой идентификатор пользователя, набрав whoami
в терминале. А laptop_name
- это имя, которое вы дали портативному компьютеру при установке Ubuntu.
Если вы хотите предоставить общий доступ к разделу на втором жестком диске рабочего стола, в поле Server Address введите:
sftp://desktop_user_id@desktop_name.local/path/to/the/mount/point/of/the/partition/in/second/hard/drive
Replace путь / к /.../ диску
с фактическим путем.
В качестве альтернативы, если вам известен локальный IP-адрес портативного компьютера, вы можете заменить laptop_name.local
локальным IP-адресом портативного компьютера.
Нажмите Подключите
. Вы увидите диалоговое окно с паролем:
Введите пароль, связанный с laptop_user_id, и выберите, хотите ли вы, чтобы пароль запомнился или нет. Снова нажмите Подключиться
.
Теперь вы должны увидеть свою домашнюю папку портативного компьютера.
Обратите внимание, что в левой панели Nautilus появилась новая запись в разделе Сеть , которая начинается с laptop_user_id
. Щелкните его правой кнопкой мыши и выберите «Добавить закладку», чтобы создать постоянную закладку для домашней папки вашего портативного компьютера в Nautilus на рабочем столе.
См. На этой странице изображения из более старой версии.
Теперь ноутбук
Выполните тот же процесс, что и на рабочем столе выше.
Я собираюсь предложить некоторые альтернативы, которые выглядят не совсем точно как SAMBA, но может быть лучше для других случаев использования.
HTTP-сервер
HTTP - это протокол, используемый для доступа к обычным веб-сайтам, поэтому каждая ОС была вынуждена реализовать его!
Найдите свой IP-адрес в исходный компьютер, например 192.168.0.10
. В Ubuntu:
ifconfig
Создайте сервер в каталоге, содержащем файл, который вы хотите передать. С Python 3 (Python по умолчанию в Ubuntu 20.04 и новее):
python3 -m http.server 8080
или в Python 2:
python -m SimpleHTTPServer 8080
На принимающем компьютере откройте браузер и посетите:
192.168.0.10:8080
Теперь вы можете перемещаться через каталоги к нужному файлу.
Я не уверен, является ли этот метод быстрым / надежным, но он является одним из самых простых в настройке и переносимости.
Более быстрые альтернативы обсуждаются на: https: //stackoverflow.com/questions/12905426/what-is-a-faster-alternative-to-pythons-simplehttpserver
rsync
Отличный вариант между двумя компьютерами Ubuntu: https: // en.wikipedia.org/wiki/Rsync
Сначала убедитесь, что вы можете использовать SSH с одного компьютера на другой:
ssh server-username@192.168.0.10
Вы можете создать новую учетную запись для пользователя, если хотите сохранить свой пароль в секрете.
Вы может потребоваться запуск на сервере и клиенте:
sudo apt-get install ssh
Затем, как только вам удалось войти в систему, просто сделайте копирование файлов с сервера на клиент:
rsync -av server-username@192.168.0.10:/full/path/to/remote/directory .
Несколько каталогов можно скопировать за один раз, как описано на https: //unix.stackexc hange.com/questions/308810/copying-multiple-files-using-rsync-over-ssh:
rsync -av 'server-username@192.168.0.10:/full/path/to/remote/directory "/full/path/to/remote/directory with space"' .
Это метод наименьшего общего знаменателя: самый надежный, эффективный, широко доступный и безопасный для Linux. права доступа к файлам + пользовательские схемы.
Это может быть непросто для Windows:
NFS
Опять же, в основном для двух машин Ubuntu, это SAMBA для Linux с поддержкой, встроенной в ядро Linux: https://en.wikipedia.org/wiki/Network_File_System
В основном он позволяет монтировать
папка с сервера на гостевой машине.
Настройка и устранение неполадок потенциально немного сложнее, чем rsync
, но определенно выполнимая, это хорошая статья: https: // www .digitalocean.com / сообщество / учебные пособия / как настроить-ан-nfs-mount-o n-ubuntu-16-04
Возможно, есть еще какая-то реализация для Windows: https://docs.microsoft.com/en-us/windows-server/storage/nfs/nfs-overview , но Я предполагаю, что Microsoft должна лучше поддерживать свой собственный протокол SMB.
sudo apt-get install servefile
servefile идеально подходит для случайного совместного использования, он запускает http-сервер на порту 8080 (если не указан -p < порт >), поэтому он может взаимодействовать fast на любом устройстве с браузером.
servefile filename # Просто обслуживает файл
Я получаю 3 URL, потому что у меня 3 IP из 3 разных LAN , обычно вы получаете только 1, но это замечательно, это показывает вам.
servefile -u ~ / Pictures # Позволяет вам загружать файлы в папку Pictures
servefile - l ~ / Pictures # Обслуживает содержимое папки
servefile -tc gzip ~ / Pictures # создает tar-файл из любого файла или папки и сжимает его на лету
Кстати с помощью этого метода я достиг скорости передачи 1 Гбит / с (максимальная скорость моей LAN).