更改分区表,重启之后无法开机,提示Cannot open access to console, the root account is locked.
错误原因
在分区之后,误把扩展分区写到了分区表配置文件/etc/fstab
中(应该是把逻辑分区写到分区表),导致开机无法进入系统。提示信息如下:
Cannot open access to console, the root account is locked.
See sulogin(8) man page for more details.Press Enter to continue.
根据提示按下回车后,会重复显示上面这段提示。
解决方式
把硬盘挂载到另一台Linux主机,然后修正分区表,再把硬盘装回去即可。
具体步骤:
把硬盘拆下来,装到另外一台Linux电脑。
如果没有Linux主机,可以在Windows下安装虚拟机,把硬盘挂载到虚拟机的Linux主机中。
在Linux主机中使用命令
sudo fdisk -l
查看磁盘列表:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19[root@localhost ~]# sudo fdisk -l
......
Disk /dev/sdc: 128.0 GB, 128035676160 bytes, 250069680 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 33553920 bytes
Disk label type: dos
Disk identifier: 0x5e3da3da
Device Boot Start End Blocks Id System
/dev/sdc1 8192 532479 262144 c W95 FAT32 (LBA)
/dev/sdc2 532480 31116287 15291904 83 Linux
/dev/sdc3 31129125 94042724 31456800 83 Linux
/dev/sdc4 94042725 250069679 78013477+ 5 Extended
/dev/sdc5 94108260 104593859 5242800 83 Linux
......通过容量128G可以确定刚刚插上的硬盘是
/dev/sdc
。创建一个目录,把第二个分区
/dev/sdc2/
挂载到这个目录。1
2
3
4
5
6[root@localhost ~]# mkdir /bad_linux
[root@localhost ~]# mount /dev/sdc2 /bad_linux
[root@localhost ~]# cd /bad_linux
[root@localhost ~]# ls /bad_linux
bin debug etc lib media opt root sbin srv tmp var
boot dev home lost+found mnt proc run share_disk sys usr work挂载之后就可以看得到原系统的目录。
编辑并修正分区表配置文件
etc/fstab
,并保存。取消挂载:
umount /bad_linux/
,然后拔下磁盘装回原主机即可开机。