3

Сервер 1: 10.0.0.10

smb.conf:

[global]
workgroup = WORKGROUP

Server string = %h server (Samba, Ubuntu)

dns proxy = no

log file = /var/log/samba/log.%m

max log size = 1000

syslog = 0

panic action = /usr/share/samba/panic-action %d

server role = standalone server

passdb backend = tdbsam

obey pam restrictions = yes

unix password sync = yes

passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:*     %n\n *password\supdated\ssuccessfully* .

pam password change = yes

map to guest = bad user

usershare allow guests = yes

[public]
   comment = Public share
   path = /mnt/public
   browsable = yes
   read only = no
   guest ok = yes
   force user = nobody
   create mask = 0777
   directory mask = 0777

[apps]
   path = /mnt/torrents/apps
   writable = yes
   browseable = yes
   public = yes
   create mask = 0644
   directory mask = 0755
   force user = shareuser

Это работает как ожидалось. Из клиента Windows 7 я могу получить доступ к общим ресурсам с \10.0.0.10 \public

Сервер 2: 10.0.0.4

smb.conf:

[global]
workgroup = WORKGROUP

Server string = %h server (Samba, Raspbian)

dns proxy = no

log file = /var/log/samba/log.%m

max log size = 1000

syslog = 0

panic action = /usr/share/samba/panic-action %d

server role = standalone server

passdb backend = tdbsam

obey pam restrictions = yes

unix password sync = yes

passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:*     %n\n *password\supdated\ssuccessfully* .

pam password change = yes

map to guest = bad user

usershare allow guests = yes

[public]
   comment = Public share
   path = /mnt/public
   browsable = yes
   read only = no
   guest ok = yes
   force user = nobody
   create mask = 0777
   directory mask = 0777

На этом сервере общий ресурс недоступен из того же клиента Windows. \10.0.0.4\публичные результаты в

"Windows не может получить доступ к \10.0.0.4 \public ... Код ошибки: 0x80070035 Сетевой путь не найден.

Мой вопрос: как это вообще возможно? Общие ресурсы Samba идентичны на 100%, и оба сервера подключены к одному и тому же коммутатору / маршрутизатору, и в остальном одинаково доступны из всей локальной сети. SSH и FTP, например, отлично работает для 10.0.0.4. Но по непонятной причине Windows не может получить к ней доступ. На любом из серверов нет абсолютно никаких брандмауэров, и они настолько ванильны, насколько могут.

Раньше я бился головой о Самбу и ненавижу его с удвоенной силой. Но некоторые вещи еще более глупы и непостижимы, чем другие, и это выглядит как одна из них.

1 ответ1

1

Как указано в комментарии @DanielJ, вы можете проверить, является ли это файл или папка, например, запустив cd /mnt/public/ и посмотрев, попадете ли вы в каталог или нет.

Затем проверьте права доступа к файлу, запустив ls -lah /mnt/ . Если вы можете опубликовать этот вывод, мы можем определить, сможет ли Samba работать с этой папкой или нет. (Отредактируйте свой вопрос, чтобы показать вывод)

Странно, у вас есть пользователь с именем public? Проверьте в вашем tdbsam (выполнить pdbedit -L public и /etc/passwd и т.д. / пароль файл (выполнить grep public /etc/passwd и т.д. / пароль). Если пользователь существует, он может попытаться найти домашнюю папку для этого пользователя перед проверкой других определений общего ресурса.

Также при работе с Samba привыкайте к запуску testparm и testparm -s . Первый проверяет синтаксис всех команд и определений общего ресурса, а второй показывает это и выводит текущую конфигурацию, которую он использует.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .