侧边栏壁纸
博主头像
与晚风述往事博主等级

万般皆下品,唯有读书高。

  • 累计撰写 149 篇文章
  • 累计创建 29 个标签
  • 累计收到 7 条评论

目 录CONTENT

文章目录

su: failed to execute /bin/bash: Permission denied

与晚风述往事
2021-12-09 / 0 评论 / 0 点赞 / 124 阅读 / 893 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2021-12-09,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

介绍

今天公司的一位同事突然找到我,说使用su oracle命令切换用户报错了,就让我协助看看。
我这边不信邪又测试了下,的确看到报错提示权限不足。
image.png

从报错上来看,是切换用户时权限不足导致的。虽然问题原因找到了,但还没找到是哪个文件引起的,接下来就开始找是哪个文件造成的问题。
首先,我根据控制台的打印信息,初步判断是/bin/bash引起的,然后查询/bin/bash的权限。

[root@localhost ~]# ll /bin/bash

执行结果如下图所示:
image.png
从图中看到,/bin/bash文件的权限正常,root用户具有读、写和执行的权限。
看到这里我就有点疑惑了,权限既然都正确,为啥还会提示没有权限执行呢?
既然跟我的猜想不符合,那么就需要百度一下获取答案了。
查了百度后,发现引起该问题的原因还是挺多的。有些人是因为close_wait线程太多了,有些又的确是/bin/bash权限不对(和我初步猜想一致)。这些文章写的很好,但无法解决我遇到的问题。继续搜索。。。。。。经过漫长的搜索,终于发现了造成我问题的原因,先附上原文地址:

https://help.aliyun.com/knowledge_detail/142701.html

从该文章中,发现引起该问题的原因是根目录的权限出现了问题。
本来我是不相信的,因为一般情况下,不会有人去动这里的权限的,改动这里造成的影响太大了。
后来我按文章中的命令查询根目录的权限,发现罪魁祸首的确是这里。这,这,这,这怎么敢的啊,根目录都敢动?这不是嫌自己运维生涯太长了嘛!不过吐槽归吐槽,解决还是要解决的。

排查根目录权限

[root@localhost ~]# stat /

执行结果如下:
image.png

解决

知道是根目录权限不对后,我们直接给根目录增加权限即可。根目录的默认权限是(0555/dr-xr-xr-x)。

[root@localhost ~]# chmod 555 /

验证

执行完授权后,我们再次查看根目录的权限。

[root@localhost ~]# stat /

image.png

从图中看到权限已经正确,再次测试切换用户。

[root@localhost ~]# su - oracle

image.png
执行成功,该问题成功解决。

0

评论区