我有一个完全配置的实例和一个用于自动缩放组的图像。从此映像自动扩展新实例时,它会调用 cloud-init。cloud-init 更改主机名并中断 fstab。
我想阻止 cloud-init 在实例启动时启动。
smo*_*ser 16
在使用 systemd 并具有当前 (17.0+) 版本的 cloud-init 的系统中,上游文档描述了使用以下任一方法禁用 cloud-init 的过程:
touch /etc/cloud/cloud-init.disabledcloud-init=disabled到内核命令行。对于旧版本的 cloud-init (0.7.X),以下信息可能有用。
您可以通过以下两种方式之一禁用 cloud-init 对 /etc/fstab 的修改。
a.) 通过提供覆盖默认“挂载”条目并禁用它们的云配置。
mounts:
- [ephemeral0, null]
- [swap, null]
Run Code Online (Sandbox Code Playgroud)
b.) 通过禁用mounts模块运行。这是通过从 'cloud_config_modules' 列表中删除它来完成的,您将在/etc/cloud/cloud.cfg.
关于主机名,您也可以控制它。如果您只想阻止 cloud-init 修改 /etc/hostname,则:
preserve_hostname: true
Run Code Online (Sandbox Code Playgroud)
你可能也很感兴趣manage_etc_hosts。
这两个都记录在doc/examples/cloud-config.txt(并安装在/usr/share/doc/cloud-init/examples)
不过,我很想知道 cloud-init 如何破坏 /etc/fstab。请使用ubuntu-bug cloud-init从您的实例内部提交错误,并描述您认为错误的操作。
在 Ubuntu 20.04 上,以下步骤可以帮助我禁用和删除 cloud-init:
运行此命令以禁用:
sudo touch /etc/cloud/cloud-init.disabled
Run Code Online (Sandbox Code Playgroud)
重新启动机器。
运行以下命令来删除:
sudo apt-get purge cloud-init
sudo rm -rf /etc/cloud/; sudo rm -rf /var/lib/cloud/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22243 次 |
| 最近记录: |