Ubuntu

如何在 Ubuntu Server 13.10 的 preseed.cfg 中包含其他軟體

  • January 29, 2021

我正在做 Ubuntu Server (Saucy) 13.10 的全自動安裝,還想包含自定義的附加軟體,preseed.cfg 的格式是:

d-i debian-installer/locale string en_US
d-i debian-installer/language string en
d-i debian-installer/country string NL
d-i debian-installer/locale string en_GB.UTF-8
d-i console-setup/ask_detect boolean false
d-i keyboard-configuration/modelcode string pc105
d-i keyboard-configuration/layoutcode string us
d-i netcfg/choose_interface select auto
d-i netcfg/dhcp_failed note
d-i netcfg/dhcp_options select Configure network manually
d-i netcfg/get_nameservers string 192.168.1.1
d-i netcfg/get_ipaddress string 192.168.1.42
d-i netcfg/get_netmask string 255.255.255.0
d-i netcfg/get_gateway string 192.168.1.1
d-i netcfg/confirm_static boolean true
d-i netcfg/get_hostname string demo
d-i netcfg/get_domain string www.demo.com
d-i netcfg/wireless_wep string
d-i mirror/country string manual
d-i mirror/http/hostname string archive.ubuntu.com
d-i mirror/http/directory string /ubuntu
d-i mirror/http/proxy string
d-i mirror/http/mirror select CC.archive.ubuntu.com
d-i clock-setup/utc boolean true
d-i time/zone string US/Eastern
d-i clock-setup/ntp boolean true
d-i clock-setup/ntp-server string ntp.example.com
d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string regular
d-i partman-auto/choose_recipe select atomic
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-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
d-i passwd/user-fullname string demo
d-i passwd/username string demo
d-i passwd/user-password password demo123
d-i passwd/user-password-again password demo123
d-i user-setup/allow-password-weak boolean true
d-i user-setup/encrypt-home boolean false
tasksel tasksel/first multiselect ubuntu-desktop
d-i pkgsel/include string openssh-server build-essential juju ruby virtualbox kvm git openstack
d-i pkgsel/update-policy select none
d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true
d-i finish-install/reboot_in_progress note

我嘗試通過在 %post 末尾寫入自定義軟體 juju、openstack 來包含它們,通過這種方式:

%post
juju
git
openstack
ruby

但是我遇到了解析錯誤,現在我嘗試將這些軟體包含在 pkgsel/include 中,但又遇到了錯誤,有什麼辦法可以解決這個問題嗎?

而不是使用 pkgsel/include 我使用了 late 命令,如果 Ubuntu 儲存庫中列出了這些軟體包,pkgsel 將起作用,但是由於 Ubuntu 官方 repo 中未包含所需的軟體包,pkgsel 將不起作用,因此最好使用 late 命令。

“%post”用於執行安裝後命令。您想使用“%packages”而不是“%post”:

%packages
juju
git
openstack
ruby

引用自:https://serverfault.com/questions/560150