为什么要DD?
甲骨文后台没有提供重装系统的选项,更换系统需要删机重新创建十分的不方便,重新创建IP也不会保留。
非常适合以下场景:
将 Oracle Cloud 的 Ubuntu 镜像更换为 Debian
移除云服务商内置的监控代理
创建最小、纯净的 Debian 环境
使用 preseed 或 cloud-init 实现自动化安装
拯救或恢复损坏的系统
快速上手
# 下载脚本
curl -fLO https://raw.githubusercontent.com/bohanyang/debi/master/debi.sh
chmod +x debi.sh
# 基础安装 (会创建一个拥有 sudo 权限的 'debian' 用户)
sudo ./debi.sh
# 或者,直接以 root 用户安装
sudo ./debi.sh --user root
# 准备就绪后重启
sudo reboot默认设置: Debian 13 (trixie),DHCP 网络,创建一个名为 debian 并拥有 sudo 权限的用户,脚本会提示你为该用户设置密码。
平台支持
环境要求:
KVM 虚拟化或物理机 (不支持容器)
GRUB 2 引导加载程序
Root 权限
区域预设
完整选项参考
系统和用户配置
网络配置
网络控制台 (远程安装)
网络控制台用法:
使用
--network-console参数并重启等待 2-3 分钟,让 Debian 安装程序加载组件
通过 SSH 连接到你的服务器:
ssh installer@YOUR_IP使用多个终端窗口进行操作:
Alt+F1: 主安装界面
Alt+F2: Shell 终端
Alt+F3: 另一个 Shell 终端
Alt+F4: 系统日志 (可监控自动化安装进度)
使用 Alt+Left/Alt+Right 切换
⚠️ 注意事项
如果使用了 --authorized-keys-url,SSH 的密码认证将被禁用 (必须使用 SSH 密钥登录),但你仍然需要设置一个用户密码,用于 VNC 控制台登录和执行 sudo 命令。
存储和分区
镜像源和仓库配置
APT 仓库组件
软件包安装
内核选项
高级选项
Debian 安装程序选项
Cloud-Init 集成
Cloud-Init 用法:
# 创建 cloud-init 配置文件
mkdir my-cloud-config
echo "instance-id: my-server" > my-cloud-config/meta-data
cat > my-cloud-config/user-data << 'EOF'
#cloud-config
hostname: my-server
packages:
- htop
- git
EOF
# 在安装时使用
sudo ./debi.sh --cidata my-cloud-config开发与测试
使用示例
Oracle Cloud (Ubuntu → Debian)
sudo ./debi.sh --cloudflare --user debianGoogle Cloud Platform
# GCP 需要手动配置网络 (请替换为你的 VPC 设置)
sudo ./debi.sh --ip 10.128.0.100/24 --gateway 10.128.0.1最小化安装
sudo ./debi.sh --no-install-recommends --install 'curl git vim' --no-upgrade中国大陆部署
sudo ./debi.sh --ustc --timezone Asia/Shanghai --dns '119.29.29.29'使用网络控制台安装
# 在安装过程中启用远程访问 (SSH 密钥用于网络登录,密码仍需用于 VNC/sudo)
sudo ./debi.sh --network-console --authorized-keys-url https://github.com/yourusername.keys
# 重启后,通过 SSH 连接: ssh installer@YOUR_IP静态网络与 Cloud-Init
sudo ./debi.sh --ip 192.168.1.100/24 --gateway 192.168.1.1 --cidata ./cloud-config/高级自定义配置
sudo ./debi.sh \
--version 13 \
--user admin \
--timezone Europe/London \
--disk /dev/nvme0n1 \
--filesystem btrfs \
--cloud-kernel \
--bbr \
--ssh-port 2222 \
--install 'htop iotop ncdu'故障排查
撤销所有更改
# 移除所有修改并恢复原始的 GRUB 配置
sudo rm -rf /etc/default/grub.d/zz-debi.cfg /boot/debian-*
sudo update-grub || sudo grub2-mkconfig -o /boot/grub2/grub.cfg常见问题
检测到多块磁盘:
# 列出可用磁盘
lsblk
# 指定目标磁盘
sudo ./debi.sh --disk /dev/sda低内存 VPS (<512MB):
sudo ./debi.sh --force-lowmem 1网络配置失败:
# 使用当前系统的网络设置
sudo ./debi.sh --static-ipv4
# 或者手动配置
sudo ./debi.sh --ip YOUR_IP/CIDR --gateway YOUR_GATEWAY网卡需要固件 (firmware):
sudo ./debi.sh --firmware安装过程调试:
# 只生成 preseed 文件
sudo ./debi.sh --dry-run
# 启用网络控制台进行远程访问 (SSH 密钥用于远程登录,密码用于 VNC/sudo)
sudo ./debi.sh --network-console --authorized-keys-url YOUR_KEYS_URL工作原理
下载 Debian 安装程序 到
/boot/debian-$VERSION/目录根据你的配置生成 preseed 应答文件
修改 GRUB 配置 (添加一个新的安装程序菜单项)
将配置文件注入到安装程序的 initramfs 中
更新 GRUB 以加载新的启动选项
对你系统所做的更改:
在
/boot/debian-*/目录中添加文件在
/etc/default/grub.d/zz-debi.cfg创建 GRUB 配置文件更新 GRUB 菜单
在重启之前,所有这些更改都是安全且可逆的,可以使用上面的撤销命令来恢复。