以debian/ubuntu 为例说明一下,忘记用户密码后,如何重置密码。
重置密码
重启系统进入grub界面后,按 "e" 键,进入命令行编辑界面,修改下面命令
linux /vmlinuz-5.4.0-49-generic root=UUID=77ca771d-b2e6-4da0-ad5c-65cce7e43606 ro quiet splash ....... $vt_handoff
修改为:
linux /vmlinuz-5.4.0-49-generic root=UUID=77ca771d-b2e6-4da0-ad5c-65cce7e43606 rw init=/bin/bash
主要是增加 "rw init=/bin/bash",这样系统启动后,会进入到一个最小系统,而且是以root帐号登陆的, passwd 修改 root 的密码即可。
root@(none):/# passwd
错误处理
上面这一段是一个标准流程,网上的介绍最多,但是,实际运行 passwd的话,有可能报一些错误,诸如“/var/cache/cracklib”下面的一些文件找不到。
/var/cache/cracklib/cracklib_dict.pwi not found
/var/cache/cracklib/cracklib_dict.hwm not found
这个时候需要先运行 update-cracklib,再运行 passwd 就可以了。
root@(none):/# update-cracklib
root 密码修改成功后,重启进入系统, sudo su , passwd [user] 修改用户帐号密码即可。
修改加密策略
新版本的系统,默认需要设置较复杂的密码,如果想设置简单的密码,需要配置,如:
vim /etc/pam.d/common-password, 增加或修改:
password [success=1 default=ignore] pam_unix.so minlen=1 sha512
man pam_unix ,可以得到更多的信息。