Linux下root密码丢失解决办法
由于早些时候,在配置Tomcat的和java的环境变量的时候,出现了点小问题。后来由于几个误操作,一个注销,机器卡在那了。随即,按下电源键以强制关机。但是重启以普通用户登录后
事件开端: 由于早些时候,在配置Tomcat的和java的环境变量的时候,出现了点小问题。后来由于几个误操作,一个注销,机器卡在那了。随即,按下电源键以强制关机。但是重启以普通用户登录后,发现使用 su 命令登录后,输入正确的密码却提示无法登录。提示密码不正确 我的尝试: 在光驱中装入安装光盘,重启,进入rescue模式的shell下面,由于我用的Linux版本是fedora 14的版本,因而进入shell后执行如下命令,即可获得root权限 $ chroot /mnt/sysp_w_picpath 使用vi 编辑器 ,执行如下命令 $ vi /etc/profile 在第一行或者你的root为首单词的一行中,将第二个冒号与第三个冒号之间的字符串删除,并保存退出(按下Esc,按下冒号,输入wq,回车) $ passwd root #接下来,输入两次密码,提示修改成功 重新启动后,用普通进入终端,并是有su命令,仍无法用正确密码登录,遂再查google 解决办法如下: 使用安装光盘进入shell之后,使用上面提到的方法获得root权限后,增加一个用户,并修改/etc/profile文件中以新增用户名做为开头的行中,用于标识用户组的两个参数,改成与root相同的参数(0:0)unix系统管理,赋予该帐号超级用户的权限 查看/etc下passw和shadow权限。 $ ls -l /etc/{passwd,shadow} -rw------- 1 root root 2434 03-05 19:52 /etc/passwd -rw------- 1 root root 1700 03-06 09:49 /etc/shadow 发现普通用户没有读passwd文件的权限。然后修改passwd权限: $ chmod 644 /etc/passwd 错误原因: 是/bin/su文件被取消了s位,所以解决方法是 chmod a+s /bin/su #ls -l /bin/su -rwxr-xr-x 1 root root 39948 03-05 14:38 /bin/su #chmod a+s /bin/su #ls -l /bin/su -rwsr-sr-x 1 root root 39948 03-05 14:38 /bin/su 再重新登录root,问题解决。 (编辑:成都站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |