Поделиться смонтированной самбой доля в другой акции

522
Joseph Dalton

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

Кто-нибудь знает, почему это происходит или как можно правильно получить доступ к общему ресурсу другого компьютера, как если бы он был частью другого общего ресурса?

Добавлен пример:

Если это поможет, вот как такой сценарий может быть создан:

# on host assume that we are `user1` # assume that we use `[homes]` in `smb.conf` so our home directory is shared mkdir -p d1/d2 && cd d1 # assume that there is a `host2` # with a share named `share2` and a user `user2` sudo mount.cifs -o username=user2 '//host2/share2' d2 # we check and see that it works and files from `share2` are visible ls d2 # now we try to use this share from anywhere, for example locally echo "ls d1/d2" | smbclient '\\localhost\user1' -U user1 # now we will only see an empty directory 
1
Неясно, что вы пытаетесь поделиться и где. Пожалуйста, уточните свой вопрос и покажите, какие команды вы использовали на каких машинах. AFH 7 лет назад 0
Я специально сформулировал это так, потому что это не имело значения, как я создал вложенное монтирование в общей папке samba. Но я добавил это в качестве примера для ясности, поскольку команды могут быть легче для понимания, чем описание. Joseph Dalton 7 лет назад 0
Спасибо за разъяснение: это не то, что я пытался сделать. Я смотрю на проблему, но мне сложно настроить тест. AFH 7 лет назад 0
На самом деле, я кое-что выяснил, делая это. Кажется, что smbclient не работает, как я ожидал; если я наберу "ls dir", я не смогу увидеть содержимое. Я должен CD и затем использовать Ls. Тем не менее, я получаю ошибку разрешения, если пытаюсь получить доступ к каталогу .gvfs, который был первоначальной причиной, по которой я начал расследование. Есть ли какая-то причина, почему это отличается или как можно было бы получить доступ к автоматически монтируемым общим ресурсам в .gvfs? Вероятно, что-то связано с безопасностью. Joseph Dalton 7 лет назад 0
Я думаю, что это проблема безопасности: я еще не проанализировал ее полностью, но похоже, что имя пользователя для доступа к `share2` не доступно при доступе к` share1` как `user1`. Однако это не полное объяснение, и я продолжаю расследование. AFH 7 лет назад 0
Это становится очень странным для меня: я добавил клиента Windows 10 в смесь для тестирования. Я могу видеть и открывать файлы в текстовых редакторах, но я не могу открыть файлы с помощью видеопроигрывателей, таких как mpc, я всегда получаю «файл не найден». Joseph Dalton 7 лет назад 0
Да, и во время просмотра кажется, что подкаталог выглядит как файл. Joseph Dalton 7 лет назад 0
Мне не удалось выяснить, как хранятся данные точки монтирования, но [этот ответ] (http://superuser.com/questions/200685/what-does-linux-do-with-existing-files-in-a -mount-point / 200697 # 200697) показывает, как можно обойти точки монтирования, и я думаю, что ваш пример работает аналогично. Точки монтирования хранятся в `/ etc / mtab` (связан с` proc / mount` в Debian и его производных), но я не ожидаю, что каждый доступ к каталогу будет проверять этот файл, даже если он зеркально отражен или проиндексирован в памяти, хотя, возможно, это так. AFH 7 лет назад 0

1 ответ на вопрос

0
Joseph Dalton

After investigating, it seems I have been affected by a bug as described here: https://serverfault.com/questions/491464/directories-shown-as-files-when-sharing-a-mounted-cifs-drive

It seems there is a bug when "resharing" with samba: Directories are shown as files because of a bug. Samba uses the inode count to determine this and cifs sets this to zero. So all directories appear as files of size zero.

The proposed solution is to recompile a kernel module for samba, but I do not think that is a viable solution. It has been 3 years since the answer, maybe someone knows a better solution now. The original bug has been marked as WILL_NOT_FIX in cifs and in samba, nothing seems to have happened.

If anyone has a better solution, I would like to hear from them.

Похожие вопросы