私は、Debianのインストールを自動化し、カスタマイズされたレシピを提供することで、パーティショニングの実行方法を制御したいと思います。
luksやlvmを使用しない場合は簡単ですが、インストーラにcryptとカスタムレシピの両方を使用させることはできません。 luksパーティションを使用して正常にインストールする唯一の方法は、partman-autoでインストールを完了させることです。d-i partman-auto/method string crypto
私のレシピを無視するようです。
### Partitioning
d-i partman-auto/method string regular
d-i partman-auto/choose_recipe select crypto-recipe
d-i partman-auto/expert_recipe_file string /crypto-recipe
d-i partman-crypto/passphrase string super-secret
d-i partman-crypto/passphrase-again string super-secret
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i partman-basicfilesystems/no_swap boolean false
crypto-recipe ::
538 538 1075 fat32
$iflabel{ gpt }
$reusemethod{ }
method{ efi }
format{ } .
512 1024 768 ext4
method{ format }
format{ }
use_filesystem{ }
filesystem{ ext4 }
mountpoint{ /boot } .
2000 2000 -1 crypt
$iflabel{ gpt }
method{ lvm }
vg_name{ vg0 } .
1000 1000 -1 lvmpart
$lvmok{ }
in_vg{ vg0 }
lv_name{ root }
method{ format }
format{ }
use_filesystem{ }
filesystem{ ext4 }
label{ doomar }
mountpoint{ / }
.
インストーラに独自の物理ディスクを使用させたいのですが、これを達成するために何を指定する必要があるのかわかりません。試す必要がある他のオプションがありますか?
d-i partman-auto/disk string /dev/vda
d-i partman-auto/method string crypto
また、パーセントで暗号化パーティションを指定してみました。
100% 100% 100% crypt
$iflabel{ gpt }
method{ lvm }
vg_name{ vg0 } .
他の変更が多すぎて一覧表示しようとしましたが、失われました。文書が少し不明瞭だったようです。プロビジョニングファイルを使用するよりも優れた選択肢はありますか?あまり良く見えなくて全部使ってしまったたくさん私は彼らが望む方法で動作するように多くの時間を費やしましたが、非常に限られているようです。
さまざまなオプションの試行中に発生したいくつかの問題は次のとおりです。
- ディスクを選択しないでください
- インストールシステムの障害
- 存在にもかかわらず
/boot
持続/boot/efi
- 多くの例が古くなっています(UEFI / GPTではなくBIOS)。
- レシピに従わずにpartman-autoに戻ります。
- システムのインストール場所の横に空のパーティション(おそらく暗号化パーティション)を作成します。
誰かが実際の例を提供し、方法がレシピでパーティショニングを指定する必要があるかどうかをregular
明確crypto
にすることができれば、少なくとも開始点になります。
修正する
仮想ディスクのサイズを増やしましたが、今では問題が暗号化コンテナ内のlvm作成であることが明らかになりました。以前は、暗号化パーティションがディスクの残りのスペースを占有していた場合、システムに残りのスペースがありませんでした。
私が試したことは次のとおりです。
crypto-recipe ::
538 538 538 fat32
$iflabel{ gpt }
$reusemethod{ }
method{ efi }
format{ } .
512 1024 512 ext4
method{ format }
format{ }
use_filesystem{ }
filesystem{ ext4 }
mountpoint{ /boot } .
2000 2000 -1 crypt
$iflabel{ gpt }
method{ crypto }
vg_name{ vg0 } .
2000 2000 -1 lvmpart
$lvmok{ }
in_vg{ vg0 }
lv_name{ root }
method{ format }
format{ }
use_filesystem{ }
filesystem{ ext4 }
label{ doomar }
mountpoint{ / }
.
今は明らかになった
vda
├─vda1 vfat FAT32 390B-57B3 505.1M 1% /boot/efi
├─vda2 ext4 1.0 48ab2ad8-2744-4fe0-b8ed-dbb9766e0cae 369.7M 11% /boot
├─vda3
└─vda4 ext4 1.0 doomar 5ada0c1d-4048-4ff6-ac23-4936dcc16710 1.1G 41% /
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 5369MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp
2 538MB 1050MB 512MB ext4
3 1050MB 3049MB 2000MB
4 3049MB 5368MB 2318MB ext4
vda3
luks cryptパーティションでなければならず、vda4
存在してはいけませんが、内部にlvmが必要です。vda3
答え1
暗号化を設定するためにpartman autoに依存しているので、部分的な答えです。これはレシピの柔軟性を制限するようです。
特に、私がインポートしたパーティション$defaultignore{ }
に追加する必要があります。\boot
entek.org.ukブログ
d-i partman-auto-lvm/guided_size string max
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto/method string crypto
d-i partman-auto/choose_recipe select autocrypt-recipe
d-i partman-auto/expert_recipe_file string /autocrypt-recipe
d-i partman-crypto/passphrase string super-secret
d-i partman-crypto/passphrase-again string super-secret
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i partman-basicfilesystems/no_swap boolean false
autocrypt-recipe ::
256 256 256 fat32
$iflabel{ gpt }
$reusemethod{ }
method{ efi }
format{ } .
256 256 256 ext4
$defaultignore{ }
method{ format }
format{ }
use_filesystem{ }
filesystem{ ext4 }
mountpoint{ /boot } .
2000 2000 -1 ext4
$lvmok{ }
lv_name{ root }
method{ format }
format{ }
use_filesystem{ }
filesystem{ ext4 }
label{ doomar }
mountpoint{ / }
.
結果
vda
├─vda1 vfat FAT32 E692-113B 233.4M 2% /boot/efi
├─vda2 ext4 1.0 89d9e5c4-5cba-4b08-bd0f-96c9332a3e07 154M 24% /boot
└─vda3 crypto_LUKS 2 9d4aa1bd-0706-4ba0-ac48-850ac7499355
└─vda3_crypt LVM2_member LVM2 001 0EDidF-GVe0-odQX-gPQ9-VXED-Pf7l-snWt8D
└─debian--vm0--vg-root ext4 1.0 doomar 099e743c-0c62-4bb8-8f25-71e8c96ce8d9 3.3G 19% /
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 5369MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 256MB 255MB fat32 EFI System Partition boot, esp
2 256MB 512MB 256MB ext4
3 512MB 5368MB 4856MB
regular
partman-autoに頼るのではなく、そのアプローチを使用し、レシピでcryptoパーティションとlvmパーティションをより明示的に指定できるかどうか疑問に思います。