nfs挂载服务器,解决挂载后无法chown,无法chmod,无法修改、写文件,文件只读权限Read-only file

举报
qingchenwuhou 发表于 2022/08/10 18:47:13 2022/08/10
【摘要】 nfs挂载服务器,解决挂载后无法chown,无法chmod,无法修改、写文件,文件只读权限Read-only file

当服务器A上硬盘空间不够时,可以挂载其他服务器B的硬盘到当前服务器A上,作为A的文件系统保存数据。

方法:

一、在服务器B上,启动nfs功能:

1. 执行命令:sudo -s ,切换到root,

修改/etc/exports, 输入:

要挂载的硬盘路径(如/data1/baobao)  服务器ip   (rw,sync,no_root_squash,all_squash,anonuid=1000,anongid=1000)

1000是用户id,即服务器B上,文件所属用户的id,例如Chief,可以在/etc/passwd中查看。

2. (1)重启nfs

sudo service nfs restart

或者 ubuntu 10.0 以上的版本取消了service nfs start,

service nfs-server restart (如果在用户root,不用sudo,用了反而错了)

我的理解apt-get,只有root有权限,其他用户,即使sudo apt-get也可能有问题,

(2)如果Unit nfs.service not found

sudo -s ,切换到root,安装nfs:

source /etc/profile,因为公司服务器无法连接网络,/etc/profile中包含http,https的设置,执行这条命令,通过代理访问网络。

apt-get update
apt-get install nfs-kernel-server

二、在服务器A上:

在服务器A上,新建挂载点(新建一个文件夹):

sudo  mkdir   /156_data1

sudo mount  要挂载的服务器B的ip: 要挂载的服务器B上的硬盘路径(如/data1/baobao)     服务器A上挂载点的位置(如/156_data1)

如果需要取消挂载:

sudo umount    服务器A上的具体路径(如/156_data1)

三、遇到的问题:

背景介绍:我在服务器B上,增加了一个用户id:xiaoli,然后在要挂载的路径上新建文件夹baobao/,这时候文件夹baobao的所属用户是xiaoli,然后遇到了一系列如下问题:

1. 在服务器A是的baobao/路径,

(1)无法新建文件:

touch: cannot touch 'aa': Permission denied

(2)无法更改baobao的uid和grpid:

执行sudo  chown  xiaoli:xiaoli   baobao  -R

chown: changing permissions of 'jiangbowen/': Operation not permitted

(3)无法更改baobao的文件读写权限:

执行sudo  chmod  777  baobao  -R

chmod: changing permissions of 'jiangbowen/': Operation not permitted

2. 通过用户xiaoli登录服务器B,无法更改baobao/路径的文件:

vim保存退出时,出现问题:read-only文件,无法保存。

四、分析解决:

原因:

在服务器B的/etc/exports中,输入的命令:

要挂载的硬盘路径(如/data1/baobao)  服务器ip   (rw,sync,no_root_squash,all_squash,anonuid=1000,anongid=1000)

其中,1000的用户id是Chief,表示要挂载的文件的所属用户。

如果将要挂载的文件baobao/所属用户改为xiaoli,导致:

(1)在服务器A中,文件为只读系统,无法新建、更改。

(2)在服务器B登录xiaoli,无法修改、保存baobao/的文件。

解决:

因为/etc/exports中记录的1000的所属用户是Chief

所以,将baobao文件夹改为Chief所有,执行:chown  Chief:Chief  baobao  -R

(1)在服务器B上,只有登录Chief用户,才可以修改baobao文件夹内的文件并保存。

(2)在服务器A上,不用执行chmod  777  baobao  -R,任意用户都可以在挂载点,添加、修改、保存文件。

执行chmod  777  baobao  -R也不会出现Operation not permitted的问题。

五、挂载云网盘的方法

sudo mount -t nfs -o nolock,nfsvers=3,vers=3  网盘ip   在A服务器上的文件夹名称


【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。