Grub2 を使用して暗号化されたルート パーティションのデバイス マッパー名を構成する方法は?

Grub2 を使用して暗号化されたルート パーティションのデバイス マッパー名を構成する方法は?

system暗号化されたルート パーティションをデバイス マッパー名 にマッピングし、最終的に の下に表示されるようにしたいと思います/dev/mapper/system。私のオペレーティング システムは Fedora 24 Workstation Linux で、UEFI 対応のコンピューターで Grub2 を使用して起動します。

rd.luks.uuid=luks-144255e7-7a9a-4957-ad6e-d4a2a71c861aFedora はインストール時にカーネル パラメータを使用して設定しているため、カーネルはすでに暗号化されたルート パーティションを UUID によって正しく識別しています。

上記のようにカーネル パラメータrd.luks.uuidを設定すると、暗号化されたルート パーティションはカーネル パラメータ値と同じデバイス マッパー名でマップされ、 の下に表示されます/dev/mapper/luks-144255e7-7a9a-4957-ad6e-d4a2a71c861a

のマニュアルページを読んだ後、カーネル パラメータは、単独で設定されるもの以外の別のデバイス マッパー名を選択するのに適切であるとsystemd-cryptsetup-generator思います。rd.luks.namerd.luks.uuid

残念ながら、Grub2 はrd.luks.name=luks-144255e7-7a9a-4957-ad6e-d4a2a71c861a=systemnor rd.luks.name=144255e7-7a9a-4957-ad6e-d4a2a71c861a=system(プレフィックスなしluks-) を考慮していないようです。

暗号化されたルート パーティションを の下にマップする方法をご存知ですか/dev/mapper/system?

答え1

からman systemd-cryptsetup-generator:

rd.luks.name=は初期 RAM ディスク (initrd) によってのみ尊重されますが、luks.name=はメイン システムと initrd の両方によって尊重されます。

したがって、luks.name=144255e7-7a9a-4957-ad6e-d4a2a71c861a=systemの代わりにを使用すると、起動後もrd.luks.name=...名前が残る可能性があります。system

rd.もしそれがうまくいかないなら(そのドキュメントの行が何を言おうとしているのか、あるいは何か違いがあるのか​​どうかは正確には分かりません)、名前を/etc/crypttab再度、以下よりman systemd-cryptsetup-generator

/etc/crypttab に同じ UUID のエントリが含まれている場合、そこに指定されている名前、キーファイル、およびオプションが使用されます。それ以外の場合、デバイスの名前は " luks-UUID" になります。

例えば、

system UUID=144255e7-7a9a-4957-ad6e-d4a2a71c861a

パーティションが開かれる前にファイルが確実に表示されるようにするため、/etc/crypttab.initramfsファイルに名前を付ける必要がある場合があります。/etc/crypttab

これらの変更を行うときは、必ずroot=カーネル パラメータを から に/dev/mapper/luks-144255e7-7a9a-4957-ad6e-d4a2a71c861a変更してください/dev/mapper/system

関連情報