异想天开

What's the true meaning of light, Could you tell me why

【问题】一则登录失败的问题

日期:2020-03-22 00:48:46
  
最后更新日期:2020-03-22 00:48:46
shell用一个用户远程登录linux主机,死活密码不对。但是接上显示屏幕,linux用默认用户(同一个用户)登录后,sudo执行的密码为同一个密码又是对的。使用su - 切换到该用户下面会报错:
[code lang="cpp"]
无法执行 root: 没有那个文件或目录
[/code]
搜索一番也没找到答案,于是临时创建了一个新用户,后续的操作都使用新用户。这时用strace命令跟踪一下,发现在行错误输出之前是打开了/etc/passwd文件,于是检查/etc/passwd,发现了猫腻:
dream:x:1000:1000:dream,,,:/home/dream:root
检查得知,root那列表示登录的shell,也是用户鉴权ok了后,会需要执行的shell,而这里被错误的写了root。于是修正下:
[code lang="cpp"]
usermod -s /bin/bash dream
[/code]
即维护正常读写了。