无法通过 samba 访问已安装的驱动器

无法通过 samba 访问已安装的驱动器

因此,一些驱动器在启动时通过 fstab 安装到用户主目录。

UUID=XXXX-XXXX  /home/user/10TB exfat   defaults,uid=1000,umask=000 0 0

然后我运行此命令让 samba 访问主目录:

sudo setsebool -P samba_enable_home_dirs=on

现在有这个 smb conf 部分:

[home]
        comment = me-files
        path = /home/user
        writeable = yes
        browseable = yes
        public = yes
        create mask = 0644
        directory mask = 0755
        write list = user

我可以连接到我的 PC 并访问除 ~/10TB 中安装的驱动器内容之外的所有内容。

我听说过禁用 SELINUX,但我认为这并不理想。我以前用过 samba 和 arch ,效果很好。我在这里缺少什么?

系统是Fedora 35 KDE spin。

编辑:我在fuse.conf中添加了user_allow_otherandallow_other

答案1

所以我必须这样做:

setsebool -P samba_share_fusefs 1

https://linux.die.net/man/8/samba_selinux

然后这样做只是为了更好的措施:

setsebool -P samba_export_all_rw 1

那么你应该对你的装有保险丝的驱动器有好处!

无需添加 samba 类型,因为它不适用于熔断器安装。 Npr 是否需要编辑context.

你可以用这个来检查:

ls -dZ /share

答案2

当我斜杠进入 samba 共享时,Windows 中出现错误消息:

无法访问....

解决方案:

使用less /var/log/messages或浏览日志less journalctl,日志将告诉您需要运行的确切命令...您需要编写一条规则来覆盖当前的 selinux 配置。

我跑了setsebool -P samba_export_all_ro true,这解决了我的问题。不需要重新启动,我也不需要systemctl restart smb。如果您需要对共享进行读写访问,只需更改命令末尾的rofor即可。rw

相关内容