dipartmanレシピ文字列を使用しますか?

dipartmanレシピ文字列を使用しますか?

すべてのワークステーションを同じ方法で自動的に分割したいと思います。

  • 最初のパーティションは起動可能な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

関連情報