Oracle Cloud 重装纯净系统的简易攻略

  云服务器重装纯净系统无外乎几种办法,尝试了前两种后都无法实现,因此研究了一下如何使用 dd 的方式安装纯净操作系统:

  • netboot.xyz 网络引导安装,Oracle Cloud 给的内存太小无法正常启动
  • 挂载另一块硬盘,将 iso 放到另一块硬盘,并从其引导启动安装程序,Oracle Cloud 硬盘使用半虚拟化技术,引导阶段似乎无法认到第二块硬盘
  • 预先制作镜像,dd 到系统盘

netboot.xyz 安装

  1. netboot.xyz 下载 ARM64 的 EFI 文件到 /boot/efi
  2. 控制台连接 -> 创建本地连接 -> 通过 VNC 连上
  3. 重启,狂按 F2
  4. Boot Maintenance Manager
  5. Boot From File
  6. 默认第一个盘
  7. EFI
  8. netboot.xyz-arm64.efi
  9. Linux Network Installs (arm64)
  10. RockyLinux9 实测选择图形化安装成功

制作 DD 镜像

  1. 用虚拟机装一个目标版本系统,虚拟机要设置为 UEFI 启动,硬盘大小要比服务器小
  2. 添加 virtio 驱动:编辑 /etc/dracut.conf 文件,新增
1
add_drivers+="virtio_scsi"
  1. 更新 dracut 配置:dracut -f
  2. 关机,用一个 Live CD 引导,制作 dd 镜像,据说使用 VirtualBox 的话,可以直接压缩硬盘文件
1
dd if=/dev/sda | gzip > sda.img.gz
  1. 新开一台服务器,把原来的系统盘挂载过来,并把 dd 镜像传到该服务器
  2. dd 命令恢复镜像,这个命令会很久,因为 Oracle Cloud 限制了硬盘的读写速度,建议开一个 screen 窗口防止掉线
1
gzip -dc sda.img.gz | dd of=/dev/sda
  1. 分离系统盘,挂载回原服务器,开机
  2. 若没有成功开机,开个 VNC 上去看下问题出在哪
  3. 扩展最后一个分区的大小,这里最后一个分区是第 4 个
1
parted resizepart 4 100%
  1. 扩展文件系统大小
1
2
3
4
# 文件系统是xfs的话用这个命令
xfs_growfs /dev/sda4
# 其他文件系统用这个命令
resize2fs -p /dev/sda4