web-dev-qa-db-ja.com

「cryptsetup:lvm fsが見つかりましたが、lvmが構成されていません」で起動に失敗します[dual boot(2xlinux LVM、dm-crypt + luks)]

次のように、dm-crypt + luksを使用してデュアルブート(xubuntu /#!)セットアップLVMを使用しています

/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をインストールしています

私はこれをうまくセットアップして、最初にこれを機能させることができました。最近、xubuntuOSにLibreOfficeをインストールすると、無意識のうちにネットワークマネージャーをアンインストールしました。 crunchbangで起動してから、xubuntuファイルシステムにchrootすることで、再インストールを試みました。それは機能しましたが、どういうわけかクランチバンの起動プロセスを台無しにしました。

First Grubは、crunchbangOSのリストを削除しました。私はそれを更新しました、そしてそれはそれを再び見つけました。さて、crunchbangを起動しようとすると、パスフレーズを要求するまですべてが正常に処理されているようです。パスフレーズを入力するとすぐに失敗し、「cryptsetup:lvm fs found but no lvmconfigured」というメッセージが報告され、パスフレーズの再プロンプトが表示されます。

調べてみると、このエラーメッセージは/ 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が空の文字列であることを確認しているようですが、空の文字列である場合はエラーで失敗します。 cryptrootスクリプトの前半でcryptlvm = ""を設定して、$ cryptlvmへの参照を1つだけ見つけましたが、それ以外の場合は参照していません。

私はxubuntuのインストールと照合してきましたが、スクリプトの最初にcryptlvm = ""を設定するなど、これまでのところすべての関連ファイルは同等です。

そして、これは私が立ち往生しているところです。

誰かが私をここで正しい方向に向けることができますか?

1
TST

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パーティションです。

0
Speredenn