我正在尝试使用 preseed.cfg 进行无人值守的 ubuntu 安装。我按照以下说明进行操作http://searchitchannel.techtarget.com/feature/Performing-an-automated-Ubuntu-install-using-preseeding
在启动选项中我将参数传递为
url=http://path/to/localhost/preseed.cfg locale=en_US
console-setup/ask_detect=false console-setup/layoutcode=us
hostname=unassigned-hostname domain=unassigned-domain
initrd=/install/initrd.gz quiet --
但这会返回一个错误/install/initrd.gz is not found
。
因此我将参数改为:
url=http://path/to/localhost/preseed.cfg initrd=/casper/initrd.gz
这提示我一个错误初始化内存文件系统错误。因此我将参数更新为:
url=http://path/to/localhost/preseed.cfg boot=casper initrd=/casper/initrd.gz
这会在语言选择时停止自动安装。这里出了什么问题?
答案1
仅适用debian-installer
于服务器和备用 CD。如您所见安装CD定制
该参考资料相当老旧了,大约是 2010 年,从屏幕截图可以清楚看出它使用了服务器映像。据我所知,Ubuntu 不再发布替代映像。
Live 使用ubiquity
安装程序,签入无处不在的自动化了解可用选项。
可用的预置密钥
Ubiquity 使用 Ubuntu 版本的 debian-installer 使用的组件子集,因此针对这些组件询问相同的问题。但是,还提供了其他一些问题。这些如下:
ubiquity/summary:预先设定为空以避免出现摘要页面。
ubiquity/reboot:安装程序完成后自动重启。务必将“noprompt”添加到内核命令行,以便跳过“请取出光盘,关闭托盘(如果有)并按 ENTER 继续”usplash 提示。
ubiquity/failure_command:指定安装失败时要运行的命令。
ubiquity/success_command:类似于 preseed/late_command。指定安装成功完成时要运行的命令(在 /target 之外运行,但调用命令时会挂载 /target)。
此外,实现普遍自动化安装还需要一些其他组件:
languagechooser/language-name:在可用语言中选择,例如英语
countrychooser/shortlist:选择一个国家、领土或地区,例如美国
localechooser/supported-locales:选择其他要支持的语言环境,例如 en_US.UTF-8
以下安装程序组件的预置密钥将不会在 Ubiquity 中使用,通常是因为它们不符合 Ubiquity 的操作模式:
netcfg LVM and RAID partitioning base-installer pkgsel/tasksel finish-install
您可以在 Live CD 中使用 preseed/early_command;它将由 initramfs 中的“casper”(在启动时设置 Live 环境的组件)运行。请注意,如果您想影响 Live 环境中的文件,这意味着您必须在其文件名前加上 /root 前缀。