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