如何修改 Linux ISO(例如 Ubuntu)并向其中添加我的自定义 bash

如何修改 Linux ISO(例如 Ubuntu)并向其中添加我的自定义 bash

我在 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 一个条目以在启动后运行一个脚本来执行此一次性操作。

来自文章 如何创建自定义 Linux ISO 映像?

挂载 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 作业

相关内容