在制作安装盘的时候,有这么一种需求:软件模块A不能集成进去、但是有时候没有有不行。那么怎么办呢? 因为只有在特定的条件下才需要软件模块A,那么我们可以在安装盘启动过程中检查这个条件是否满足,如果满足再临时安装进来就可以了。 具体来讲,debian类的安装盘都有一个ubiquity.service的启动服务(我说的是使用了systemd的debian)。在这个配置文件里面加上一行: ExecStartPre=你想要执行的命令“ ,然后实现你的命令文件。OK了。
为什么必须是ubiquity.service,不能用其他的service吗? 原因就是:我们不希望影响安装到硬盘的内容。这个ubiquity.service是安装程序、用完了会被卸载,我们搭个便车,不用自己动手了。