У меня есть машина CentOS 6 с простой общей папкой samba, которую я пытаюсь настроить как сервер DFS, чтобы он мог указывать клиентам папки на других серверах. Следуя документации samba по настройке этой функции, я добавил правильные строки в smb.conf, чтобы сделать общий ресурс msDSF совместимым, и перезапустил службу smb, а также все клиенты Windows7, поскольку в инструкциях также говорилось о необходимости.
Вот и загвоздка: общие ресурсы DFS отлично работают на клиентах Mac и linux - то есть папки с символическими ссылками перенаправляют трафик клиентов на указанный сервер. Вот рабочие примеры символических ссылок, которые я сделал в корневом ресурсе DFS "test2":
ln -s msdfs:192.168.255.2\\footage
и
ln -s msdfs:server2\\footage
Эта ссылка перенаправляет трафик на общий ресурс "footage" на сервере по IP 192.168.255.2. Символическая ссылка, использующая имя хоста (вместо ip) целевого сервера, также отлично работает на клиентах Mac и Linux.
Однако в клиентах Windows 7 ссылка отображается в виде значка папки с ярлыками, что является моим первым предупреждающим знаком о том, что что-то не так, потому что я думал, что это должно быть прозрачное перенаправление, как в клиентах Mac и Linux. Я предполагаю, что при правильной настройке клиент Windows7 должен представлять ее как обычную папку, а не как ярлык, соединение или любую другую символическую ссылку. Когда я нажимаю на значок ярлыка папки, я получаю классическую ошибку «Местоположение недоступно», когда он ссылается на ярлык папки, но не на ссылку, на которую он должен указывать. Другие символические ссылки папка-папка, совместно используемые через общий ресурс samba на сервере, корректно работают на клиентах Windows7.
Еще одна важная информация: сервер Linux не находится в домене или DNS, а клиенты Windows7 находятся. Это потому, что этими серверами управляет другой отдел. Будет ли это иметь значение? Из той документации, которую я смог найти, он должен проверить связь с сервером DFS для перенаправления, как только он поймет, что это не настоящая папка, и не требует DNS или домена для выполнения какой-либо службы имен или аутентификации.
Другие примечания: Сервер - CentOS 6.5, SMBv3. У клиентов Windows7 интерфейс, подключенный к подсети, в которой находятся эти серверы, является приоритетом в их порядке и привязке серверов, но в этой подсети нет DNS.
Мои серверы работают в компании с клиентами Mac и Windows7, и все они подключаются к одному общему ресурсу для доступа к общему мультимедиа. Мне нужно использовать DFS, потому что некоторые клиенты могут генерировать большой трафик и дисковый ввод-вывод, вызывая проблемы у других клиентов, которым требуется низкая задержка. Если я отделю носители, которые используют клиенты с низкой задержкой, от носителей, которые используют клиенты с большим трафиком, все будет идеально.
Вот мой smb.conf:
[global]
workgroup=WORKGROUP
security=share
unix extensions = no
strict locking = no
NetBIOS name = myworkdfs
server string = myworkdfs
strict allocate = Yes
read raw = Yes
write raw = Yes
socket options = TCP_NODELAY IPTOS_LOWDELAY
deadtime = 15
host msdfs = yes
[test2]
guest ok = yes
read only = no
path = /mnt/mydfsfolder
msdfs root = yes
wide links = yes
follow symlinks = yes
Спасибо!
В целях папок клиентов Windows в общей папке DFS действительно есть значок ярлыка папки, если у указанных папок есть цели. Так что ничего странного.
Как вы не упомянули, это может быть проблема с разрешением?
Если я правильно понимаю ваши настройки, попробуйте получить доступ \ myworkdfs \ test2 \ footage, право?
Можно ли передавать отснятый материал через SMB / samba?