2017-04-17 158 views
0

我设置了Ubuntu 14.04的自动安装,使用preseed。我使用虚拟机(virtualbox机器)测试了这一点。一切都安装正常,没有任何问题,但我不能完全弄清楚如何在预先选择的文件末尾使用late_command。preseed/late_command ubuntu 14.04

我第一次想做的事就是运行start.sh脚本。

我试过几次尝试:

这里是代码:

d-i preseed/late_command string cp /cdrom/start.sh /target/home/user; in-target chmod 700 /home/user/start.sh; /home/user/start.sh 

另外:

d-i preseed/late_command string chroot /target; cp -f /cdrom/start.sh /home/user; chmod 700 /home/user/start.sh; 

第三次尝试:

d-i preseed/late_command string cp -f /cdrom/start.sh /home/user; in-target chmod +x /home/user/start.sh; in-target sh start.sh 

脚本start.sh定义一个命令:

#! /bin/sh 
echo "bonjour" > /home/user/bonjour_file 

我已经试过也安装在新机后创建一个文件:

d-i preseed/late_command string in-target touch /etc/postinst_user.done 

preseed preseed/late_command string in-target touch /etc/postinst_user.done 

,但它只是挂在安装的尽头。安装功能正常,但该脚本根本没有运行,而“postinst_user.done”文件尚未创建。

新安装的文件系统是否安装在/ target下?在安装的这一点上,环境如何?什么是正确的方法来做到这一点?

谢谢你在前进,

回答

0

我前几天有同样的问题,所以我想我会与大家分享的解决方案。当预装Ubuntu安装时,

d-i preseed/late_command string yourcommand 

命令不起作用。相反,你必须使用

ubiquity ubiquity/success_command string yourcommand 

我希望这有助于