linux忘记root密码修改方法,linux忘记密码重置root密码命令
温馨提示:只做笔记,详细知识点不展示,doc比我说的好;
解决方案1。将系统分区映像挂载到Linux系统,前提是支持ext3。
2.sudo losetup -f -P emmc.bin映射文件系统
3.sudo fdisk -l检查循环设备,/dev/loop0p1-p4分区是emmc.bin的分区
4.当前目录mkdir guazai
5.sudo mount /dev/loop0p1 guazai #注意/dev/loop0p1是具体要挂的分区,分区的大小信息可以通过step 3得到。
6.下来到cd挂在目录,它将是整个系统的镜像文件。请注意,您应该在这里使用自己系统的root权限修改和读取/etc/shadow文件。
7 .影子文件字段格式是:
登录名:加密密码:上次修改时间:最小时间间隔:最大时间间隔:警告时间:非活动时间:过期时间:标志
注意:我们只修改加密的密码。
加密密码字段的格式为:
对应于$ID$SALT$ENCRYPTED的字段被解释为:
类型id哈希长度MD 5 $ 122 NQ DDP-256 $ 543 NQ DDP-512 $ 686字符例如:
$ 6 $ hmpftkgb $ wqzuqmqybjwsxfrotvzpo . 1 gikh 6 hixjgr 4 qpv . k26je . 3 me.(为便于说明,长度有所缩减)此密码由SHA-512生成,拆分字符为$ sign
8.修改和生成加密密码:
在linux下的终端运行以下命令:
python2 -c 导入random,string,cryptrandomsalt=“”。join(random . sample(string . ascii _ letters,8));Printcrypt.crypt (123456 , $6 $% s $% random salt)注意:123456是密码;默认情况下会生成SHA-512密码;
生成的密码类似于:
$ 6 $ hmpftkgb $ wqzuqmqybjwsxfrotvzpo . 1 gikh 6 hixjgr 4 qpv . k26je . 3 me.................也就是密码修改完成——下来同步镜像,卸载。
10.首先退出挂在目录下;回到guazai的父目录,执行sudo umount /dev/loop0p1 #。对应的/dev/loop0p1就是你挂的目录。如果不确定,可以执行mount命令进行确认。
11.卸载完成后,检查成功执行的mount没有对应的/dev/loop0p1,成功;
12.最后卸载映像sudo losetup -D D。
13.检查卸载是否成功。sudo fdisk -l检查如果没有回路设备,修改成功,然后可以写。
注1。检查修改是否成功?答:同样,首先losetup映射文件系统,然后挂载loop设备,进入目录打印相应的文件,最后必须卸载,否则文件会丢失;