无 IPMI 双硬盘杜甫自行安装新系统

云筏 2x2T 机械的杜甫没有 IPMI重装系统收费 100 元。而交付的机器是单盘 LVM 的 Proxmox,显然不适合正经使用,为省钱只能自行重装 Proxmox 为 ZFS mirror

核心原理受 Hetzner 的 vKVM 启发,就是将 1 块空闲硬盘直通入 QEMU 虚拟机安装系统。由于并非一边装一遍记录的,因此以下仅供参考。

对于跟随以下记录操作而导致服务器无法启动、失联等结果,概不负责!

1. 记录关键数据

需要用到机器现在的公网 IP、网关、网卡名和硬盘名。这里假设:

公网 IP:      123.1.2.3/32
网关:          123.1.2.1
网卡名:       enp1s0
原系统硬盘:/dev/sda
新系统硬盘:/dev/sdb

2. 直通硬盘安装系统

首先下载 Proxmox 镜像保存任意目录,我保存为了 /root/proxmox-ve_7.0-1.iso

在控制台输入以下命令

qemu-system-x86_64 -enable-kvm -smp 8 -m 8192 –boot d -cdrom /root/proxmox-ve_7.0-1.iso -drive file=/dev/sdb,format=raw,media=disk –vnc 127.0.0.1:1

 

这样就用 qemu 开启了一个 8C8G 的虚拟机,挂载 proxmox-ve_7.0-1.iso 为 CD,直通 /dev/sdb 进虚拟机,同时开启了虚拟机的 vnc 端口

注意不要关闭控制台,因为虚拟机要保持运行。接下来要用 SSH 转发端口,如果自己电脑已经安装了 SSH 就很方便:

ssh -L 8888:127.0.0.1:5901 root@123.1.2.3

 

将杜甫的 5901 端口转发到了本机的 8888 端口。本机用 UltraVNC Viewer 连接就好了,自行按指引安装系统,和普通 IPMI 操作没有区别

注意由于只有一块硬盘,Proxmox 在安装时无法选择 ZFS mirror,需要选择 ZFS raid0。

3. 修改虚拟机中的系统

为了让虚拟机中的安装的系统在物理中能正常启动和使用,需要修改虚拟机中的网卡配置,编辑 /etc/network/interfaces :

auto lo

iface lo inet loopback
iface enp1s0 inet manual
auto vmbr0
iface vmbr0 inet static
address 123.1.2.3/32
gateway 123.1.2.1
bridge_ports enp1s0
bridge_stp off
bridge_fd 0

 

如果安装的新系统不是 Proxmox ZFS 还需要额外关注硬盘配置,不过由于使用了 ZFS 文件系统,就无需关心了。

配置完毕后,用 Ctrl+Z 或 Ctrl+C 者关闭这个 qemu 开的虚拟机。

4. 删除原本的引导

原系统装在 /dev/sda,而新系统装在 /dev/sdb,需要修改原系统 grub 才能在开机时启动到新系统。但有个更直接但比较危险的操作,直接抹掉原系统:

dd if=/dev/zero of=/dev/sda bs=64K conv=noerror,sync status=progress

 

用 dd 破坏 /dev/sda 的引导信息,引导分区不大,一般不超过几个 G。也就是执行几分钟就行了,不需要全盘抹掉。

然后就可以重启了,以我个人的经验,云筏这杜甫重启需要 4 分半的时间

5. 添加硬盘到 ZFS 组成 mirror

正常启动后就是全新安装的系统了,不过这时候是单盘 ZFS,组成 mirror 还需要一些操作。先查看新系统的分区 fdisk -l :

Device           Start        End             Sectors           Size         Type
/dev/sdb1       34         2047            2014              1007K     BIOS boot
/dev/sdb2     2048     1050623        1048576        512M      EFI System
/dev/sdb3  1050624  3907029134  3905978511  1.8T        Solaris /usr & Apple ZFS

sdb1 是 BIOS 引导分区, sdb2 是 EFI 引导分区,sdb3 才是真正的 ZFS 分区。

将新系统的分区表复制到原系统的硬盘上并修复分区表 id:

  1. sgdisk /dev/sdb -R /dev/sda
  2. sgdisk -G /dev/sda

 

将原系统盘的 sda3 分区加入 ZFS 组成 mirror :

  1. zpool attach rpool /dev/sdb3 /dev/sda3

 

用 zpool status 看下:

NAME          STATE     READ WRITE CKSUM
rpool         ONLINE       0     0     0
mirror-0  ONLINE       0     0     0
sdb3    ONLINE       0     0     0
sda3    ONLINE       0     0     0

得到了想要的 mirror ,刚加入后会自动同步数据,过几分钟就好了。

6. 引导修复

最后还需要手动修复下 Proxmox 的引导:

  1. proxmox-boot-tool format /dev/sda2
  2. proxmox-boot-tool init /dev/sda2

 

终于完成了重装系统的一切操作,可以正常使用了。

最后再说下,一定要清楚自己在干什么,否则杜甫 GG 了就杯具了

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

栗子博客 电脑 无 IPMI 双硬盘杜甫自行安装新系统 https://www.lizi.tw/pc/21092.html

建筑工地上施工员,闲暇时弄个博客打发时间,

常见问题
  • 1、杰齐1.7仅适用于PHP5.2 2、需Zend支持 3、尽量使用宝塔面板 4、尽量使用Windows 系统,关关对Linux支持不太友好。
查看详情

相关文章

评论
暂无评论
无 IPMI 双硬盘杜甫自行安装新系统-海报

分享本文封面