自動化された「質問なし」のpreseedシステムをセットアップし、Dustin Kirklandの server preseed を例として使用しています。
次の行を使用して、自動インストールの一部として3つのパッケージをインストールします。
d-i pkgsel/include string byobu vim openssh-server
私はこれをinverseを探しています。基本的に自動インストールの一部としてパッケージを削除できます。
d-i preseed/late_command string apt-remove packagename
を使用して、インストールの完了時に不要なものをクリーンアップする必要があると考えていますが、よくわかりません
Preseed設定スクリプトでパッケージを削除または削除するオプションはありませんが、このコマンドを使用できます。
d-i preseed/late_command
This command is run just before the install finishes, but when there is
still a usable /target directory. You can chroot to /target and use it
directly, or use the apt-install and in-target commands to easily install
packages and run commands in the target system.
"in-target" means: chroot /target
d-i preseed/late_command string [in-target] foo
例:
d-i preseed/late_command string \
in-target apt-get remove packagename
スクリプトを実行することもできます:
d-i preseed/late_command string \
in-target wget http://........./postinst.sh -O /root/postinst.sh; \
in-target /bin/bash /root/postinst.sh
または、DEBファイルのグループをインストールします。
d-i preseed/late_command string \
for deb in /hd-media/*.deb; do cp $deb /target/tmp; \
chroot /target dpkg -i /tmp/$(basename $deb); done
押された例は単なる例です。考えられるすべてのd-iの組み合わせが含まれているわけではなく、より一般的なものだけが含まれています。
個人的には、インストールからパッケージを削除しようとしたことはないので、特定のd-iコマンドがあるかどうかはわかりません。 d-i preseed late_command
が機能するようです。 d-i docsをすばやく検索しても何も生成されませんでした...しかし、もちろん、コリンは知っているでしょう;-)
または、基本的なサーバーから起動し、必要なものを追加することもできます。
tasksel tasksel/first multiselect Basic Ubuntu server
...
d-i preseed/late_command string apt-install whatever else