慢启动 – “启动作业正在运行dev-disk-by ……”

我不记得问题何时开始发生,但是当我将VMWare Ubuntu映像移动到外部SSD时,我可以在任何PC上使用操作系统。 谷歌关于这个问题的链接并不多,但是那些关于fstab的链接。 例如 。

提到必须删除交换分区并再次创建它。

我可以尝试用Gparted做这个,但我主要担心的是失去我在Ubuntu中的当前设置,因为我不完全确定如果我按照线程中的建议搞乱swap会发生什么。 有人能帮忙吗?

截图

如果您获得“dev-disk-by …启动的启动作业”,然后在每次启动期间延迟90秒,请完成以下步骤:

  1. 使用软件中心安装gparted
  2. 打开gparted,看看Ubuntu目前使用的分区
  3. 使用下面的行编辑fstab文件。

    sudo -H gedit /etc/fstab 
  4. 找到您当前未使用的设备

  5. 在该行的开头插入一个#和一个空格将其注释掉。

  6. 重置,希望它适合你!

看起来这个问题是因为即使fstab有一个交换条目,实际上也没有。 我使用GParted调整分区大小并创建了一个新的Swap。 然后我将UUID复制到fstab文件中……

  1. 我现在有交换
  2. 并且启动时间会在几秒钟内降至90秒以上

在我的VM上调整主分区大小后,我遇到了同样的问题,因为gparted live迫使我删除并重新初始化我的交换。 这导致设置了一个与fstab文件不匹配的新UUID。

为了避免这个问题,你可以在/etc/fstab

  • 在主分区resize后,用新的替换交换UUID(运行sudo blkid以找到它)。

  • 或者,在主分区大小调整之前(或之后)注释掉交换分区。

我会推荐前者,因为它是设置操作系统的方式。

在我的情况下,我之前一直在使用加密交换,并且启动作业提到了/dev/mapper/cryptswap1 。 为了解决这个问题,除了William MacDonald的回答中描述的步骤之外,我还必须删除文件/etc/crypttab

使用gparted调整分区大小或删除分区时,通常需要创建新的交换分区。

然后有必要在创建交换后通过gparted激活交换(有“激活交换”命令)。

此外,您必须将新的UUID复制到/ etc / fstab中以便安装它,否则在启动时操作系统将尝试找到它但是徒劳,因为fstab文件包含指向旧交换的UUID。 Gparted提供UUID的信息,但您可以轻松地在终端中运行:

 sudo blkid 

找到它。

我在启动时遇到了同样的问题。

在我的/etc/fstab文件中,我的分区定义为/dev/sda1/dev/sda2等,但在启动时,多次出现消息“ 启动作业正在运行dev-sdx ”(“x”定义受影响的单元或分区。

为了解决这个问题,我将/dev/sdx的值更改为分区的UUID。 要查看UUID,请从终端运行lsblk -f 。 然后,复制受影响分区的UUID并将其写入/etc/fstab文件,替换/dev/sdax ,如下所示: /dev/sda1更改为UUID=xxxxxxxxxxxxxxxxxx

它对我有用,我希望这些信息很有用。

我的启动速度变慢了,因为我换了我的驱动器并且UUID不匹配。 这导致Ubuntu在引导期间进行扫描。

我经常交换驱动器。 如果您的坐骑总是在同一个地方(如我的),您可以删除UUID并放置直接路径以防止发生扫描错误…

 #       /dev/sda1 / ext4 errors=remount-ro 0 1 /dev/sda2 none swap sw 0 0 

您可以跳过等待,然后使用“ Ctrl + c ”直接进入登录屏幕,然后处理解决方案。 如果没有,有时候这种情况会持续下去。

除了检查其他答案中提到的/etc/fstab/etc/crypttab之外,还要检查来自/etc/default/grub内核参数的UUID。 有一段时间我非常困惑的是一个系统,它只有一个完美的cromulent /etc/fstab只能在GRUB配置中发现resume=… kernel参数。