跳转至

SOP:重装 Ubuntu 24.04 + 恢复 OpenWrt 网络

场景:全新重建(旧 VM 不恢复)。目标 = 装好 KVM 宿主并让网络先通。 配套阅读:../README-交接入口.md、../环境事实.md、../Ubuntu-KVM宿主配置.md。


0. 目录结构与物料

目录按文件作用划分,本手册置于根目录作入口:

openwrt/
├── SOP-重装与恢复-Ubuntu.md   本手册(入口)
├── images/                    VM 磁盘镜像
├── configs/                   OpenWrt 配置备份包(/etc/config 等)
└── domains/                   libvirt 域定义 XML
目录 文件 作用 状态
images/ openwrt-24.10.0.qcow2 成品路由镜像,§7 转 raw 后导入 在用
configs/ openwrt-config-24.10.0.tar.gz 24.10.0 的配置备份 在用
configs/ openwrt-config-21.02.5.tar.gz 旧架构完整配置(含 PKI、openvpn、frpc、crontabs) 参考
domains/ openwrt-domain-clean.xml Ubuntu 干净版域定义,用这个 在用
domains/ openwrt.xml CentOS 宿主域定义,指向 21.02.5 镜像 参考
domains/ openwrt-new-domain.xml CentOS 原版域定义,指向 24.10.0 镜像 参考
  • 命名无版本号的 openwrt.xml / openwrt-new-domain.xml 均属 CentOS 宿主产物,只作旧架构写法回溯,不可直接 virsh define,原因见 §9。
  • 回滚所需件见 §9。
  • 接入:../access/(SSH 公钥)

1. 安装 Ubuntu Server 24.04 LTS

  • U 盘(Rufus/Ventoy/dd),物理控制台或 iDRAC 192.168.0.120。
  • 最小化安装,主机名如 kvm-host。
  • 分区(SSD 独立,避免重蹈旧覆辙):
  • SSD 250G → /(+ swap)
  • HDD RAID0 2T → 安装时不动,装完再做冷数据盘(§3)
  • 网卡名会变:按 MAC 认口(…:b0=LAN、…:b2=WAN、…:b1=管理)。
  • 装完:sudo apt update && sudo apt -y upgrade

2. 安装 KVM / libvirt / SSH

sudo apt -y install openssh-server qemu-kvm libvirt-daemon-system libvirt-clients \
                    virtinst bridge-utils ovmf
sudo systemctl enable --now libvirtd
sudo usermod -aG libvirt,kvm $USER

宿主机完整配置要点(关闭默认网络、目录/AppArmor、内核/性能、域 XML 适配)见 ../Ubuntu-KVM宿主配置.md。


3. 存储:HDD 做冷数据(可选,但建议)

lsblk -o NAME,SIZE,ROTA,MODEL            # 确认 HDD 盘符
sudo pvcreate /dev/sdb
sudo vgcreate hdd /dev/sdb
sudo lvcreate -l 100%FREE -n cold hdd
sudo mkfs.xfs /dev/hdd/cold
sudo mkdir -p /data && echo "/dev/hdd/cold /data xfs defaults 0 0" | sudo tee -a /etc/fstab
sudo mount -a
sudo mkdir -p /kvm/img                   # VM 镜像放 SSD 上的 /kvm

4. 双网桥(netplan,用 MAC 认口)

/etc/netplan/01-kvm.yaml:

network:
  version: 2
  renderer: networkd
  ethernets:
    lan0:
      match: { macaddress: "c8:1f:66:f2:23:b0" }   # 原 em1 → LAN
      set-name: lan0
      dhcp4: false
    wan0:
      match: { macaddress: "c8:1f:66:f2:23:b2" }   # 原 em3 → WAN
      set-name: wan0
      dhcp4: false
  bridges:
    br0:
      interfaces: [lan0]
      addresses: [192.168.0.250/24]                # 宿主管理口
      routes: [ { to: default, via: 192.168.0.1 } ]
      nameservers: { addresses: [192.168.0.1] }
      parameters: { stp: false, forward-delay: 0 }
    br1:
      interfaces: [wan0]                           # WAN 桥,仅供路由 VM 上行
      parameters: { stp: false, forward-delay: 0 }
sudo netplan apply
# 建议同时把 LAN 上联换到千兆交换机(原 TP-Link 百兆是 100M 根因)

5. AppArmor 放行(否则 VM 起不来)

echo '/kvm/** rwk,' | sudo tee -a /etc/apparmor.d/local/abstractions/libvirt-qemu
sudo systemctl reload apparmor

6. SSH 接入(让 AI 直连)

见 ../access/README-SSH接入.md。完成后把 IP + 端口 + 登录方式 告知即可接管。


7. 恢复 OpenWrt 路由(网络随之恢复)

sudo mkdir -p /kvm/img
qemu-img convert -O raw images/openwrt-24.10.0.qcow2 /kvm/img/openwrt-24.10.0.img

# 用 Ubuntu 干净版域定义;CentOS 原版不可直接用,差异见 ../Ubuntu-KVM宿主配置.md §6
virsh define domains/openwrt-domain-clean.xml
virsh start openwrt
virsh autostart openwrt

验证(对照 环境事实.md §8):

ping -c2 192.168.0.1
ssh root@192.168.0.1 'cat /etc/openwrt_release'   # 应 24.10.0
ssh root@192.168.0.1 'ip addr show br-lan; ip addr show eth1'  # .1 与 192.168.31.x
curl -m6 -sI http://www.baidu.com | head -1       # 上网
ssh root@192.168.0.1 'ip addr show tun0'          # 10.8.0.1(OpenVPN)

顺序关键:路由 VM 起到 .1 → 全网恢复 → 再谈其它。


8. 后续服务(全新搭建,不恢复旧 VM)

  • k8s(kubeadm:3 master + 3 node)、EDA/HPC、NFS/Lustre、Harbor 等,按需全新部署。
  • LDAP:如需沿用,见 ../ldap/README-恢复说明.md(LDIF 可移植恢复)。
  • VM 资源规划建议:避免旧环境的内存超配(曾 155G/120G);k8s-node 给 8~12vCPU/16G 较合适。

9. 回滚

  • 退回旧路由(如需):virsh destroy openwrt。注意 openwrt-21.02.5.qcow2 已从本目录清理,需先从外部备份取回并放入 images/,再 qemu-img convert -O raw images/openwrt-21.02.5.qcow2 /kvm/img/openwrt-21.02.5-x86-64-generic-ext4-combined.img, 最后 virsh define domains/openwrt.xml 起动(文件名须与 §7 的 21.02.5 版本镜像一致)。
  • domains/openwrt.xml 是 CentOS 宿主产物(machine='pc-i440fx-rhel7.0.0'、CPU 为 SandyBridge-IBRS 自定义模式), 在 Ubuntu 24.04 上不可直接 define,只作旧架构写法参考;要真用需按 domains/openwrt-domain-clean.xml 的写法适配。
  • 宿主退回旧系统:不推荐,用备份重建。

10. 备注

  • frpc 服务器 43.129.206.40:5443 不可达(既有状况),不影响网络。
  • 路由镜像为 BIOS/grub 引导 → VM 固件用默认(BIOS),不要设 UEFI。

来源:/home/rain/Documents/kvm/openwrt_ins/SOP-重装与恢复-Ubuntu.md | 最后更新:2026-09-16 20:26(由 build/sync.py 同步,请勿在站点侧修改)