lvmetad 正在阻止启动过程

lvmetad 正在阻止启动过程

我在启动时遇到问题:我看到了消息lvmetad is not active yet, using direct activation during sysinit。该消息完全阻止了我的登录过程。我无法切换到非图形登录屏幕(它们都只显示闪烁的光标)或执行除使用CTRL- ALT-重新启动之外的任何其他操作DEL

如果我等待很长时间(超过 10 分钟),我会收到以下消息:

resume: Could not stat the resume file /dev/disk/by-uuid/a62a5e02...
Please type in the full path name to try again or press ENTER to boot the system:

如果我按下ENTER,启动将恢复,并且我的登录屏幕将在一秒钟内出现 - 这似乎只适用于较旧的内核<=4.4.0-43,对于较新的内核,ENTER 不起作用,而且我也无法使用键盘输入任何其他内容。

10 分钟休息后的消息resume: ...让我想到这可能与挂起到 RAM 后的陈旧磁盘映像有关,但我不知道如何解决这个问题。

我没有看到任何错误dmesg,与 LVM 相关的一切看起来都很好。

有一段时间,我能够使用内核 4.4.0-43 无延迟地启动,但是今天(在 apt-get 内核升级之后)甚至这个也停止了工作。

我发现了这两个关于该问题的帖子,但我不愿意尝试更改 grub 视频设置,因为它们(应该)与之无关,lvmetad而且用户报告说这种解决方法本身也存在一系列问题。

Lvmetad 尚未激活

lvmetad 尚未激活;在 sysinit 期间使用直接激活

有人能告诉我这个吗?即使在过去,启动也不需要 10 分钟,而现在 10 分钟的超时似乎有点过分了…… ;)

[编辑]这是请求的输出:

BLKIDD:

/dev/sda1: UUID="2EC7-7121" TYPE="vfat" PARTUUID="77533e31-4b1a-40da-9e49-ecebfb701229"
/dev/sda2: UUID="b206ab4e-2119-4d90-ab77-5088177faa08" TYPE="ext2" PARTUUID="a5ddb725-1822-4847-8fd3-c1566b83f740"
/dev/sda3: UUID="uhcPym-YPqH-XGTC-Y0YB-ynxd-K4iK-b0viGE" TYPE="LVM2_member" PARTUUID="455fe5cf-64a0-4ef5-b3e7-19e5f86b3ee4"
/dev/mapper/kubuntu--vg-root: UUID="cba585cc-e15b-419c-b055-f1fe2a56c7da" TYPE="ext4"

猫/ etc / fstab:

/dev/mapper/kubuntu--vg-root /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda2 during installation
UUID=b206ab4e-2119-4d90-ab77-5088177faa08 /boot           ext2    defaults        0       2
# /boot/efi was on /dev/sda1 during installation
UUID=2EC7-7121  /boot/efi       vfat    umask=0077      0       1
/dev/mapper/kubuntu--vg-swap_1 none            swap    sw              0       0

swapon 没有产生任何输出,但使用选项 -a:

swapon: stat of /dev/mapper/kubuntu--vg-swap_1 failed: No such file or directory

[编辑]在我的 grub.cfg 中,我发现对 lvmid 的引用与任何 blkid 都不对应 - 这可能是问题吗?

set root='lvmid/nvk03P-ihq7-kTsM-LvZ4-DzQu-iOag-4BOz7I/kHYiDJ-9NSq-Wlkc-0YXH-HiX2-SVZ7-MPSFnp'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint='lvmid/nvk03P-ihq7-kTsM-LvZ4-DzQu-iOag-4BOz7I/kHYiDJ-9NSq-Wlkc-0YXH-HiX2-SVZ7-MPSFnp'  cba585    cc-e15b-419c-b055-f1fe2a56c7da

此外,在 grub.cfg 中有一些对 root 和 UUID 的引用 - UUID 对应于 /boot (sda2),--set root b2...但下面两行是root=/dev/mapper/kubuntu--vg-root不同的设备:

[---snip---]
if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  b206ab4e-2119-4d90-ab77-5088177faa08
    else
      search --no-floppy --fs-uuid --set=root b206ab4e-2119-4d90-ab77-5088177faa08
    fi
    linux   /vmlinuz-4.4.0-57-generic.efi.signed root=/dev/mapper/kubuntu--vg-root ro  quiet splash $vt_handoff
[---snip---]

[编辑] 注释 fstab 中的交换行对启动没有帮助,并且系统启动后,lvdisplay 会显示根和交换分区:

lvm> lvdisplay
  --- Logical volume ---
  LV Path                /dev/kubuntu-vg/root
  LV Name                root
  VG Name                kubuntu-vg
  LV UUID                kHYiDJ-9NSq-Wlkc-0YXH-HiX2-SVZ7-MPSFnp
  LV Write Access        read/write
  LV Creation host, time kubuntu, 2016-06-07 12:33:08 +0200
  LV Status              available
  # open                 1
  LV Size                432.86 GiB
  Current LE             110811
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Path                /dev/kubuntu-vg/swap_1
  LV Name                swap_1
  VG Name                kubuntu-vg
  LV UUID                YiuKj2-FVgn-ufGg-lvZ5-IML5-w3hH-ZeHrrH
  LV Write Access        read/write
  LV Creation host, time kubuntu, 2016-06-07 12:33:08 +0200
  LV Status              available
  # open                 0
  LV     Size                31.93 GiB
  Current LE             8173
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

[编辑] 根据下面 heynnema 的建议,我删除并重新添加了 swap。确实出现了问题:在删除并重新创建 swap 之前,/proc/swaps 是空的,并且 free 显示总数为 0。现在它可以正确安装,并且 free 和 /proc/swaps 都显示预期的输出。不幸的是,启动延迟的初始问题仍然存在。完成此步骤后,我必须更新 iniramfs ( update-initramfs -k all -c) - 现在它可以正常工作了。呼。感谢 heynnema 的大力支持!

答案1

lvmetad is not active yet, using direct activation during sysinit是正常消息,并不会导致您的启动问题。

有人删除了您的交换分区。

/etc/fstab有这一行:

/dev/mapper/kubuntu--vg-swap_1 none            swap    sw              0       0

寻找一个它永远找不到的交换分区。sudo blkidswapon命令证实了这一点。

短期修复,注释掉上面的行fstab

在终端...

gksudo gedit /etc/fstab

改变

/dev/mapper/kubuntu--vg-swap_1 none            swap    sw              0       0

对此

#/dev/mapper/kubuntu--vg-swap_1 none            swap    sw              0       0

这将允许您在正常时间范围内启动,但系统将没有定义的交换空间。

长期修复,安装 LVM GUI 工具来管理您的 LVM 磁盘:

在终端...

sudo apt-get update
sudo apt-get install system-config-lvm

转到 Unity 仪表板并输入lvm。使用此 GUI 工具重新制作 LVM 交换分区。然后返回并取消注释短期修复中的行。

相关内容