starrcofly 发表于 2012-12-09 00:19

通过samba共享内网NFS分区,不能写入

本帖最后由 starrcofly 于 2012-12-09 14:40 编辑

最近架构了一个集群系统,安装RHEL6.2系统,机器统一放在内网,其中一台作为管理机器连接内外网,可以连接到外网。管理机器开通了smb服务,并共享了data目录,希望通过SMB对data目录进行数据交换,但是该data目录是通过NFS共享磁盘阵列的,需要挂载:mount -t nfs ibmgr:/data /data。问题是,在win7网邻访问管理机器data目录可以浏览,可以建立文件夹,就是不能拷贝文件,如果拷贝,就会报错“一个意外错误使您无法复制该文件......”, 而网邻操作管理机器其他本地分区都没有任何问题。想请教高手到底是什么问题?data分区在linux终端下面读写正常。

smb.conf中有关内容如下:

      security = user
;       passdb backend = tdbsam
      passdb backend = smbpasswd
      smb passwd file = /etc/samba/smbpasswd
      encrypt passwords = yes

      comment = Data
      path = /data
      public = yes
      browseable = yes
      writable = yes
      printable = no
      create mode = 0664
      directory mode = 0775

starrcofly 发表于 2012-12-09 09:35

没人知道吗?自己顶一下

q1208c 发表于 2012-12-10 20:55

你确定可以在建目录, 但不能 copy文件进去么?

samba + nfs 这种情况有个问题就是"用户".

简单的说, 你的 nfs server 无法验证你的 samba user, 所以, 可能会产生禁止写入的情况.
解决的办法可以试试 setgid, 我没这么玩过, 不确定可以, 楼主可以试试 .

starrcofly 发表于 2012-12-10 21:29

是的,可以建目录,可以打开文件,甚至可以编辑修改文件之后保存都没有问题,但就是不可以拷贝文件进去。所有机器的用户是共享的相同的文件,uid, gid, 密码等所有都相同。在shell下面没有任何权限问题。

回复 3# q1208c


   

q1208c 发表于 2012-12-10 22:45

回复 4# starrcofly


说明你copy文件这个过程要带文件的"用户"或"权限"进去.

你试试着新建几个文件, 然后copy过去看看, 用户就用samba上的用户.   

starrcofly 发表于 2012-12-11 10:02

本帖最后由 starrcofly 于 2012-12-11 10:03 编辑

用win7网邻可以在NFS分区新建文件夹,也可以新建文档,也可以编辑文档并保存。但是可以复制文件夹,不可以复制这个新建的文档。

回复 5# q1208c


   

q1208c 发表于 2012-12-11 18:52

回复 6# starrcofly


你的NFS在 mount 上来的时候, 用的什么参数?

Windows的文件, 每一个都带 执行权限的. 难道你的nfs在mount的时候有noexec 么?   

starrcofly 发表于 2012-12-12 10:56

NFS server /etc/exports 文件内容:
/data   *(rw,async,no_root_squash,no_subtree_check)

NFS client (也就是管理节点和SMB服务器)命令:
mount -t nfs ibmgr:/data /data

是这些地方有问题吗?

回复 7# q1208c


   

q1208c 发表于 2012-12-12 19:06

去掉这个 no_subtree_check试试. 我不确定这个参数的具体功能.

starrcofly 发表于 2012-12-13 13:57

去掉那个也不可以,好像这个功能是对父文件夹权限是否也参与判定权限。

回复 9# q1208c


   
页: [1] 2
查看完整版本: 通过samba共享内网NFS分区,不能写入