【NFS故障】共享的文件无法执行

1、问题描述


这里我将文件传入nfs的共享目录中,随即要运行目录中的脚本从而去导入对应的镜像,

但是这里它提示ctr执行这个文件表示权限拒绝。

2、排查


(1)提权

既然文件权限不允许执行,我猜测是不是文件的所有者和当前用户不一致导致的无法运行,于是我为了试验,对文件增加了777权限,想要试验下。

额......但是失败了,也不允许我去对文件权限进行操作。

(2)检查nfs配置文件

我看了下exports文件哈,有如下内容:


/nfsdata/ 10.0.0.0/24(rw)


这里表示在这个网段的机器中可以对此目录中的文件进行读写操作

这边我问了下ai,然后得出了下面的结论

结论

nfs为了安全,默认情况下会开启一个名为root_squash的机制,表示如果你是使用root用户访问的文件情况下,nfs会将你的root用户匿名为一个匿名用户,通常是nfsnobodynobody,然后你的系统中这两个用户也没有对应的权限,所以你便无法进行操作。

------

而相对来说,还有一个名为no_root_squash的配置,意思与上面相反,如果是root用户,则不会将root转换为匿名用户,而是继续使用root用户的权限去操作和执行命令,而用此方法可以解决以上问题。

【注意】建议临时使用下,长期使用可能存在安全隐患。

3、如何解决


需要在exports配置文件中,增加no_root_squash配置

/nfsdata/ 10.0.0.0/24(rw,no_root_squash)

然后对nfs服务进行重启后试验

systemctl restart nfs

这时的问题就解决了。

相关推荐
ltl1 天前
大多数「无锁」代码其实不是无锁的
linux
ltl1 天前
Linux 内核的内存屏障:一个让我调了三天的 bug
linux
Dontla1 天前
预置known_hosts如何防止中间人攻击(MITM)?(服务器公钥、服务器私钥)Runner、DNS污染、BGP劫持、同网络ARP欺骗、SSH握手
服务器·网络·ssh
Lonely 净土1 天前
Rocky Linux 安装教程
linux·运维·服务器
光影少年1 天前
RN的Fabric 渲染流程
运维·前端·javascript·react native·react.js·fabric
A 糖醋排骨1 天前
grafana loki alloy轻量级日志采集
运维·grafana·loki
林间码客1 天前
从DevOps到DevSecOps:构建现代软件交付的基石与护城河
大数据·运维·devsecops·devops
李白你好1 天前
Windows 离线 Linux 提权辅助查询工具
linux
Lust Dusk1 天前
记一次Linux应急响应题目解析
linux·运维·服务器·网络·安全·网络安全
ShineWinsu1 天前
对于Linux:五种IO模型以及非阻塞IO的详细解析
linux·c++·面试·io·阻塞·非阻塞·fcntl