「/boot」を含む論理ボリューム「/」を移動するとブートエラーが発生しますか?

「/boot」を含む論理ボリューム「/」を移動するとブートエラーが発生しますか?

私はそれを自分のパーティションに置かずにLVMの下に/置くStephen Kittの提案に従いました。/home/

論理ボリューム(デフォルト)/bootにある場合、論理ボリュームを移動すると起動は失敗しますか?/

この言葉が正しいと思われる場合/ファイルシステムがパーティションにあり、ファイルシステムに/bootあります。/。ディスクにインストールされているLubuntuで再起動するには、grubを再インストールする必要があるようです。

これに関して、LVMがどのような利点を提供しているのか疑問に思います。

ありがとうございます。

答え1

特定のタスクを実行すると起動は失敗しますか?起動が失敗する原因をどのように定義できますか?以前に始めることもできますが、後でそうではありません。それでは、以前に始めることができたことに満足していますが、後で始めることができないことも満足していますか?私たちはあなたが何をした後に何が起こったのかを知る必要がありますが、それは質問には与えられません。

したがって、いくつかのタスクを実行した後、次のファイルシステムとパーティションスキームがあるとします(最終結果に影響を与える複雑なストレージスキーム設定がある可能性があるため、これは前提にすぎません)。

/dev/sda唯一の物理ディスク(GPTパーティション)、/dev/sda1ESP、/dev/sda2LVM PV、2つのLV(1つはfor /、もう1つはfor)を含む唯一のVGとして使用されます/home。システムに他のファイルシステムがありません。私はあなたのリンクをクリックしません。それはあなたの責任です。

これで、ESPにインストールされたブートローダとしてgrubを使用します。 ESPは触れないため、UEFIファームウェアは正常にグラブを実行し、完全に実行されます。ただし、Linuxを起動するには、grubはカーネルとinitramfsを見つけ、カーネル(実際にはinitramfsですが、とにかくカーネルパラメータであるため重要ではありません)にファイルシステムを含むデバイスを知らせる必要があります/

grubはカーネルとinitramfsを見つけることができる場所をどのように知っていますか?明らかに、すべてのファイルシステムを検索することはできないので、これを教えてください。どのように?これがgrub.cfg重要になるところです。 grubにカー​​ネルとinitramfsを見つける方法と、カーネルに渡すパラメータを教えてください。

では、あなたの鍵はどこにありますか?オペレーティングシステムをインストールすると、カーネルとinitramfsは常に/boot新しいオペレーティングシステムにインストールされます。しかし、どのファイルシステムですか?これは、インストール中にこれらのファイルシステムをマウントした方法によって異なります。したがって、/別のファイルシステムを設定していないため、「ファイルシステム」にあります/boot

「ファイルシステム」はどこにありますか/? 2つのLVのうちの1つにあります。ファイルシステムを含むデバイスはどこにありますか/?同じLVでなければなりません。

それでは確認してみましょうgrub.cfg。正しく作成されないと、オペレーティングシステムは起動しません。ただし、正しく作成された場合、grubはinitramfsカーネルを正しく検索し、正しいパラメータをカーネルに渡します。

grub.cfgああ、提供されていないので確認できないことを忘れました。では…また、どうしたの?いいえ、 grub のマニュアルによると、grub.cfg前に述べたように、最終結果に影響を与える可能性のある複雑な構成があまりにもサポートされているので、ここで停止します。あまりにも多くの仮定をすると、私たちの答えが実際の生活とあまりにも離れてしまうだけです。

答え2

これは、ディレクトリをディレクトリに含まれているコンテンツに移動できないためです。

$ tree .
.
└── one
    └── two

2 directories, 0 files
$ mv ./one ./one/two/
mv: rename ./one to ./one/two/one: Invalid argument

/他の場所はそれ自体が含まれているため、他の場所に移動することはできません。これはクラインボトルではなくファイルシステムです。

関連情報