【问题标题】:Sharing NFS4 mount accesed by multiple users共享多个用户访问的 NFS4 挂载
【发布时间】:2012-08-19 00:01:51
【问题描述】:

我正在尝试在多个用户之间共享一个 NFS 挂载。我无法让它工作,因为我总是被拒绝访问。我可以挂载共享,但看不到文件。

通过 Heartbeat+Pacemaker 导出。我不认为这有什么不同,但这里是导出配置:

primitive exports_nfs_proys ocf:heartbeat:exportfs \
params rmtab_backup="none" directory="/export/proyectos" clientspec="172.16.54.0/24" options="rw,async,no_subtree_check,insecure,root_squash" fsid="2" \
op monitor interval="30s" \
op start interval="0" timeout="240s"

所以我挂载了 NFS 共享:

jorge.suarez@decp1304:~$ sudo mount -t nfs4 172.16.54.56:/proyectos/innovacion /mnt
jorge.suarez@decp1304:~$ cd /mnt
bash: cd: /mnt: Permission denied

在客户端:

$ stat /mnt
File: «/mnt»
Size: 3896          Blocks: 0          IO Block: 1048576 directorio
Device: 19h/25d Inode: 131542      Links: 2
Access: (6770/drwsrws---)  Uid: (65534/  nobody)   Gid: ( 3001/proyecto-innovacion)
Access: 2012-08-23 14:47:53.953641353 +0200
Modify: 2012-08-23 14:47:53.263610391 +0200
Change: 2012-08-23 14:47:53.263610391 +0200

jorge.suarez@decp1304:/$ getent group | grep proyecto-innovacion
gproyecto-innovacion:*:3001:diego,felix,jorge.suarez,maria
jorge.suarez@decp1304:/$ getent passwd | grep jorge.suarez
jorge.suarez:*:4004:2000:Jorge Suárez de Lis:/home/remoto/jorge.suarez:/bin/bash

在服务器上:

root@ctserv01:/# stat /export/proyectos/innovacion
  File: «.»
  Size: 3896        Blocks: 0          IO Block: 4096   directorio
Device: fb04h/64260d    Inode: 131542      Links: 2
Access: (6770/drwsrws---)  Uid: (65534/  nobody)   Gid: ( 3001/proyecto-innovacion)
Access: 2012-08-23 14:47:53.953641353 +0200
Modify: 2012-08-23 14:47:53.263610391 +0200
Change: 2012-08-23 14:47:53.263610391 +0200

root@ctserv01:/# getent group | grep proyecto-innovacion
proyecto-innovacion:*:3001:diego,felix,jorge.suarez,maria
root@ctserv01:/# getent passwd | grep jorge.suarez
jorge.suarez:*:4004:2000:Jorge Suárez de Lis:/home/remoto/jorge.suarez:/bin/bash

所以,我做错了什么,但这里似乎一切正常。客户端和服务器上的 UID/GID 匹配。

如果我将目录权限设置为 777,我可以访问、读取和写入目录,但我想将此限制为仅限某些用户使用,因此这不是一个可接受的解决方案。

【问题讨论】:

    标签: linux permissions chmod nfs


    【解决方案1】:

    确保在服务器和客户端上禁用 SELinux

    确保在导出中使用以下选项

    rw,sync,no_root_squash
    

    确保您允许正确的子网或主机名等。

    【讨论】:

    • 其实问题自己解决了。第二天早上,当我坐在办公桌上时,一切正常。 Nscd 已停止,以防万一。我正在使用 root_squash。为什么我需要 no_root_squash 选项?其他一切都很好:)
    • 我不确定您对 NFS 的具体计划。但是你是对的,你不需要 no_root_squash 因为它非常危险。如果使用 no_root_squash,远程 root 用户可以更改共享文件系统上的任何文件,并将木马应用程序留给其他用户无意执行。
    猜你喜欢
    • 1970-01-01
    • 2016-10-16
    • 1970-01-01
    • 2010-09-24
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-28
    相关资源
    最近更新 更多