Как включить Network Discovery и Share между компьютерами с Samba
У меня есть сервер Ubuntu. Доступ к серверу из клиентов Windows работает нормально.
Но сервер не указан среди доступных компьютеров в обзоре сети клиента Windows.
Для машин с Windows это будет функция Network Discovery.
Как я могу сделать мой сервер Samba видимым в сети?
Версия для Windows - Windows 7.
Рабочая группа в smb.conf
такой же, как в Windows.
6 ответов
Для совместного использования ресурсов (общего доступа к файлам) между двумя или более компьютерами в одной локальной сети вам нужна Samba, которая по умолчанию поставляется с активированным обнаружением сети (после установки Samba). Это будет работать для вашей локальной сети, но вы должны помнить, чтобы настроить рабочую группу на ту, которую использует сеть.
Чтобы установить Samba, сначала вам нужно либо "поделиться папкой", я рекомендую поделиться чем-нибудь внутри вашей домашней папки, чтобы избежать проблем из-за разрешений, например, это может быть папка на рабочем столе. Вы можете поделиться им, щелкнув правой кнопкой мыши по папке и выбрав "Общий доступ". Ubuntu проведет вас через пару вопросов "Общий доступ", которые включают установку Samba и установку правильных разрешений.
Другой способ установить samba - это буквально установить samba;). Либо в Центре программного обеспечения, либо в терминале введите следующее: sudo apt-get install samba
<- Не видел, чтобы кто-то приходил, не так ли?
Теперь отредактируйте конфигурацию Samba и убедитесь, что вы находитесь в одной сетевой рабочей группе. Рабочая группа должна быть одинаковой для всех машин в вашей локальной сети. Таким образом, они могут воспользоваться преимуществами обнаружения сети между компьютерами Windows и Ubuntu или Ubuntu и Ubuntu.
Отредактируйте свой
smb.conf
файл:sudo nano /etc/samba/smb.conf
Найдите строку в разделе [Global], которая читает рабочую группу
[global] ## Browsing/Identification ### # Change this to the workgroup/NT-domain name your Samba server will part of workgroup = WORKGROUP
Измените значение рабочей группы на то, которое использует ваша сетевая рабочая группа, или задайте новое имя для рабочей группы, над которой вы хотели бы работать, например:
workgroup = myhomenet
Сохраните файл и перезапустите службу Samba:
sudo service smbd restart
Наслаждайтесь мощью странного сетевого открытия ^^
Этого должно быть достаточно, чтобы работала локальная сеть Ubuntu to Ubuntu, но в тех случаях, когда Windows задействована и на случай, если Windows не видит ваш компьютер Ubuntu, добавьте к вам следующее smb.conf
файл:
local master = yes
preferred master = yes
И, конечно, перезапустите службу Samba.
Если он все еще не видит его, в Windows найдите дополнительные параметры общего доступа, которые находятся на левой панели в Центре управления сетями и общим доступом. Находясь там, выберите параметр " Включить общий доступ к файлам" для устройств, использующих 40- или 56-битное шифрование. Это проблема только в Windows Vista и выше, если у вас Windows XP, она должна работать правильно.
После этого для доступа к любым другим компьютерам в сети вы можете открыть Браузер файлов и выбрать " Обзор сети":
Я просто решил исправить эту досадную проблему. У меня это было давно, но теперь, когда я настраивал новый компьютер, пришло время заставить его работать.
Я установил свой Ubuntu box в качестве сервера WINS, а также добавил строки из поста выше в свой
smb.conf
:wins support = yes local master = yes preferred master = yes
Так как это не помогло, я заставил свою коробку Win7 использовать коробку Ubuntu в качестве сервера WINS, изменив расширенные настройки WINS в настройках IPv4 сетевого адаптера.
Это тоже не помогло, поэтому я запустил Wireshark, чтобы посмотреть, что происходит. Я увидел окно Win7, запрашивающее сервер WINS, и увидел ответ, содержащий все компьютеры с общими папками. Итак, почему они не появились в Windows? Я думал, что Firewall. Я использую брандмауэр Windows и в расширенных настройках для этого я заметил, что
File and Printer Sharing (LLMNR-UDP-In)
включен для частных сетей, но не для домена или общедоступных. Я просто включил правило для домена и общественности, а также.
Фу, мои компьютеры теперь отображаются в Windows. Я предполагаю, что мог бы быть способ заставить Win7 включать Ubuntu box и другие машины linux во все, что он определяет как частную сеть, но я оставлю это приключение на следующий день.
Я надеюсь, что это может кому-то помочь.
РЕДАКТИРОВАТЬ: После включения правила брандмауэра я удалил жестко заданную настройку WINS-сервера в сетевом адаптере, теперь, когда трафик разрешен, я думаю, что стандартный процесс согласования может работать так, как я хочу.
Несмотря на то, что это старый вопрос, он все еще является темой, в которой Samba имеет некоторые проблемы.
Я устанавливал сервер Samba, и он работал правильно, за исключением того, что моя Windows 10 не могла видеть мой сервер Samba в сетевых местах (но я мог получить к нему доступ напрямую через IP-адрес). Проблема заключается в обнаружении служб Windows, которое еще не реализовано в Samba.
Однако существует репозиторий WSDD на github, который добавляет эту функциональность на ваш сервер Samba. Он написан на Python с хорошей документацией, а также содержит ссылки на альтернативные проекты, обсуждения, почему Samba не работает, а также предупреждает об использовании протокола SMB1 (который до сих пор рассматривается как "решение" этой проблемы в некоторых инструкциях в Интернете, потому что он использует NetBIOS, реализованный в Samba).
В 2023 году
sudo apt install wsdd
просто работает. По умолчанию он прослушивает все интерфейсы без обратной связи, но вы можете отредактировать /etc/default/wsdd, чтобы ограничить, где он прослушивает, и т. д.
(Проверено на Ubuntu 22.04.2 LTS)
Ну, я решил это, добавив компоненты удаления Windows и проверил клиента и сервер SMB1 /CIFS, и это сработало как прелесть. Я надеюсь, что это поможет вам.
С уважением
Marko
Если вы хотите что-то удобное для пользователя, есть инструмент system-config-samba, который вы можете получить из менеджера программного обеспечения.
После того, как вы загрузили этот файл, вы можете увидеть, какие папки являются общими, их разрешения и видны ли они. Чтобы машина Windows могла видеть ее в сети, должна быть видна хотя бы одна папка.