すべてのワークステーションを同じ方法で自動的に分割したいと思います。
- 最初のパーティションは起動可能な1GB ext4 /bootパーティションです。
- 2番目のパーティションは2GBのスワップパーティションです。
- 3番目のパーティションはext4 /パーティションとして残りのスペースを占めます。
- すべてのパーティションをフォーマットする必要があります。
私のpreseed.cfgにこれを追加すると、私が欲しいものを手に入れることができると思います。
d-i partman-auto/workstation_recipe string \
root :: \
1024 1023 1024 ext4 \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /boot } \
. \
2048 2047 2048 linux-swap \
$primary{ } \
method{ swap } format{ } \
. \
17408 100000000000 -1 ext4 \
$primary{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } \
.
これは以下に基づいています。このブログ。これは私が望むようになりますか?ユーザーの介入なしにこれらのディレクティブを許可するには、preseed.cfgに追加する必要がある他のものがありますか?私は以前Patmanレシピを使用したことがありません。
答え1
数日のインターネット検索の最後に見つかりました。どのpartmanに関する情報はほとんどありません。文書化もうまくいきません。私が使用する設定は次のとおりです。
# This automatically creates a standard unencrypted partitioning scheme.
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto/choose_recipe select unencrypted-install
d-i partman-auto/expert_recipe string \
unencrypted-install :: \
1024 1024 1024 ext4 \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ /boot } \
. \
2048 2048 2048 linux-swap \
$primary{ } \
method{ swap } format{ } \
. \
17408 100000000000 -1 ext4 \
$primary{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } \
.
d-i partman-md/confirm boolean true
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
プリセットにドロップするだけです。一行ずつ:
- ディスク /dev/sda の使用
- 一般インストールの実行(暗号化されていない、またはLVM)
- メッセージを表示せずに既存のLVMを削除します。
- メッセージを表示せずに既存のRAID設定を削除します。
- これがあなたが望むものであることを確認してください
- 再確認
- 以下のように「暗号化されていないインストール」レシピを選択してください。
- これは、レシピ全体を一度に1つのパーティションとして指定する単一の論理行です。質問で指定したとおりに正確に分割されたテーブルを作成します。
- 再確認
- partmanが新しいタグを作成できるようにする
- プロセスを完了してください
- 再確認
- 再確認
それはすべてです。完璧に動作します。
答え2
/dev/sda
私はこれが古い投稿であることを知っていますが、ハードコーディングが良い考えであるかどうかはわかりません。代わりに、私は次のようなものを使用します
d-i partman/early_command string \
USBDEV=$(list-devices usb-partition | sed "s/\(.*\)./\1/");\
if [ ! -z "$USBDEV" ]; then \
BOOTDEV=$(list-devices disk | grep -v "$USBDEV" | head -1);\
else \
BOOTDEV=$(list-devices disk | head -1);\
fi; \
debconf-set partman-auto/disk $BOOTDEV;\
debconf-set grub-installer/bootdev $BOOTDEV;\
lvremove --select all -ff -y; vgremove --select all -ff -y; pvremove ${BOOTDEV}* -ff -y
最初の内部ドライブがインストールメディアとして使用されていることを確認し、列挙順序が動的に変更される可能性があるため、可能なすべての外部USBドライブを除外します。
答え3
次の3行を試してください(必要に応じて変更)。
d-i partman-auto/disk string /dev/sda
d-i partman/choose_partition select finish
d-i partman/confirm boolean true