Samba mount не следует по символической ссылке

Я использую два сервера и хочу смонтировать каталог на одном из другого. По разным причинам я хочу использовать Samba (smbfs), а не NFS.

ServerA монтирует ServerB с этим в fstab:

//ServerB/sambashare /mount/point smbfs username=blah,password=blah,ro

Это работает, и я могу видеть содержимое sambashare в /mount/point. Однако символическая ссылка в этом каталоге, которая на сервере A указывает на /tmp/blah, не разрешается правильно. Если я пытаюсь зайти в каталог, он говорит, что в доступе отказано.

Сервер Samba на ServerB имеет следующие глобальные настройки:

follow symlinks = yes
wide links = yes

Любые предложения о том, почему это не может работать? Ссылка разрешается правильно локально на сервере B.

(Имена серверов, общих ресурсов и т. Д. Были изменены, чтобы защитить невинных.)

1 ответ

smbfs - это старая реализация smb ядра, которая больше не поддерживается активно. Вместо этого он был заменен модулем ядра cifs. Поэтому попробуйте смонтировать его с типом cifs вместо smbfs.

Также убедитесь, что в вашем файле smb.conf нет "Unix Extensions = No", так как это также отключит возможность модулей ядра переходить по символическим ссылкам. Это значение по умолчанию равно yes, поэтому, если его нет в вашем файле smb.conf, вам следует все установить здесь.

Вы также можете хранить свои учетные данные в более безопасном месте, так как каждый может прочитать / etc / fstab.

Для этого выполните следующие действия от имени пользователя root.

cd / etc / samba /
echo username = mywindowsusername>.smbpasswd
echo password = mywindowspassword >>.smbpasswd
chmod 600.smbpasswd

Подставьте свое имя пользователя Windows и пароль в командах. Никто, кроме root, не сможет прочитать содержимое этого файла.

Затем измените строку в файле / etc / fstab, чтобы она выглядела следующим образом:

// имя_сервера / имя_ресурса / каталог_монтирования cifs учетные данные =/etc/samba/.smbpasswd 0 0

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