如何使用 autofs 设置 CIFS 挂载权限?

如何使用 autofs 设置 CIFS 挂载权限?

我已经使用 autofs 在 CentOS 6.4 服务器上设置了 CIFS 挂载:

文件 /etc/auto.mnt:

Photos -fstype=cifs,perm,rw,uid=505,forceuid,gid=505,forcegid,file_mode=0770,dir_mode=0770,credentials=/root/credentials.txt ://adsrv01/Photos

命令显示的内容ls

[root@websrv01 mnt]# ls -l
total 4
drwxr-xr-x 1 root root 4096 Apr 26 12:01 Photos

我对命令的期望是ls

[root@websrv01 mnt]# ls -l
total 4
drwxrwx--- 1 photos photos 4096 Apr 26 12:01 Photos

你发现有什么问题吗?我该如何正确设置所有者和 chmod?

编辑:我忘了说,root 用户在 /mnt/Photos 目录上无法使用 chown 和 chmod 命令。我无法正确执行此操作,我也尝试使用 fstab。

使用 fstab 时会发生以下情况:

mkdir /mnt/Photos
chmod 770 /mnt/Photos
chown photos:photos /mnt/Photos
mount /mnt/Photos

挂载目录时权限会自动更改并设置为 755。我无法将模式重新设置为 770:权限被拒绝。

答案1

我找到了答案:你必须使用该选项nounix以及file_modedir_mode

这是我的 fstab:

//adsrv01/Photos      /mnt/Photos           cifs    credentials=/root/credentials.txt,file_mode=0770,dir_mode=0770,nounix,uid=505,gid=505 0 0

答案2

我刚刚能够获得一个合理的工作设置,部分归功于您的回答@mimipc,但我在这里分享了一个更完整的描述。

malinovka.daonet.home我的 rPI在我的 中被调用/etc/fstab。在服务器和客户端上,我都有netvor用户,并且我想使用客户端的单个共享来读取和写入单个共享。

要从马利诺夫卡rpi,我已将此部分添加到smb配置文件

[netvorovo]
   comment = netvorovo
   public = no
   writeable = yes
   browsable = yes
   path = /path/to/netvorovo
   create mask = 0644
   directory mask = 0755

和“创建的用户”(也就是说,即使用户netvor已经创建,我也需要为 samba 再次“创建”它):

smbpasswd -a netvor

(我刚刚生成了仅用于 samba 的强密码)。

在客户端上,我有三个文件/etc/auto.master.d

  • autofs 文件

    /-  /etc/auto.master.d/malinovka.map --timeout=300
    
  • 马利诺夫卡.地图

    /mnt/netvorovo    -fstype=cifs,credentials=/etc/auto.master.d/malinovka.credentials,uid=9860,gid=9860,file_mode=0640,dir_mode=0750,nounix ://malinovka.daonet.home/netvorovo
    
  • malinovka.credentials

    username=netvor
    password=(redacted)
    

此时,以 身份登录netvor,我可以在 /mnt/netvorovo 上创建文件/目录,默认模式照常。

相关内容