![「cryptsetup:lvm fsが見つかりましたがlvmが設定されていません」のため、起動が失敗します。 [デュアルブート(2xlinux LVM、dm-crypt+luks)]](https://linux33.com/image/57774/%E3%80%8Ccryptsetup%EF%BC%9Alvm%20fs%E3%81%8C%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%97%E3%81%9F%E3%81%8Clvm%E3%81%8C%E8%A8%AD%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%80%8D%E3%81%AE%E3%81%9F%E3%82%81%E3%80%81%E8%B5%B7%E5%8B%95%E3%81%8C%E5%A4%B1%E6%95%97%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%20%5B%E3%83%87%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%96%E3%83%BC%E3%83%88%EF%BC%882xlinux%20LVM%E3%80%81dm-crypt%2Bluks%EF%BC%89%5D.png)
以下のように、dm-crypt + lukを使用してLVMを使用してデュアルブート(xubuntu /#!)を設定しました。
/dev/sda1 = /boot (xubuntu)
/dev/sda2 = /boot (#!)
/dev/sda3 = encrypted LVM
/dev/mapper/volgroup-xroot = / (xubuntu)
/dev/mapper/volgroup-yroot = / (#!)
/dev/mapper/volgroup-home = /home (/home/xubuntu & /home/crunchbang)
/dev/mapper/volgroup-swap = swap
MBRのxubuntuからのみGrubをインストールしました。
私はそれをうまく設定し、最初に働くことができました。最近、xubuntuオペレーティングシステムにLibre Officeをインストール中に、誤ってネットワーク管理者が削除されました。クランチバンで起動し、xubuntuファイルシステムでrootを指定して再インストールしてみました。うまくいきますが、どういうわけかクランチバンの起動プロセスを混乱させます。
まず、Grubはクランチバンのオペレーティングシステムのリストを削除しました。更新してまた見つけましたね。今クランチバンを始めようとすると、パスワードを要求するまですべてがうまく処理されるようです。パスワードを入力すると、「cryptsetup:lvm fsが見つかりましたが、lvmが設定されていません」というメッセージですばやく失敗し、パスワードの再入力を求められます。
少し調査した結果、このエラーメッセージは/usr/share/initramfs-tools/scripts/local-top/cryptrootスクリプトで発生し、次の場所で発生することがわかりました。
if [ "$FSTYPE" = "LVM_member" ] || [ "$FSTYPE" = "LVM2_member" ]; then
if [ -z "$cryptlvm" ]; then
message "cryptsetup: lvm fs found but no lvm configured"
return 1
$ FSTYPEはdmnameタイプにすぎず、復号化されたlvmコンテナは$ cryptrootに設定され、次に$ crypttargetに設定されます。このエラーに成功したようです。
スクリプトが$ cryptlvmが空の文字列であることを確認している場合、私のエラーは失敗するようです。 $ cryptlvmへの参照のみが見つかりました。ここで cryptlvm="" は cryptroot スクリプトで以前に設定されていましたが、他に何もありません。
私はxubuntuのインストールを確認しましたが、これまでスクリプトの先頭にcryptlvm = ""設定を含むすべての関連ファイルが同じです。
これが私が付いているところです。
誰でもここで正しい方向を教えてもらえますか?
答え1
GRUB_CMDLINE_LINUX_DEFAULT
/etc/default/grub
変数を次のように設定すると、このメッセージが消える可能性があります。crypt_opts=<whatever#1>,lvm=<whatever#2>
上記のスクリプト/usr/share
は、cryptlvm変数を。
追加の参照のために、私のコンテンツには以下がGRUB_CMDLINE_LINUX_DEFAULT
含まれます。
crypt_opts=target=system,source=/dev/sda5,lvm=/dev/mapper/system
ここのシステムは暗号化されたlvmパーティションです。