gpt4 book ai didi

bash - Packer 和安装后脚本

转载 作者:行者123 更新时间:2023-11-29 09:26:09 25 4
gpt4 key购买 nike

我开始使用 Packer,我有一个问题。是否有添加 bash 脚本的解决方案,该脚本将在从镜像部署 VM 后自动启动且仅启动一次?

最佳答案

在linux虚拟机镜像的/etc/rc.local中添加如下代码:

####Marker_start####
sed -i '/####Marker_start####/,/####Marker_end####/d' /etc/rc.local
#Your custom code here
####Marker_end####

解释:

  1. rc.local 脚本在每次系统启动后执行。因此,在此处添加代码将使其在启动后执行。
  2. 第一次执行脚本时使用 sed 删除自定义代码。因此,代码只执行一次。

其他方法:

创建一个包含您的自定义代码的脚本并将以下代码附加到它。

 chmod 644 "$0"

& 创建符号链接(symbolic link)

ln -s /path/to/your-script.sh /etc/rc5.d/S99my-custom-script.sh

(假设您的默认运行级别是 5。根据您的 VM 发行版的需要更改它 - 例如,ubuntu 在 /etc/rc2.d 上有它)
说明:
名为 /etc/rc5.d/S* 的脚本在进入运行级别 5 时自动执行,参数为 start。在第一次执行时,将脚本设置为不可执行,以便它只执行一次。

关于bash - Packer 和安装后脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23291394/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com