Как открыть общий доступ к папке на другом компьютере с Linux в той же домашней сети?

Я пытаюсь открыть общий доступ к папке на одной машине Ubuntu с другой машиной Ubuntu в той же домашней сети. Когда я щелкаю правой кнопкой мыши по папке и выбираю «Параметры общего доступа», она говорит мне, что мне нужно установить службы общего доступа к сети Windows для совместного использования папок. Какое отношение имеет Windows к этому? Я не пытаюсь поделиться с машиной Windows ...

44
задан 1 October 2013 в 21:08

9 ответов

Какое отношение имеет Windows к этому? Я не пытаюсь поделиться с машиной Windows ...

Вы правы, это может сбивать с толку. Итак, позвольте мне сначала уточнить термины:

Способ, которым Windows обменивается файлами и принтерами, называется SMB . Люди из проекта SAMBA реализовали все протоколы и спецификации Microsoft для Linux. Поэтому Ubuntu поддерживает тот же тип обмена файлами, что и Windows, который называется Samba.

  • Вы можете использовать SAMBA для обмена файлами между компьютерами Linux. На самом деле, вы можете предпочесть его, например, если у вас есть друг с компьютером Windows.

  • В качестве альтернативы, вы можете использовать Linux-способ общего доступа к файлам, который называется NFS (Network File System) - . Этот ответ на предыдущий вопрос объясняет, как это сделать. , (но это скорее технический вопрос)

Итак, когда в диалоговом окне «Параметры общего доступа» вам предлагается установить пакеты, вы фактически не устанавливаете программное обеспечение Microsoft или что-либо подобное. Идите и сделайте это, это совершенно безопасно.

Приложение:

Вы можете попробовать включить общий доступ, прежде чем следовать инструкциям Салиха Эмина; если это не сработает, вы получите простое предупреждение, затем при необходимости сможете выполнить действия, описанные Салихом. Я попробовал это на недавно установленной и современной системе, и мне действительно нужно было это сделать.

0
ответ дан 1 October 2013 в 21:08

Я полагаю, что это то, под чем перечислены пакеты SAMBA, или это как минимум часть их описания. В качестве альтернативы вы можете попробовать Preferences-> File Sharing, который, я считаю, использует другой механизм. Самба - удобная вещь для установки.

0
ответ дан 1 October 2013 в 21:08

Вы можете просто запустить простой HTTP-сервер на машине linux и получить доступ к тому же на другой машине.

Шаги:

  1. сначала запускают терминал из папки для совместного использования.
  2. запустить в терминале - python -m SimpleHTTPServer
  3. проверить свой IP с помощью ifconfig.
  4. введите в браузере другого компьютера IP-адрес: 8000 (например, если ваш ip 127.3.4.123, то в браузере вы набираете 127.3.4.123:8000)

Вы получаете требуемый файлы в папке для загрузки.

0
ответ дан 1 October 2013 в 21:08

Вы можете установить «qweborf». Он будет делиться каталогом по HTTP, и другие хосты смогут получить доступ через браузер.

Он также может включить webdav и разрешить монтирование каталога как файловой системы для чтения / записи (протестировано с davfs2, KDE, Gnome2, OsX).

0
ответ дан 1 October 2013 в 21:08

В настоящее время в Lucid есть небольшая ошибка, которая указана в Launchpad: bug # 536766 . Эта ошибка не побуждает пользователя устанавливать необходимые пакеты, необходимые для завершения настройки общего доступа к файлам. Пока это не решено, вот быстрый обходной путь.

Вам необходимо установить libapache2-mod-dnssd и перезапустить. Нажмите на эту ссылку, чтобы установить ее, или найдите libapache2-mod-dnssd в Центре программного обеспечения.

После установки перейдите к Система → Предпочтения → Личный общий доступ к файлам и установите флажок «Общий доступ к общим файлам в сети».

alt text

Как только это будет сделано, вы сможете просматривать все другие компьютеры в вашей сети, которые разрешают общий доступ к файлам в общей папке. Просто нажмите Места → Сеть , и там вы увидите все доступные компьютеры и их общие папки общего доступа.

Двойной щелчок по значку сервера установит соответствующую общую папку на вашем рабочем столе.

Через текст ссылки

0
ответ дан 1 October 2013 в 21:08

Если вам нужна бесшовная интеграция в Ubuntu, и вы не заинтересованы в совместимости с Windows, SSH - ваша чертовщина.

См. Как я могу обмениваться файлами между двумя компьютерами Linux по локальной сети?

Вам может потребоваться установить SSH-сервер с:

sudo apt-get install openssh-server

Из файла - приложение-менеджер на вашем клиенте, вы можете попасть на ваш сервер с помощью:

sftp://servername.local

Чтобы получить доступ к файлам из терминала или программно, используйте sshfs для создания точки монтирования в файловой системе клиента. [ 118]

0
ответ дан 1 October 2013 в 21:08

Для сетей только для Linux я нахожу, что SSHFS является собственным, стабильным и чрезвычайно быстрым. У меня есть две машины Xubuntu (18.04) совместное использование / домашние папки по SSH.

Вот то, как настроить этот sshfs и автоматически снова соединяющийся после перезагрузки с помощью fstab, не имея необходимость обеспечивать пароль. Большое спасибо serverfault пользователю kubanczyk для того, как снова соединиться после удаленного, приостанавливает/возобновляет.

Я буду использовать "Локальную машину - surfbox" для компьютера, который Вы подключаете от, и "Удаленная машина - devbox" для компьютера, с которым Вы соединяетесь.

Замените "remoteuser" ниже именем пользователя, с которым Вы входите в систему на Удаленной машине и "localuser" с именем пользователя, с которым Вы входите в систему на Локальной машине. Проверить тип имен пользователей echo $USER в терминале на удаленных и локальных машинах.

Кроме того, проверьте свой идентификатор пользователя och groupID, они должны оба быть 1000.

GroupID: id -g localuser UserID: id -u localuser

1. Получите адреса IP своих Локальных и Удаленных Машин.

hostname -I

Я буду использовать 192.168.1.150 для Локальной Машины ('surfbox') и 192.168.1.151 для Удаленной Машины ('devbox')

2. Пакеты установки на Локальных и Удаленных Машинах

sudo apt install sshfs fuse ssh

3. Создайте предохранитель группы и добавьте localuser к нему

Создайте группу: sudo groupadd fuse

Добавьте localuser к группе: sudo usermod -a -G fuse $user

4. Включите "allow_other" в конфигурации предохранителя

Нам будет нужна эта опция при монтировании в fstab

Править /etc/fuse.conf с Вашим редактором командной строки. Удалите хэш-тег прежде user_allow_other и сохраните.

5. Генерируйте SSH, включает Локальную Машину

Не обеспечивайте пароль при запросе. Просто нажмите Enter для оставления незаполненный.

ssh-keygen -t rsa -C youremail@example.com

Ключи хранятся в Локальном корневом каталоге машины/.ssh папка

6. Передайте свою Локальную общественность машины ключ SSH к Удаленной машине

ssh-copy-id -i ~/.ssh/id_rsa.pub remoteuser@192.168.1.151

Вам предложат пароль для Удаленного пользователя на Удаленной машине. Локальный открытый ключ машины теперь добавляется к файлу ~/.ssh/authorized_keys на Удаленной машине.

7. Создайте каталог на Локальной машине/mnt папка, где Вы смонтируете Удаленную машину / домашняя папка.

Выберите любое имя, которое имеет смысл для Вашей Удаленной машины.

sudo mkdir /mnt/devboxhome

8. Смонтируйте Удаленную машину / корневой каталог от терминала

Синтаксис для sshfs

sshfs [user@]host:[directory] mountpoint [options]

мы используем

sudo sshfs [remoteuser]@192.168.1.151:/home/[remoteuser] /mnt/devboxhome -o allow_other,default_permissions -o identityfile=/home/[localuser]/.ssh/id_rsa

пример: принятие "steve" является именем пользователя и на Локальных и на Удаленных машинах

sudo sshfs steve@192.168.1.151:/home/steve /mnt/devboxhome -o allow_other,default_permissions -o identityfile=/home/steve/.ssh/id_rsa

Так как Вы передали общедоступный ключ RSA Удаленной машине, Вам нельзя предложить remoteuser пароль.

Вы получите предупреждение, что машине не доверяют и запрашивают, если она должна быть добавлена. Добавьте Удаленную машину, как доверяется.

9. Проверьте: Просмотрите Удаленную Машину / корневой каталог

В терминале на Локальной машине можно теперь перечислить Удаленную машину / корневой каталог под/mnt/devboxhome

cd /mnt/devboxhome ls

или используйте Наутилус для просмотра каталога.Отлично.

10. Включите снова соединяются после перезагрузки

Мы добавим запись в/etc/fstab, чтобы заставить это произойти. Вам будет нужен Ваш Локальный идентификатор пользователя машины och groupid - видят введение, если Вы пропустили это. Отредактируйте/etc/fstab со своим редактором командной строки и добавьте эти две строки в конце/etc/fstab

# Mount devbox at boot remoteuser@192.168.1.151:/home/[remoteuser]/ /mnt/devboxhome fuse.sshfs default_permissions,user,delay_connect,reconnect,serversliveinterval=15,serveralivecountmax=3,allow_other,identityfile=/home/[localuser]/.ssh/id_rsa,idmap=user,uid=1000,gid=1000 0 0

  • delay_connect заставляет ядро ожидать, пока сеть не вплоть до него, пытается смонтировать каталог на Удаленной машине.
  • Так как мы работаем как корень во время начальной загрузки, мы должны указать файл ключей, который хранится в localuser корневом каталоге.
  • allow_other - пользователи кроме того, делающего фактическое монтирование, могут получить доступ к смонтированной файловой системе.
  • idmap=user - только переведите UID соединяющегося пользователя
  • снова соединитесь, ServersLiveInterval, ServerAliveCountMax - ssh отправляет активные ping. Если ServerAliveCountMax последовательный сбой ping, снова соединиться.

Пользователь, входящий в систему как steve на Локальных и Удаленных машинах, имел бы:

steve@192.168.1.151:/home/steve/ /mnt/devboxhome fuse.sshfs default_permissions,user,delay_connect,reconnect,serversliveinterval=15,serveralivecountmax=3,allow_other,identityfile=/home/steve/.ssh/id_rsa,idmap=user,uid=1000,gid=1000 0 0

ВАЖНЫЙ: наклонная черта после удаленного каталога: steve@192.168.1.151:/home/steve/

сохраните/etc/fstab и....

11. Перезагрузка

Необходимо теперь смочь получить доступ к Удаленной машине / корневой каталог в Локальной машине/mnt/devboxhome В Наутилусе, можно перетащить эту папку к панели Мест

12. Повториться

Пройдите те же шаги снова на Удаленной машине для создания / корневого каталога Локальной машины совместно использованным.

2
ответ дан 1 October 2013 в 21:08

Мой способ совместно использовать файлы:

sudo npm install -g http-server

Перейдите к папке, Вам нравится совместно использовать, открывать терминал и выполнять эту команду:

http-server -o 

Вы сможете получить доступ к той папке во всех машинах в той же сети на IP-адресе, упомянутом выводом той команды.

0
ответ дан 23 November 2019 в 00:00

zx81roadkill является правильным, используйте "sshfs". Samba является дерьмом, NFS является мусором. Sshfs совершенно применим от моего компьютера здесь в Калифорнии к компьютеру в Аргентине. Это совершенно безопасно, это настолько же быстро как что-либо еще (у меня есть gibabit строка).

Sshfs является относительно вновь прибывшим по сравнению с Samba и NFS, но он далеко превосходит также. Вот пример выполнения его (предположение, что у Вас есть все установленные пакеты),

# mount "username"'s home directory on "machine"
  mkdir -p /tmp/my_mount ; sshfs username@machine: /tmp/my_mount
# mount the root directory on "machine" (note: if "username" on "machine"
# can't write to the file, neither will you.  You have "username"'s privs
  mkdir -p /tmp/my_mount ; sshfs username@machine:/ /tmp/my_mount
# mount the directory "Videos" on "username"'s account on "machine"
  mkdir -p /tmp/my_mount ; sshfs username@machine:Videos /tmp/my_mount

После того как Вы вводите пароль,/tmp/my_mount будет содержать все файлы "имени пользователя" на "машине". Не беспокойтесь к futz вокруг с Samba или NFS. Они - просто бессмысленная боль в торце, чтобы или настроить, или установить.

Размонтироваться:

fusermount -u /tmp/my_mount

и если это перестало работать (по любой причине):

umount -f /tmp/my_mount

Все данные, отправленные через точку монтирования, шифруются. Почему это не стандарт, полностью принятым путем, выполнения монтирования к удаленной машине является тайна мне. Это значительно превосходит любой другой метод с точки зрения простоты.

При необходимости в необработанной скорости, возможно, который чрезмерно увеличился в размерах, часть Samba спама сделает это, или NFS. Я не знаю, 100 МБ/с + достаточно хорошо для меня.

0
ответ дан 23 November 2019 в 00:00

Другие вопросы по тегам:

Похожие вопросы: