云服务器重装纯净系统无外乎几种办法,尝试了前两种后都无法实现,因此研究了一下如何使用dd的方式安装纯净操作系统:
- netboot.xyz网络引导安装,Oracle Cloud给的内存太小无法正常启动
- 挂载另一块硬盘,将iso放到另一块硬盘,并从其引导启动安装程序,Oracle Cloud硬盘使用半虚拟化技术,引导阶段似乎无法认到第二块硬盘
- 预先制作镜像,dd到系统盘
netboot.xyz安装
- 从
netboot.xyz
下载ARM64的EFI文件到/boot/efi
- 控制台连接->创建本地连接->通过VNC连上
- 重启,狂按
F2
Boot Maintenance Manager
Boot From File
- 默认第一个盘
EFI
- netboot.xyz-arm64.efi
- Linux Network Installs (arm64)
- RockyLinux9实测选择图形化安装成功
制作DD镜像
- 用虚拟机装一个目标版本系统,虚拟机要设置为UEFI启动,硬盘大小要比服务器小
- 添加virtio驱动:编辑
/etc/dracut.conf
文件,新增
1
|
add_drivers+="virtio_scsi"
|
- 更新dracut配置:
dracut -f
- 关机,用一个Live CD引导,制作dd镜像,据说使用VirtualBox的话,可以直接压缩硬盘文件
1
|
dd if=/dev/sda | gzip > sda.img.gz
|
- 新开一台服务器,把原来的系统盘挂载过来,并把dd镜像传到该服务器
- dd命令恢复镜像,这个命令会很久,因为Oracle Cloud限制了硬盘的读写速度,建议开一个screen窗口防止掉线
1
|
gzip -dc sda.img.gz | dd of=/dev/sda
|
- 分离系统盘,挂载回原服务器,开机
- 若没有成功开机,开个VNC上去看下问题出在哪
- 扩展最后一个分区的大小,这里最后一个分区是第4个
1
|
parted resizepart 4 100%
|
- 扩展文件系统大小
1 2 3 4
|
xfs_growfs /dev/sda4
resize2fs -p /dev/sda4
|