从userdel root恢复

我学校的一名学生以root身份login,犯下了这个错误

userdel -r root

我们很快就达成了他需要重新安装的共识(在这个环境下不是太大的负担)。 但是,在这种情况下,根帐户实际上已被删除,而不仅仅是禁用 – 这是甚至理论上可以恢复?

如果一切顺利,您不能像Zypher所build议的那样在单用户模式下使用sudo或启动,请将它放在live CD上,然后挂载分区并手动添加到/etc/passwd/etc/shadow

在那之后,你将不得不修复组。

作为参考, passwdshadow有这些行。 在这个shadow线中root的密码是test

passwd

 root:x:0:0:root:/root:/bin/bash 

shadow

 root:$6$YlqpNCBt$yYpknNzO8e4NLEKwXqHeJLTixssV8AxNRPKn/pr1CrsIlHSv7chPRDJ9Li3XMqsDm9zytWt8KQOd99VT0cBGF0:14824:0:99999:7::: 

理论上你应该可以使用sudo用户或单用户模式,并用--uid 0 & – --gid 0 &– --gid 0 --home /root选项重新添加用户。 我从来没有尝试过,但它应该工作。

从手册页,userdel将删除帐户和被删除用户的“home”目录。 用户的crontab也将被删除。

我的猜测是,可以重新生成根帐户和密码。 从备份中,可以恢复root crontab和/ root目录。