安装kali开机之后发现显示了a start job is running for dev-disk-by的报错,而且得多等1分30秒。这带来了巨大麻烦。其实解决方法很简单。
首先出现这个错误的原因是交换分区(swap分区)未成功挂载,且目前未成功挂载交换分区有两种原因,接下来我来逐一讲解这两种原因以及解决办法。
原因一:安装时发生错误或其它原因导致交换分区的uuid与系统配置不符(uuid错误):
解决方法:
打开终端,先输入指令查看交换分区的uuid:
sudo blkid
看到这个:
/dev/sdc2: UUID="2b6f9544-ef68-45ab-b829-15f1ccd3a650" TYPE="swap" PARTUUID="825c29ed-02"
最前面代表分区位置(/dev/sdc2),UUID=后面就是这个分区的uuid,TYPE=swap表明这个分区类型为交换分区,最后的可以先不用管。
说明我这个电脑的交换分区在/dev/sdc2上且UUID是2b6f9544-ef68-45ab-b829-15f1ccd3a650
这时我们输入指令打开系统交换分区相关配置文件:
sudo leafpad /etc/fstab
看到 # swap was on /dev/sdb2 during installation
UUID=363444s4-23gf-45ae-b823-a5f1c453a650 none swap sw 0 0
发现这里的uuid不一样,这就是造成启动报错的原因。把刚刚在终端里查看到的交换分区的uuid替换到这里,保存即可。
修改完如图:
重启就正常了!
原因二:系统配置中记录了多余的交换分区(uuid多余):
这种情况可能在安装在U盘中的kali比较多见。
解决办法:
还是打开终端,先输入指令查看交换分区的uuid:
sudo blkid
找到/dev/sdc2: UUID="2b6f9544-ef68-45ab-b829-15f1ccd3a650" TYPE="swap" PARTUUID="825c29ed-02"
这个地方。说明交换分区在/dev/sdc2上,uuid为2b6f9544-ef68-45ab-b829-15f1ccd3a650。
这时我们再输入指令打开系统交换分区相关配置文件:
sudo leafpad /etc/fstab
这时发现里面有2个swap分区的信息。把这个和终端查询的对照,我们的swap分区应当在/dev/sdc2上而非/dev/sdb7,而这里多出来了个不正确的/dev/sdb7,所以这时只需删除这两行多余的(删除多余不正确交换分区信息):
删除后:
再核对一下,这里swap分区的uuid是否和刚刚在终端里查到的一致,不一致的话就把终端里查到的swap分区的uuid替换过来即可。
再重启系统,修复成功!