systemd更新後安裝後無法啟動
首先,它多次重複此錯誤:
Lvmetad is not active yet, using direct activation during sysinit Volume group "mint-vg"not found Cannot process volume group mint-vg
比它顯示的:
Gave up waiting for root device. Common problems: - Boot args (cat /proc/cmdline) - Check rootdelay= (did the system wait long enough?) - Check root= (did the system wait for the right device?) - Missing modules (cat /proc/modules; ls /dev) ALERT! /dev/mapper/mint--vg-root does not exist. Dropping to a shell!
然後它進入 BusyBox (iniframfs)
我也嘗試了一個較舊的核心,但它提供了同樣的東西。
我記得在這發生之前安裝了一個“systemd”更新。編輯:我在這台主電腦上使用 Linux mint 18 作為實時驅動器和主驅動器,順便說一下所描述的問題。有誰知道我應該從這裡做什麼?
Edit1:
我嘗試了這個解決方案:
缺少根 VG,被放入 initramfs shell。$$ SOLVED $$ 從
LVM LVS
,現在我知道我的 vg 是“mint-vg”,我的根 LV 是“root”。我在掛載的 /boot/grub/grub.cfg 中更改了它並重新啟動了電腦。但現在它多次重複這個錯誤:
Lvmetad is not active yet, using direct activation during sysinit Volume group "mint" not found Cannot process volume group mint
比它顯示的:
Gave up waiting for root device. Common problems: - Boot args (cat /proc/cmdline) - Check rootdelay= (did the system wait long enough?) - Check root= (did the system wait for the right device?) - Missing modules (cat /proc/modules; ls /dev) ALERT! /dev/mapper/mint-vg-root does not exist. Dropping to a shell!
有誰知道如何更新 grub 和 initramfs?
Edit2:
我認為上面的新錯誤是由於“mint”和“vg”之間的附加破折號,所以我通過 KVPM GUI 應用程序將捲組名稱更改為“mint_vg”。不,我仍然得到與上面相同的錯誤,只是映射器名稱和卷組名稱已更改。
Edit3:
我現在沒有做什麼,我在活動磁碟上安裝了引導修復,解密並安裝了我的主系統,然後執行引導修復。現在系統有一個我認為更新的 grub 和一個更新的核心……我嘗試了所有三個核心,包括新核心,它們都給出了與兩者相同的結果。
Edit4:
我的根目錄的 blkid 的 uuid 在 etc/fstab 和 etc/crypttab 中是不同的。我更改了實時磁碟中的這些文件,但在重新啟動時仍然出現相同的錯誤。
Edit5:
上面的一些命名是錯誤的,將它從 /dev/disk 更改為 /dev/mapper
Edit6:
我在 Peter 的回答方面進展順利(降級 systemd!我更改了我的實時驅動器的 /etc/host 中的一些內容以匹配我的主驅動器的 /etc/host)但我嘗試了 Peter 的最後三個命令行,它給了我這些問題:
root@mint / # grub-install /dev/sda Installing for i386-pc platform. grub-install: error: cannot find a device for /boot/grub (is /dev mounted?). root@mint / # update-initramfs -u update-initramfs: Generating /boot/initrd.img-4.4.0-31-generic cat: /proc/cmdline: No such file or directory root@mint / # update-grub /usr/sbin/grub-probe: error: cannot find a device for / (is /dev mounted?). root@mint / #
我還嘗試放棄這些行並嘗試再次啟動我的主驅動器;沒用。
Edit7:
根據彼得的說法,我忘記了這條線
for d in dev proc sys; do mount -o bind /$d /mnt/root/$d; done
它給了我語法錯誤
do
。哦,好吧,據他說,我只需要把它們分解,我做了:sudo mount -o bind /dev /mnt/root/dev sudo mount -o bind /proc /mnt/root/proc sudo mount -o bind /sys /mnt/root/sys
之後,我按照他回答中的其餘步驟,直到我在Edit6中遇到問題
grub-install /dev/sda
似乎工作:Installing for i386-pc platform. Installation finished. No error reported.
update-initramfs -u
另一方面,給了我一些可能是錯誤的消息,我將在編輯後檢查這些消息:update-initramfs: Generating /boot/initrd.img-4.4.0-31-generic cryptsetup: WARNING: invalid line in /etc/crypttab for luks-8cb0dfcf-f4c8-47a2-aede-7fae0217797e - W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.
我認為最大的問題在於
update-grub
:Generating grub configuration file ... /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. Found linux image: /boot/vmlinuz-4.4.0-31-generic Found initrd image: /boot/initrd.img-4.4.0-31-generic Found linux image: /boot/vmlinuz-4.4.0-28-generic Found initrd image: /boot/initrd.img-4.4.0-28-generic Found linux image: /boot/vmlinuz-4.4.0-21-generic Found initrd image: /boot/initrd.img-4.4.0-21-generic /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. grub-probe: error: cannot find a GRUB drive for /dev/sdc1. Check your device.map. /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. /run/lvm/lvmetad.socket: connect failed: No such file or directory WARNING: Failed to connect to lvmetad. Falling back to internal scanning. done
如果有人知道上述問題的解決方案,請告訴我。
Edit8:
為了更好的衡量,這裡是
/etc/fstab
和/etc/crypttab
Fstab:
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> UUID=9434a2fe-8f66-494d-a098-2aaa8b51a811 / ext4 errors=remount-ro 0 1 # /boot was on /dev/sda1 during installation #UUID=97fff05b-8e15-4a6b-ba91-08babab89e8e /boot ext2 defaults 0 2 #/dev/mapper/mint--vg-swap_1 none swap sw 0 0 #UUID=02270177-d1a5-41bf-9b1c-f8f46fe22bb3 none swap sw 0 0 #Move /tmp to RAM tmpfs /tmp tmpfs defaults,noexec,nosuid 0 0 /dev/disk/by-uuid/89d3985d-93b9-4193-bc7e-ada76afba948 /mnt/89d3985d-93b9-4193-bc7e-ada76afba948 auto nosuid,nodev,nofail,x-gvfs-show 0 0 #UUID=97fff05b-8e15-4a6b-ba91-08babab89e8e /boot ext2 defaults 0 2 UUID=97fff05b-8e15-4a6b-ba91-08babab89e8e /boot ext2 defaults 0 2
密碼表:
sda5_crypt UUID=9434a2fe-8f66-494d-a098-2aaa8b51a811 none luks,discard #cryptswap1 UUID=02270177-d1a5-41bf-9b1c-f8f46fe22bb3 /dev/urandom swap,offset=1024,cipher=aes-xts-plain64 luks-f1e0883c-d8c1-4ec1-b5e7-8a9918ea0d5e UUID=f1e0883c-d8c1-4ec1-b5e7-8a9918ea0d5e /etc/luks-keys/luks-f1e0883c-d8c1-4ec1-b5e7-8a9918ea0d5e nofail
**Edit9:**在上面的兩個文件中都更改了,現在執行後
我
9434a2fe-8f66-494d-a098-2aaa8b51a811
只有錯誤 消息,現在將重點關注。無效消息(Edit7)消失了。8cb0dfcf-f4c8-47a2-aede-7fae0217797e``update-initramfs -u``W: mdadm: /etc/mdadm/mdadm.conf defines no arrays.
Edit10:
我放棄了,重新安裝所有東西比經歷這些廢話要容易得多。我永遠不會再安裝 4 級或 5 級更新。
因此,既然您變得絕望,這是一個臨時/骯髒的解決方案…
- 啟動應急媒體
- 將文件系統和 chroot 掛載到其中,例如。
mkdir /mnt/root mount /dev/mapper/mint--vg-root /mnt/root mount /dev/sda1 /mnt/root/boot # example if you have separate boot for d in dev proc sys; do mount -o bind /$d /mnt/root/$d; done chroot /mnt/root /bin/bash
- 然後嘗試一些修復…我建議降級 systemd 版本或其他文件(請參閱 /var/log/apt/history.log 中的升級歷史記錄)(以下是 ubuntu 16.04 上的範例…我不有薄荷糖看看)
$ apt-cache policy systemd systemd: Installed: 229-4ubuntu6 Candidate: 229-4ubuntu6 Version table: *** 229-4ubuntu6 500 500 http://de.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages 100 /var/lib/dpkg/status 229-4ubuntu4 500 500 http://de.archive.ubuntu.com/ubuntu xenial/main amd64 Packages $ apt-get install systemd=229-4ubuntu4
- 然後如果您需要更新它,例如。因為您更改的某些軟體會以不同的方式生成它,請重新生成引導內容(如果尚未修復 fstab,請確保修復它……):
grub-install /dev/sda update-initramfs -u update-grub
最後一點,你的輸出說
/dev/disk/vg-...
,我不認為這是正確的。它應該說/deg/mapper/vg-...
“映射器”,而不是“磁碟”。我會在 fstab 中解決這個問題,但我不確定在那裡放置了什麼樣的黑客……我假設你沒有手動執行它,所以我不確定這是否是一個問題。