修正する。この問題は、2017年12月のカーネルアップデートで解決されました。何が問題なのかわかりませんでした。しかし、振り返ってみると、同時に発生した他の問題が原因で、おそらくディスクUIIDを作成する際の互換性の問題が原因でした。はいまたはいいえハイフン:Linuxではハイフンが必要ですが、GRUBではそうではありません。
私は走る放物線Linuxlinux-libreカーネル4.11.9-gnu-1
と自由に導くことができる私のコンピュータに。
質問:最近システム(
pacman -Syu
)を更新しましたが、起動プロセスが失敗しました。具体的には、カーネルは物理マシンがある論理ボリュームを見つけることができないようです。私が得るエラーは次のとおりです。ERROR: device '/dev/aether/core/' not found. Skipping fsck.
この問題のトラブルシューティングや診断にご協力いただきありがとうございます。私はこれを自分で理解するにはあまりにも少なく理解し、必死です。
次に、問題についてさらに詳しく説明し、これまでに行った作業について説明します。
これは私の設定です。core
:完全に暗号化された単一のパーティションを持つSSD(Solid State Disk)があり、その上に名前がボリュームグループにある論理ボリュームがありますaether
。マイシステム/ルートディレクトリは論理ボリュームにありますcore
。 (暗号化はディスクに使用され、cryptsetup
管理は論理ボリュームに使用されますlvm
。)
(私の説明に従って)起動すると、これが起こります。
ブートロードフェーズ。
LibrebootがGRUBを正常にロードしました。
GRUBは暗号化されたパーティションを復号化するためにパスワードを要求しました。
ㅏ。パスワードを入力してください。
b。 GRUBは暗号化されたパーティションを正常に復号化します。
GRUBはカーネルイメージとinitramfsを正常にロードします。
カーネルステップ。次のようなことが発生します。
…
:: running early hook [udev]
…
:: running early hook [lvm2]
…
:: running hook [encrypt]
Waiting 10 seconds for device /dev/aether/core ...
[ 4.250559] sd 4:0:0:0: [sdb] No Caching mode page found.
[ 4.250612] sd 4:0:0:0: [sdb] Assuming drive cache: write through
ERROR: device '/dev/aether/core/' not found. Skipping fsck.
:: mounting '/dev/aether/core' on real root
mount: you must specify the filesystem type
You are now being dropped into an emergency shell.
sh: can't access tty; job control turned off
[rootfs ]#
で表される一部の情報がありません…
。完全なログは次のとおりです。ここしかし、残りは役に立たないと思います。
GRUBはLibrebootのファームウェアで構成されています。私に関連する部分は次のとおりですgrub.cfg
。
cryptomount -a
set root=lvm/aether-core
linux /boot/vmlinuz-linux-libre root=/dev/aether/core cryptdevice=/dev/disk/by-uuid/〈uuid of the encrypted partition〉:core cryptkey=rootfs:/etc/〈keyfile〉
initrd /boot/initramfs-linux-libre.img
しかし、問題はGRUB自体にあるとは思わない。
私がしたこと。私のシステムに成功しました。内部には/dev/aether/core
存在します。パスワードと鍵ファイルの両方が暗号化されたパーティションのロックを正常に解除しました。また、カーネルを4.10.*-
(起動できるバージョンの一部)にダウングレードしようとしましたが、それも役に立ちませんでした。問題は持続します。
この問題同様の問題が含まれています。違いは、一方では、正しいデバイス名がエラーメッセージで参照されていますが、とにかく見つからないことです。また、緊急シェルに入ることができます。
ここで問題は何ですか?この問題をどのように解決できますか?
答え1
私の考えでは、あなたがinitramfsに存在しないいくつかのudev命名に頼っているようです。つまり、暗号化されたパーティションは復号化されますが、/dev/aether/core には接続されません。
UUIDまたは名前でルートパーティションを指定するか、chrootに使用したデバイス名を使用することをお勧めします。
これらはすべて暗号化に加えてLVMを使用しないと仮定しています。
答え2
アップデートに記載されているように:
この問題は、2017年12月のカーネルアップデートで解決されました。何が問題なのかわかりませんでした。しかし、振り返ってみると、同時に発生した他の問題が原因で、おそらくディスクUIIDを作成する際の互換性の問題が原因でした。はいまたはいいえハイフン:Linuxではハイフンが必要ですが、GRUBではそうではありません。
しかし、これは単にカーネルのバグである可能性が高いです。
しかし同時に、同様の問題に直面した。 (またはまったく同じかもしれませんが、覚えていません)解決策は、GRUB設定で異なるUUIDを使用することです。 1つはGRUB用、もう1つはLinux用です。具体的には、ラインで
linux /boot/vmlinuz-linux-libre root=/dev/aether/core cryptdevice=/dev/disk/by-uuid/〈uuid of the encrypted partition〉:core cryptkey=rootfs:/etc/〈keyfile〉
⟨uuid of the encrypted partition⟩
読む必要がありますそしてハイフン⟨uuid of the encrypted partition⟩
中
cryptomount -u ⟨uuid of the encrypted partition⟩
読む必要がありますいいえハイフン。 (この行はcryptomount -a
元の質問の行を置き換えます。)