我正在尝试基于 Ubuntu 12.10 创建自己的 iso 映像,并且有几个问题。
1) 如何使用 preseed 添加用户?我尝试这样做,但仍然必须在图形安装中输入密码:
d-i passwd/user-fullname string kiosk
d-i passwd/username string kiosk
d-i passwd/user-password password 123
d-i passwd/user-password-again password 123
d-i passwd/user-uid string 2020
d-i user-setup/allow-password-weak boolean true
2)是否可以更改一组屏幕截图和图形安装程序中显示的文本?
3)我该如何处理预置文件中的 late_command(安装后我想配置系统、安装 deb 包等)我尝试这样做:
d-i preseed/late_command string mkdir /target/install/;
cp -R /cdrom/extra/* /target/install/;
chroot /target chmod +x /install/postinstall.sh;
chroot /target bash /install/postinstall.sh
谢谢
答案1
1)这是我的 vagrant 预种子盒所含的内容:
# create our default admin user (the others will be managed with puppet)
d-i passwd/user-fullname string Null user
d-i passwd/username string null
d-i passwd/user-password password not-very-secure
d-i passwd/user-password-again password not-very-secure
d-i passwd/user-uid string 10000
d-i user-setup/encrypt-home boolean false
d-i passwd/user-default-groups string wheel adm sudo
3)以下是我做的一些事情late_command
:
# really, really dist-upgrade
d-i preseed/late_command string in-target apt-get update ; \
in-target apt-get -y dist-upgrade ; \
in-target apt-get -y autoremove ; \
in-target apt-get autoclean ; \
in-target apt-get clean
或者您可以在与预置文件相同的主机上托管一个复杂的脚本,然后:
d-i preseed/late_command string \
in-target wget http://10.0.1.23/d-i/wheezy/scripts/late_script ;\
in-target sh late_script ;\
in-target rm late_script ;
答案2
对于 ubuntu 12.10 late_command 字符串如下所示
ubiquity ubiquity/success_command \
string mkdir /target/install/; \
cp -R /cdrom/extra/* /target/install/; \
chroot /target chmod +x /install/postinstall.sh; \
chroot /target bash /install/postinstall.sh;
该脚本复制闪存驱动器上额外目录中包含的所有文件,然后执行 postinstall.sh 脚本
为了创建普通用户帐户,我使用了此部分
d-i passwd/user-fullname string kiosk
d-i passwd/username string kiosk
d-i passwd/user-password password pass
d-i passwd/user-password-again password pass
d-i passwd/user-uid string 2020
d-i user-setup/allow-password-weak boolean true
d-i netcfg/get_hostname string kiosk
d-i passwd/auto-login boolean true
d-i user-setup/encrypt-home boolean false