Назад | Перейти на главную страницу

Как управлять разрешениями на монтировании Samba

У меня есть Samba-сервер (nas01), который представляет собой акцию под названием downloads. Разрешения на этот общий ресурс следующие:

root@nas01:/mnt/storage/downloads# ls -al drwxrwxr-x+ 9 phil samba-users 4096 Aug 16 00:09 . drwxrwxr-x 3 phil samba-users 4096 Aug 13 22:16 .. drwxrwx---+ 231 phil samba-users 12288 Aug 15 00:56 Movies drwxrwx---+ 42 phil samba-users 4096 Aug 15 23:15 TV

Пользователи, используемые для удаленного доступа к общему ресурсу Samba, являются локальными пользователями на сервере Samba и все входят в группу samba-users. Локально, на самом сервере Samba, эти пользователи могут получить доступ к файлам:

root@nas01:/mnt/storage/downloads# sudo -u plex ls TV | wc -l 40

Когда общий ресурс смонтирован на другом сервере Linux (plex01), вот как это выглядит:

root@plex01:/mnt/downloads# ls -al drwxrwxr-x+ 9 phil 1001 0 Aug 15 23:09 . drwxr-xr-x 3 root root 4096 Aug 18 20:09 .. drwxrwx---+ 231 phil 1001 0 Aug 14 23:56 Movies drwxrwx---+ 42 phil 1001 0 Aug 15 22:15 TV

Местный root пользователь может получить к нему доступ:

root@plex01:/mnt/downloads# ls TV | wc -l 40

Но местный plex пользователь не может:

root@plex01:/mnt/downloads# sudo -u plex ls TV ls: cannot open directory TV: Permission denied

Если я создам локальную группу с GID 1001 и добавить plex пользователь к нему ... тогда он может получить доступ к файлам.

root@plex01:/mnt/downloads# ls -al drwxrwxr-x+ 9 phil plexrunner 0 Aug 15 23:09 . drwxr-xr-x 3 root root 4096 Aug 18 20:09 .. drwxrwx---+ 231 phil plexrunner 0 Aug 14 23:56 Movies drwxrwx---+ 42 phil plexrunner 0 Aug 15 22:15 TV

root@plex01:/mnt/downloads# groups plex plex : plex plexrunner

root@plex01:/mnt/downloads# sudo -u plex ls TV | wc -l 40

Итак, вопрос в том ... как правильно управлять этими разрешениями?

У вас должен быть способ сопоставления идентификаторов (пользователя или группы) на сервере и клиенте. Если вы не находитесь в среде, где используется сервер каталогов и тому подобное, вы можете назначить владение через группу. Экспортируйте папку с набором групп для самба-пользователей. Убедитесь, что GID для группы одинаков на сервере и клиенте, создав одну и ту же группу на всех клиентах и ​​убедившись, что пользователи являются членами этой группы. Установите разрешения для папки и всего содержимого группы.