×
嵌入式 > 嵌入式开发 > 详情

【E问E答】Linux系统管理员忘记了root的口令怎么办?

发布时间:2020-06-19 发布时间:
|

当使用自己的Unix或Linux系统时,自己是系统管理员,但是如果自己忘记了root的口令,该怎么办呢?凌阳教育的老师根据自己的教学经验做以下的分享:

下面给出几种曲型Linux系统中的解决方法,适用于大部分的现代版的

一. 如果您有sudo的权限,那么您可以使用下述命令快速地改变root口令:

二. 如果没有sudo权限,或者如果您系统被配置成不允许sudo改变root口令,那么您将发现改变root口令需要一些更精巧的措施。

通常的策略就是通过一个Linux光盘启动系统,接管计算机的管理。然后挂载硬盘上的主(根)文件系统,一旦完成这一步,就可以使用该挂载点作为文件系统的根,然后使用标准的passwd程序更改root口令。

从Live CD引导

按组合键,进入命令行。

改变到超级用户:

启动分区表编辑器:

如果系统没有parted,则需要使用另一种分区编辑器,例如fdisk、cfdisk或

在parted中,显示主硬盘的分区信息:

记下包含Linux系统的硬盘的设备名称,例如/dev/hda或

记下主Linux分区号,例如:分区号

如果不能确定哪个是根分区,可以查看ext3、ext2 reiserfs或xfs类型的文件系统。如果这样的分区不止一个,则记下所有的号码。

停止parted程序。

现在应该会返回到shell提示。

为硬盘上的文件系统创建一个挂载点(在这个例子中,称之为harley):

通过使用由parted程序所获得的设备名和分区号,挂载硬盘上的根文件系统。例如,如果设备名是/dev/hda,分区号是2,则使用的命令为:

如果在第7步中,发现不止一个可能的分区,则选择其中一个分区。如果选择的分区号不正确,再尝试另一个。

确认已经挂载了根分区。为测试这一点,可以查看影子文件(/etc /shadow)是否在这个分区中,影子文件中包含有所需要的口令:

如果没有口令文件,则挂载的不是根分区。返回到第(10)步,试着挂载另一个分区。继续这两步,直至成功挂载了根分区。

改变硬盘系统上的root口令。

有许多方法可以完成这一步。最简单的方法就是使用新挂载点作为文件系统的根运行passwd命令。这只需一条简单命令:

这个chroot(change root,改变佷)命令意味着:"临时将文件树的根改变为/mnt/harley,然后执行命令

因为已经位于超级用户模式,所以使用passwd命令将改变root口令。而且因为文件系统的根已经临时改变为/mntharley,所以使用的口令文件是位于硬盘上的口令文件(/mnt/harley/etc /shadow)。

通过这种方式,就能够改变硬盘上系统的root口令。

移除CD,从硬盘重新启动系统,测试并确保口令已经被正确改变。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
电子EDA技术的基础知识