今日、Ubuntu 15.10を実行しているラップトップで同じエラーが発生し、常に最新の状態に保たれましたが、現在のカーネルをテストするまで1か月間再起動しませんでした(つまり、最近の変更があるかもしれません)。
とにかく、私の場合、根本的な原因は実際には上記のチュートリアルに従う際のセットアップの不具合のために「欠落した」スワップパーティションであることがわかりました。これが当てはまる場合やlvm
、実際にを使用している場合は、以下の手順2をスキップできる場合があります。もちろん、システム(またはセカンダリデータ)パーティションが破損しているか見つからない場合にも、上記のエラーメッセージが表示される場合があります(手順3を参照)。
ステップ1:システムをマウントし、前述のチュートリアルに従ってパーティションをブートします
のは、あなた(EXT2)ブートパーティションでは、/ dev / sdX1、あなたの(暗号化)スワップパーティションは/ dev / sdX2、あなたの(暗号化)データパーティションは/ dev / sdX3であり、あなたが使用して後者を成功裏に復号化されてきたとしましょうcryptsetup luksOpen /dev/sdX3 data
、取り付けが続きますそれ:mkdir /tmp/data; mount /dev/mapper/data /tmp/data
。
チュートリアルのバインドマウントに注意し、システムパーティションの/ bootディレクトリからアクセスできるように/ dev / sdX1を必ずマウントしてください(これは実行する必要があるため重要update-initramfs
です)。
以下では、正常に実行されたchroot /tmp/data/@ubuntu1510
(またはマウントされたシステムパーティションが呼び出されたもの)と仮定します。
ステップ2:上記のエラーメッセージを取り除く
私はbtrfsを使用しています(前述のサブボリューム名から推測されたかもしれませんが)
- /etc/lvm/lvm.confを編集
use_lvmetad=1
して、use_lvmetad=0
- 実行する
update-initramfs -k $(uname -r) -u ; sync
さて、あなたは可能性が再起動し、エラーメッセージが消えてなければなりません。しかし、私の場合、次のエラーメッセージ[1]は上記の根本的な問題を指摘していたので、その間、...
手順3:/ etc / crypttabが正しい破損していないパーティションを指していることを確認します
まず、実行sfdisk --list /dev/sdX
して、暗号化されたスワップパーティション(私の場合、/ dev / sdX2)が(通常の)スワップパーティションとして実際に表示されないことを確認します。(私の場合のように)これが行われた場合、これは、例えば、レスキューディスクを使用した起動が、利用可能なスワップパーティションを使用し、cryptsetup関連のメタデータ(キーフレーズとUUID)を上書きすることを意味します。
次に、/ dev / disk / by-uuidを見て、暗号化されたパーティションのそれぞれのUUIDを/ etc / crypttabに含まれているものと比較します。この時点での私の推測:あなたの場合、不一致があります。
専用の暗号化されたスワップパーティションが/ dev / disk / by-uuidの下に見つからない場合、それは現在レスキューシステムで使用されているためです。その場合は、次を実行します。
- パーティションの使用を停止してください:
swapoff -a
- 再フォーマット:(
mkfs.ext2 /dev/sdX2
これは、特にGPTパーティション[2]を使用する場合に重要です。前述の不具合を解消します。sfdiskリストにタイプ「スワップ」として表示されるパーティションの原因としては、誤って使用したことがあります。mkswap /dev/sdX2
最初にパーティションを設定するとき。)
- チュートリアルに従ってパーティションを暗号化し、パスフレーズを設定します。その後、cryptsetupを使用して開き、今復号化されたパーティションを適切に再フォーマットします(次のようなものを使用
mkswap /dev/mapper/swap
)
sfdisk --list /dev/sdX
スワップパーティションをそのように識別しないようにします(その場合、最後の手順を繰り返します)
ここで、/ etc / crypttabにリストされているUUIDが、各暗号化パーティションの/ dev / disk / by-uuidの下に表示されている行にあることを再確認します。
繰り返しますが、変更を永続的にするには、update-initramfs
上記のように実行する必要があります。
満足したら、すべてがディスクに書き込まれていることを確認し、システムを再起動します(すべてを手動でアンマウントする必要はありません)。その後、問題はなくなるはずです。
[1]多分私は最初に注意を払わなかったか、最初のエラーメッセージが2番目のメッセージを「マスク」しました。つまり、(でuse_lvmetad=0
)再起動した後にのみ、「すべての物理ボリュームを読み込んでいます。これにはしばらく時間がかかる場合があります...」(複数回繰り返される)、「ALERT!/ dev / disk / by-uuid /。」 。は存在しません。」。(update-initramfs
パーティションの欠落についても不満を言ったことに注意する必要があります。)
[2]それらのタイプはコンテンツの分析から差し引かれ、最終的にフラグ/バイトで指定されないためです(そのため、たとえば、を使用してGPTファイルシステムタイプを変更する簡単な方法はありません[g]parted
)