修改/重置普通用户密码
passwd
#用于当前操作用户自行修改密码。注意:修改密码时,需要输入当前操作用户的当前密码。root 用户也可使用此命令修改自行修改密码。passwd <用户名>
#此命令只能由 root 用户执行,当前用户是 root时,可更改任意其它用户的密码
修改/重置 root 用户密码
重置root密码
如果 root 用户密码忘记,需要重置 root 密码的话。可按如下步骤操作(前提,有条可以操作物理机开机重启):
第一种方法 :
- 开机,随意按一个键,进入开机项选择状态,否则 5 秒钟后系统默认选择第一项自动启动。按方向键选中第一项,按 e 进入编辑状态。事实上,选择其它项也可以,只不过,第一项是默认开机项,一般是最新的内核启动

- 进入编辑模式后。注意,显示的内容有可能并不是全部的内容,可以按方向键上下来查看更多内容

- 按方向键下,一直到内容的尾部。找到 linux16 这一行,将 ro 更改成
rw init=/sysroot/bin/sh
,按 ctrl + x 启动。注意:修改属临时修改,仅本次生效,重启电脑,又会恢复到原来的内容

- 启动后,进入单用户纯文本命令模式,注意:命令提示符是
:/#
- 使用指令
chroot /sysroot
切换根目录。经测试,此句之前无须执行挂载指令mount ‐o remount,rw /sysroot
- 使用指令
passwd root
,来重置 root 用户的密码。由于本机安装了中文语言包,而当前文本命令模式不支持中文,所以修改密码时的提示,全部显示成了方块。如果未安装中文语言包的话,提示应该是英文的。不过操作很简单,就是输入两次密码,正确输入即可。
注意1:不要输入过于简单的密码。注意2:更改LANG=en_US.UTF-8
,依然是中文提示,且中文仍然会显示成方块。 - 使用
touch /.autorelabel
命令,会在 / 目录下创建一个 .autorelabel 文件,有这个文件存在,系统在重启时就会对整个文件系统进行 relabeling。 - 使用命令 exit 退出 chroot 状态,使用命令 reboot 重启,使用 root 新密码登录。如果使用 reboot 不能重启,可以加入 -f 参数,
reboot ‐f
强制重启。

- 重启后,进入以下状态

- 等待一会,系统会再次重启。正常进入系统。
第二种方法 :
- 同样是开机时,按 e 进入编辑状态。将 ro 更改为 rw ,将 LANG=zh_CN.UTF-8 更改为 LANG=en_US.UTF-8,并在末尾追加空格,init=/bin/sh,注意:一定是在末尾添加。

- 按 Ctrl + x 启动。启动后如下

执行如下指令,修改密码。
1
2
3passwd root
touch /.autorelabel #注意文件名称
exec /sbin/init #重启即可注意:此种方式,修改 LANG=en_US.UTF-8,是可以显示英文的。注意:本方法命令行前缀是
sh‐4.2#

- 启动后进入以下状态

第三种方法:
- 按 e 编辑,添加
rd.break

- 启动后,如下状态:注意命令前缀
switch_root
,这是固定不变(不因不同的机器而变)的
- 依次输入以下指令,与第一种方法相同。注意指令前缀的变化
1
2
3
4
5
6mount ‐o remount,rw /sysroot #如果不加这一句,是没有效果的。但第一种方法经测试,无须加此句。
chroot /sysroot
passwd root
touch /.autorelabel
exit
reboot #重启

- 两次重启后就会生效。注意:CentOS 6.x 版本和 7.x 版本,重置 root 密码的方法是不一样的。具体方法可查询网络。重置 root 用户密码是 Redhat RHCE 认证考试必须先完成的第一步操作,很明显,意味着这是最简单的必备技能。第二种方法相对简单一些。