Я пытаюсь открыть общий доступ к папке на одной машине Ubuntu с другой машиной Ubuntu в той же домашней сети. Когда я щелкаю правой кнопкой мыши по папке и выбираю «Параметры общего доступа», она говорит мне, что мне нужно установить службы общего доступа к сети Windows для совместного использования папок. Какое отношение имеет Windows к этому? Я не пытаюсь поделиться с машиной Windows ...
Для сетей только с Linux я нахожу SSHFS естественным, стабильным и чрезвычайно быстрым. У меня есть две машины Xubuntu (18.04) для совместного использования / домашних папок по SSH.
Вот как настроить sshfs и автоматически переподключиться после перезагрузки, используя fstab без необходимости ввода пароля. Большое спасибо пользователю serverfault kubanczyk за то, как восстановить соединение после удаленного приостановления / возобновления.
Я буду использовать «Local machine - surfbox» для компьютера, к которому вы подключаетесь, и «Remote machine - devbox» для компьютера, к которому вы подключаетесь.
Замените «remoteuser» ниже на имя пользователя, с которым вы входите на Удаленной машине, и «localuser» на имя пользователя, с которым вы входите на Локальной машине. Чтобы проверить имена пользователей, введите echo $USER
в терминале на пульте & amp; местные машины.
Кроме того, проверьте свой userID или groupID, они оба должны быть 1000.
GroupID: id -g localuser
UserID: id -u localuser
hostname -I
Я буду использовать 192.168.1.150 для локальной машины ('surfbox') и 192.168.1.151 для удаленной машины ('devbox')
sudo apt install sshfs fuse ssh
Создайте группу: sudo groupadd fuse
Добавьте localuser в группу: sudo usermod -a -G fuse $user
Эта опция понадобится нам при монтировании в fstab
Отредактируйте /etc/fuse.conf
в редакторе командной строки. Удалите хэштегом перед user_allow_other
и сохраните.
Не указывайте пароль при запросе . Просто нажмите Enter, чтобы оставить пустым.
ssh-keygen -t rsa -C youremail@example.com
Ключи хранятся в папке домашнего каталога локальной машины /.ssh
ssh-copy-id -i ~/.ssh/id_rsa.pub remoteuser@192.168.1.151
Вам будет предложено ввести пароль для удаленного пользователя на удаленном компьютере. Открытый ключ локального компьютера теперь добавлен в файл ~ / .ssh / authorized_keys на удаленном компьютере.
Выберите любое имя, которое имеет смысл для вашей удаленной машины.
sudo mkdir /mnt/devboxhome
Синтаксис для 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 на удаленную машину, вам не нужно запрашивать пароль удаленного пользователя ,
Вы получите предупреждение о том, что машине не доверяют, и предложит добавить его. Добавьте удаленный компьютер как доверенный.
В терминале на локальном компьютере теперь вы можете перечислить удаленный компьютер / домашний каталог в / mnt / devboxhome
cd /mnt/devboxhome
ls
или использовать Наутилус, чтобы просмотреть каталог. Отлично.
Мы добавим запись в / etc / fstab, чтобы это произошло. Вам понадобится ваш ID пользователя локальной машины или 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
ServerAliveCountMax
последовательный эхо-запрос завершается неудачно, восстановите соединение. Пользователь, входящий в систему как Стив на локальных и удаленных машинах, будет иметь:
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 и ....
Теперь вы должны иметь доступ к каталогу Remote machine / home на локальном компьютере / mnt / devboxhome. В Nautilus вы можете перетащить эту папку на панель меток
Повторите те же шаги на удаленном компьютере, чтобы сделать каталог / home локального компьютера общим.
Я полагаю, что это то, под чем перечислены пакеты SAMBA, или это как минимум часть их описания. В качестве альтернативы вы можете попробовать Preferences-> File Sharing, который, я считаю, использует другой механизм. Самба - удобная вещь для установки.
Какое отношение имеет Windows к этому? Я не пытаюсь поделиться с машиной Windows ...
blockquote>Вы правы, это может сбивать с толку. Итак, позвольте мне сначала уточнить термины:
Способ, которым Windows обменивается файлами и принтерами, называется SMB . Люди из проекта SAMBA реализовали все протоколы и спецификации Microsoft для Linux. Поэтому Ubuntu поддерживает тот же тип обмена файлами, что и Windows, который называется Samba.
Вы можете использовать SAMBA для обмена файлами между компьютерами Linux. На самом деле, вы можете предпочесть его, например, если у вас есть друг с компьютером Windows.
В качестве альтернативы, вы можете использовать Linux-способ общего доступа к файлам, который называется NFS (Network File System) - . Этот ответ на предыдущий вопрос объясняет, как это сделать. , (но это скорее технический вопрос)
Итак, когда в диалоговом окне «Параметры общего доступа» вам предлагается установить пакеты, вы фактически не устанавливаете программное обеспечение Microsoft или что-либо подобное. Идите и сделайте это, это совершенно безопасно.
Приложение:
Вы можете попробовать включить общий доступ, прежде чем следовать инструкциям Салиха Эмина; если это не сработает, вы получите простое предупреждение, затем при необходимости сможете выполнить действия, описанные Салихом. Я попробовал это на недавно установленной и современной системе, и мне действительно нужно было это сделать.
В настоящее время в Lucid есть небольшая ошибка, которая указана в Launchpad: bug # 536766 . Эта ошибка не побуждает пользователя устанавливать необходимые пакеты, необходимые для завершения настройки общего доступа к файлам. Пока это не решено, вот быстрый обходной путь.
Вам необходимо установить libapache2-mod-dnssd и перезапустить. Нажмите на эту ссылку, чтобы установить ее, или найдите libapache2-mod-dnssd в Центре программного обеспечения.
После установки перейдите к Система → Предпочтения → Личный общий доступ к файлам и установите флажок «Общий доступ к общим файлам в сети».
Как только это будет сделано, вы сможете просматривать все другие компьютеры в вашей сети, которые разрешают общий доступ к файлам в общей папке. Просто нажмите Места → Сеть , и там вы увидите все доступные компьютеры и их общие папки общего доступа.
Двойной щелчок по значку сервера установит соответствующую общую папку на вашем рабочем столе.
Через текст ссылки
Вы можете установить «qweborf». Он будет делиться каталогом по HTTP, и другие хосты смогут получить доступ через браузер.
Он также может включить webdav и разрешить монтирование каталога как файловой системы для чтения / записи (протестировано с davfs2, KDE, Gnome2, OsX).
Вы можете просто запустить простой HTTP-сервер на машине linux и получить доступ к тому же на другой машине.
Шаги:
python -m SimpleHTTPServer
ifconfig
. Вы получаете требуемый файлы в папке для загрузки.
Если вам нужна бесшовная интеграция в Ubuntu, и вы не заинтересованы в совместимости с Windows, SSH - ваша чертовщина.
См. Как я могу обмениваться файлами между двумя компьютерами Linux по локальной сети?
Вам может потребоваться установить SSH-сервер с:
sudo apt-get install openssh-server
Из файла - приложение-менеджер на вашем клиенте, вы можете попасть на ваш сервер с помощью:
sftp://servername.local
Чтобы получить доступ к файлам из терминала или программно, используйте sshfs
для создания точки монтирования в файловой системе клиента. [ 118]
scp
и (еще лучше) rsync
.
– Toby 1 Kenobi
13.04.2020, 08:51