首页 > 系统服务 > 详细

Linux切换用户时报错/.bash_profile: Permission denied,命令行(终端提示符)出现-bash-4.2$

时间:2020-07-23 21:56:02      阅读:443      评论:0      收藏:0      [点我收藏+]

利用su - 切换用户时,发现有一个用户切时出现如下情况

[root@localhost ~]# su - aaa
su: warning: cannot change directory to /home/aaa: Permission denied
-bash: /home/aaa/.bash_profile: Permission denied
-bash-4.2$ 

技术分享图片


观察报错信息发现是对家目录/home/aaa没有权限,于是查看/home目录下的文件信息

技术分享图片


发现用户aaa的家目录文件的所属者和所属组有异常,一般情况下用户家目录这两者都是用户自己,如上图中的用户alex,userA和userB

对aaa/目录的所属者进行进行修改,修改之后再进行用户切换无报错

技术分享图片


问题虽然解决了,但是我记得系统里并无2133这个账户,而且我也没有建立过这个用户。于是我便把终端操作的历史记录导出,查找这个不存在用户“2133”是否真的曾经存在

技术分享图片

通过查找,发现是之前在创建用户aaa时指定了其的uid为2133,但是随后在588行删除了这个用户

技术分享图片

但其实userdel aaa这条命令只会删除用户,但不会删除它的家目录,只有用userdel -r aaa 才会连同用户和家目录一起删除。虽然在589行执行了userdel -r aaa命令,但aaa用户已经不存在了,所以这命令是无效的。

在590行又创建了aaa用户,由于同名家目录已经存在了,所以在创建aaa用户时并不会重新创建或者覆盖/home/aaa目录,因此该目录的所属者仍是“上一代“的aaa(id 2133)用户

Linux切换用户时报错/.bash_profile: Permission denied,命令行(终端提示符)出现-bash-4.2$

原文:https://www.cnblogs.com/cradle-q0518/p/13367203.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!