su 命令鉴定故障,这是很久之前遇到的问题,今天终于解决了
当用普通用户登录后使用 su 命令时可能会报 su:鉴定故障。
网上给出的思路是root用户可能并未设置密码,所以使用sudo passwd root 命令修改 root 的密码然后使用新密码登录
但是我是设置了root的密码的,当我输入 sudo passwd root 后会报 "当前用户未在sudoer名单中" 的错误。
最终,我的解决方案是重启虚拟机,然后使用root用户登录。然后 passwd root 修改root的密码,此时换回普通用户在使用 su 命令就正常了
解决方案二:使普通用户具有root权限
1.su root #切换到root用户
2.chmod 777 /etc/sudoers #将sudoers改为可写入状态
3.vim /etc/sudoers #在root ALL=(ALL) ALL下面添加一条fuqin ALL=(ALL) NOPASSWD:ALL,保存修改并退出
4.chmod 440 /etc/sudoers #将文件的权限改回来
5.此时fuqin用户已经可以使用sudo命令了
补充:/etc/sudoers文件简述
Linux默认是没有将用户添加到sudoers列表中的,需要root手动将账户添加到sudoers列表中,才能让普通账户执行sudo命令。
root账户键入visudo即可进入sudo配置,这个命令要比vim /etc/sudoers要好很多,因为使用visudo进行sudo配置,将会得到很多提示
工作过程具体是: 当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限,当确认该用户拥有t可执行sudo的权限后,于是让让用户输入用户自己的密码确认。 当若密码输入成功,则开始执行sudo后续的命令
【运维】Centos7解决su命令鉴定故障
于 2022-05-08 21:15:55 首次发布