我在 Google 上搜索并看到了类似 Cubic 的东西,但我认为它不适合我的问题。
我想要做的是(假设正在说话的 .iso 文件是 Ubuntu):
During the installation, it does this:
> echo I'm now installed, ip is $(ip route get 1.1.1.1) > /root/installed_$(HOSTNAME)
> curl ... (with curl for example, I want to upload this file to another server which is the master server, so that I can tell master server it is now installed)
这是一个非常简单的文件,我想看看我是否可以将这样的内容附加到文件中.iso
,并且每当我使用这个 iso 安装时,我的主服务器就会更新并且知道现在添加了新服务器(当主服务器中的文件更新时,我会在主服务器中执行一些操作)。
是否可以使用 bash shell 向 .iso 文件添加自定义文件?
答案1
您可以按照自己喜欢的任何方式修改 ISO,甚至可以添加crontab
一个条目以在启动后运行一个脚本来执行此一次性操作。
挂载 ISO 映像:
sudo mkdir /mnt/image
sudo mount /path/to/your.iso /mnt/image -o loop
复制内容:
mkdir /tmp/newiso
cp -r /mnt/image /tmp/newiso
/tmp/newiso
按照您喜欢的任何方式修改文件。
在以下位置创建新的 ISO 映像/tmp
:
cd /tmp/newiso
sudo mkisofs -o /tmp/new.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -V "new iso name"
若要在启动后运行任务,请使用crontab
如下条目:
@reboot [path to shell script]
请参阅此文章以了解更多信息: 启动时 Crontab:在启动时运行 Cron 作业