我一直无法找到有关构建自定义 Ubuntu ISO 的明确说明。许多消息来源说我必须首先生成一个自定义版本ubuntu-keyring,我将使用它来验证 ISO 上的包。但是我发现的用于制作自定义构建的说明都没有实际工作。
示例:https : //help.ubuntu.com/community/InstallCDCustomization#Generating_a_new_ubuntu-keyring_.deb_to_sign_your_CD https://help.ubuntu.com/community/InstallCDCustomization/Scripts
到目前为止,这似乎是有效的,但我真的无法判断我这样做是否正确:
apt-get source ubuntu-keyring
cd ubuntu-keyring-*/keyrings
cat >gpg.gen <<GEN
%no-protection
Key-Type: DSA
Key-Length: 1024
Subkey-Type: ELG-E
Subkey-Length: 1024
Name-Real: Rich Remer
Name-Email: rich.remer@example.com
Expire-Date: 0
%pubring my.gpg
%commit
GEN
gpg --batch --gen-key gpg.gen
gpg --import < my.gpg 2>/dev/null
gpg --import < ubuntu-archive-keyring.gpg 2>/dev/null
my=$(gpg my.gpg | grep -A1 ^pub | grep ^\\s)
ubuntu=$(gpg ubuntu-archive-keyring.gpg | grep -A1 ^pub | grep ^\\s)
keys="$my $ubuntu"
gpg --yes --output=ubuntu-archive-keyring.gpg --export …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用自定义 ISO 自动安装 Ubuntu Server 18.04 Bionic。我找不到任何现有的解决方案似乎有效。此时我想要完成的就是自动选择语言。至少到那时我可以确认我不会陷入另一个死胡同。
对于 ISO,我从 开始ubuntu-18.04-live-server-amd64.iso,并更新了 ISO 以包含以下文件:
预置.cfg
d-i debian-installer/locale string en_US
d-i debian-installer/language string en
Run Code Online (Sandbox Code Playgroud)
配置文件
auth
bootloader
keyboard us
lang en_US
langsupport en_US
mouse
part / --onpart=sda1 --grow
rootpw --disabled
timezone --utc
Run Code Online (Sandbox Code Playgroud)
isolinux/语言
en
Run Code Online (Sandbox Code Playgroud)
isolinux/语言列表
en
Run Code Online (Sandbox Code Playgroud)
isolinux/txt.cfg
default live
label live
menu label ^Install Ubuntu Server
kernel /casper/vmlinuz
append boot=casper initrd=/casper/initrd.gz auto file=/cdrom/preseed.cfg locale=en_US languagechooser/language-name=English localechooser/supported-locales=en_US.UTF-8 countrychooser/shortlist=US priority=critical ks=cdrom:/ks.cfg ---
Run Code Online (Sandbox Code Playgroud)
isolinux/isolinux.cfg
path
include menu.cfg
prompt 0
timeout 1
Run Code Online (Sandbox Code Playgroud)
我已经通过重命名“实时”块来验证它正在启动,然后看到系统甚至无法启动。
我尝试了多种不同方法的组合。这是我能想到的最简单的测试用例,它只尝试以我能找到的每一种记录方式设置语言。