我正在做 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”:
您可以在 preseed 配置脚本中使用类似以下内容。