分享一下自用的dd方法,用ai帮我排了下版,感谢 @bin456789 大佬的脚本

利用cloud-init实现高效DD:轻量Linux系统部署指南

为什么基于cloud-init DD?

OVH/DMIT/HostHatch/Onidel等常用厂商采用cloud-init作为标准初始化方案,同时近期越来越多的VPS服务商从SolusVM迁移到VirtFusion(VF也使用cloud-init来初始化VPS)(包括绿云,Kuroit等等)。这种变革让我们可以直接DD官方云镜像,获得更精简的系统环境。

云镜像核心优势

以Debian Cloud镜像为例:

  • 采用专用cloud内核:移除物理硬件驱动,系统更轻量
  • 启动速度提升:优化初始化流程
  • 原生集成cloud-init:完美适配预装环境
  • 同时支持bios/uefi启动

如何检测VPS是否支持cloud-init?

步骤1:检查小容量设备

lsblk

观察输出中是否存在 数百KB到几MB 的小型设备(通常标记为 srNsdN

步骤2:挂载并查看是否有配置文件

mkdir -p /mnt/sr1# 根据lsblk结果选择设备(示例以sr1为例)mount /dev/sr1 /mnt/sr1ls /mnt/sr1

✅ 成功标志:出现以下任意文件组合
meta-data | network-config | user-data | vendor-data


案例

案例1:DMIT T1

NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTSsr0      11:0    1 1024M  0 rom  sr1      11:1    1    4M  0 rom  ← 关键设备!vda     254:0    0   20G  0 disk...# ls /mnt/sr1meta-data  network-config  user-data  vendor-data 

案例2:Kuroit (VirtFusion)

NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTSsda       8:0    0  368K  1 disk ← 关键设备!sr0      11:0    1 1024M  0 rom  vda     254:0    0   15G  0 disk... # ls /mnt/sdameta-data  network-config  user-data 

结果:两台机器的sr1sda 中分别存在完整的配置文件


实战DD操作指南(以Debian为例)

步骤1:获取DD工具

curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.shchmod +x reinstall.sh

步骤2:选择官方云镜像

访问 Debian Cloud镜像库

  1. 选择当前稳定版(如 trixie
  2. 进入最新日期目录(如 20251117-2299
  3. 复制 genericcloud 镜像链接:
    • x86架构 → *genericcloud-amd64*
    • ARM架构 → *genericcloud-arm64*
    • 推荐格式:.tar.xz(下载更快).raw, .img等也可以

步骤3:执行DD命令

./reinstall.sh dd --img "https://cloud.debian.org/images/cloud/trixie/20251117-2299/debian-13-genericcloud-amd64-20251117-2299.tar.xz"

脚本运行完后重启系统,接下来就会

  1. 下载并解压镜像
  2. 全自动写入磁盘
  3. 自动重启系统

重启后自动初始化

系统首次启动时将自动触发:

  1. ⚙️ 读取cloud-init配置(网络/用户设置)
  2. 🔑 注入SSH密钥/密码(来自服务商面板生成的cloud-init配置)
  3. 🌐 配置主机名和基础服务

💡 小贴士:有些商家的cloud-init自带qemu agent,若需移除预装组件(如qemu-guest-agent),初始化进入系统后需手动删除:

sudo apt purge qemu-guest-agent -y

总结:三步完成轻量化快速部署

  1. 🔍 检测:lsblk + 挂载小容量设备
  2. 🌐 选镜像:访问云镜像官网获取cloud镜像链接
  3. 🚀 执行:reinstall.sh dd --img "URL"

⚠️ 注意事项:

  • 操作前备份重要数据
  • 确保镜像架构与VPS匹配(amd64/arm64)
  • 确保有cloud-init专用分区

附录:常用云镜像源

发行版官方镜像地址
Debianhttps://cloud.debian.org/images/cloud/
Ubuntuhttps://cloud-images.ubuntu.com/
CentOShttps://cloud.centos.org/centos/
AlmaLinuxhttps://repo.almalinux.org/almalinux/