You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何阻止Azure Linux VM临时磁盘自动格式化并挂载?

阻止Azure Linux VM临时磁盘自动格式化与挂载的方法

Azure Linux VM的临时磁盘自动格式化、挂载行为由Azure Linux代理(waagent)或cloud-init控制,不同发行版依赖组件略有差异,以下是通用解决方案:

方法一:修改waagent配置

  • 编辑代理配置文件:sudo vi /etc/waagent.conf
  • 找到对应配置项并修改为以下值:
    • ResourceDisk.Format=n:禁用自动格式化临时磁盘
    • ResourceDisk.MountPoint=:清空挂载点配置,取消自动挂载
    • ResourceDisk.EnableSwap=n:无需交换分区时一并关闭该功能
  • 保存配置后重启服务:sudo systemctl restart waagent

方法二:通过cloud-init覆盖配置(适用于Ubuntu、CentOS 8+等支持cloud-init的发行版)

  • 创建自定义cloud-init配置文件,比如/etc/cloud/cloud.cfg.d/99-azure-custom.cfg,添加内容:
    disk_setup:
      ephemeral0:
        table_type: 'gpt'
        layout: true
        overwrite: false
    fs_setup:
      - device: ephemeral0.1
        filesystem: 'none'
    mount:
      - [ephemeral0, none]
    
  • 该配置会告知cloud-init不对临时磁盘执行格式化和挂载操作。

方法三:创建VM时提前配置

  • Azure CLI方式:创建VM时通过--custom-data参数指定上述cloud-init配置文件:
    az vm create \
      --resource-group myResourceGroup \
      --name myVM \
      --image UbuntuLTS \
      --size D2ds_v4 \
      --custom-data ./custom-cloud-config.cfg
    
  • Azure Portal方式:创建VM时在「高级」选项卡的「自定义数据」中填入上述cloud-init配置内容。

后续自行处理磁盘

完成以上配置后,临时磁盘会保持未格式化状态,你可按以下步骤自行操作:

  • 查看磁盘设备名:lsblk(通常为/dev/sdb或/dev/nvme1n1,依实例类型而定)
  • 按需分区格式化:例如sudo mkfs.xfs /dev/nvme1n1(替换为你需要的文件系统)
  • 创建自定义挂载点:sudo mkdir /mnt/my-temp-disk
  • 写入fstab实现永久挂载:echo "/dev/nvme1n1 /mnt/my-temp-disk xfs defaults 0 0" | sudo tee -a /etc/fstab
  • 立即挂载磁盘:sudo mount /mnt/my-temp-disk

内容的提问来源于stack exchange,提问作者BeeOnRope

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 06:35:57