Linux下如何修改root密码以及找回root密码

哈,这事儿我熟啊。
上周有个客户服务器卡死,root密码忘了,把我急得够呛。

你想啊,Linux下改root密码其实有两种情况,一种是你有别的sudo用户能操作,一种是彻底卡死进不去系统了。

正常情况下,你想改root密码,最直接的就是用你那个有sudo权限的用户去改。
比如你有个叫admin的用户,这个用户sudo权限没问题。

你就用这个admin用户登录,打开终端,敲命令sudo passwd root。
系统会让你输入两次新密码,搞完就行。
很简单。

但是! 要是服务器彻底卡死,连这个admin用户都进不去,那你咋办?这时候就得用点“非常规操作”了。

你得在启动电脑的时候,赶紧按住某个键(不同电脑是F2 、F1 2 、DEL,得看你主板是啥牌子)进入BIOS或者GRUB启动菜单。
具体是哪个键,你得查查你那台电脑的说明书,或者开机的时候看屏幕提示。

进入GRUB菜单后,你会看到几个启动项,通常是带条形码的那个。
用方向键选中你要启动的系统,然后按e键,进入编辑模式。

这时候你要找一行以linux或者linux1 6 开头的长长的一行。
这行后面有很多参数,找个ro(read-only,只读)的参数,把它改成rw init=/bin/bash。
rw就是读写模式,init=/bin/bash的意思是启动一个root的bash Shell,而不是默认的init进程。

改完这一行,按Ctrl+X或者F1 0启动。

好了,系统应该会启动到一个黑屏的root bash shell里,你输入用户名root,直接回车就行,因为它知道你是root。

这时候你就神了,想改哪个用户的密码都行。
输入passwd root,然后按提示操作。
改完密码后,输入exec /sbin/init或者reboot重启系统。

但是注意! 这种操作风险挺大的。
万一你改错了启动项,或者中途操作失误,搞不好系统就彻底蓝屏了。
所以,最好在操作前备份数据! 这点我踩过坑,删了重要文件哭都没地儿哭。

而且啊,安全性! 你想想,你这么操作,周围要是有人偷看,或者网络被监听,你的新密码就等于公开透明了。
所以,尽量在安全的环境下操作,或者改完密码后赶紧修改系统日志的访问权限什么的。

还有啊,不同Linux发行版(比如Ubuntu、CentOS、Debian这些),启动参数可能有点细微差别。
比如Debian系的,可能需要在linux后面加ro single或者rw single init=/bin/bash。
所以,最好查查你那具体用的是啥系统,官方文档里一般都有详细步骤。

总之,能正常用sudo改就别折腾启动项了,安全又省事。
要是真卡死只能用启动项方法,就当是最后一次机会,谨慎操作,备份做好,密码改了赶紧锁好环境。

linux系统root密码忘了怎么办 三种方法快速找回root密码

嗯...Linux...root密码忘了...咋办啊...
我记得...有几种方法...
一个...叫单用户模式...得在启动的时候...哎...GRUB那个菜单...
就是开机的时候...那个黑屏...或者白屏...快速按e键...
然后找那一行...是不是kernel...然后后面加个1 ...空格加1 ...
然后b键...启动...就进去了...单用户模式...
进去之后...就好办了...用passwd root...就改密码...
另一个...就是LiveCD...或者USB...得提前弄一个...
就是找你那个发行版的...比如Ubuntu...下载个镜像...
然后做成启动盘...U盘啥的...
用那个U盘启动...进到一个...叫Live的环境...
然后找你的根分区...是不是/dev/sda1 ...或者别的...
用mount挂载一下...然后chroot进去...
chroot...对...切换到那个根文件系统...
进去之后...还是passwd root...改密码...
改完...退出chroot...然后重启...
还有一个...就是救援模式...
好像...不是所有系统都有...但有些有...
就是开机的时候...进不去...提示进入救援模式...
进去了之后...也能改密码...挂载文件系统...
也是用passwd root...
然后重启...
对...就是这几种...但要注意...
得看你用的是什么系统...版本...
操作可能不太一样...
而且...这事儿...得小心点...
万一搞错了...系统可能更坏了...所以...最好...有备份...

linux如何利用root用户修改其他用户的密码,在不知道其他用户的密码的情况下如何修改它们的面貌

说白了,设置Linux用户密码其实就三步走。
不过这过程里藏着几个关键点。

先说最重要的,命令行输入"passwdsam"这招挺聪明的,用行话说叫命令替换,但实际操作时去年我们跑那个项目差点搞砸,因为某些系统版本会直接把"passwd"当普通命令执行,那时候必须用绝对路径才行。
另外一点得盯紧屏幕提示,比如在大概3 000量级的集群里操作,如果用户sam早就存在,系统会直接报错说"密码已经设置",这个点很多人没注意。

我一开始也以为输入命令就行,后来发现不对,得先用"su
sam"切换到目标用户身份,不然改的密码还是root的。
等等,还有个事,新密码得符合复杂度要求,比如必须包含数字和特殊符号,否则提示"密码太简单"直接失败。

总之,记得先用su切换用户身份,再输入passwd sam,最后耐心填新密码就行。
说实话挺坑的,但掌握这细节就能省不少麻烦。