ubuntu中NFS服务器的流程以及注意点分享

服务器端:

👉1.1 安装nfs服务器

在Ubuntu安装nfs服务器比较简单,只需要在命令行执行下面这个命令即可:

sudo apt install nfs-kernel-server

👉1.2 配置共享文件夹设置

sudo vim /etc/exports
eg:
#设置共享目录
/tmp *(rw,sync,no_subtree_check,all_squash)

注意点:       

  • 共享的权限和uid是完全继承的,例如对于共享文件夹来说,最一般的情况是775的权限,所有用户为普通用户(例如wxx(1103)),这样映射到客户端的就是uid为1103的用户为775的权限,如果你想使用的用户不是1103,则会出现无法在共享过来的文件夹中写东西的问题。
  • root_squash:将客户端使用的是root用户时,则映射到NFS服务器的用户为NFS的匿名用户(nfsnobody)。no_root_squash:将客户端使用的是root用户时,则映射到FNS服务器的用户依然为root用户。 all_squash:默认选项,将所有访问NFS服务器的客户端的用户都映射为匿名用户,不管客户端使用的是什么用户。
  • 推荐默认选项,这样数据安全得到保证,至于如何解决无法写入文件的问题下文介绍如何解决。

👉1.3 运行nfs服务器

sudo exportfs -arv

客户端:

👉2.1 安装nfs客户端

下面的命令安装:

sudo apt install nfs-common

 👉2.2 创建挂载文件夹

sudo mkdir -p /mnt/wxx

👉2.3 挂载nfs服务器

sudo mount -t nfs -o nolock 192.168.2.183:/data/wxx /mnt/wxx

最重要的地方:此时虽然已经挂载过来了,但是问题在于无法在里面创建文件,但是我们的需求是共享数据集过来,创建文件是有时候预处理数据时需要在同一目录创建新文件的需求,

在服务器端赋予nobody权限就可以了。

setfacl -m u:nobody:rwx /data/wxx

完毕!

那么其实可以将/mnt中的数据,软链接到一个我们有权限的文件夹中,这样既可以访问原始数据集,也可以随意创建文件,例如:

在服务器上的文件夹:/data/wxx,默认权限:775,用户wxx(1008)

我们先拓展服务器上的用户权限为777,方便

共享到/mnt/wxx,权限为775,用户为1008,客户端没有uid为1008的用户。

我们使用sudo用户在/data或其他任意文件夹下创建一个文件夹(wxx),此时权限为755,root;

sudo mkdir /data/wxx

修改用户:

sudo chown wxx:wxx /data/wxx

此时权限为755,wxx(客户端上的);

这时把共享过来的文件软链接过来,这样目录的权限就可以允许创建文件,同时不会影响共享过来的源文件。

sudo ln -s /mnt/wxx/* data/wxx/

完毕!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值