- 路由器不支持多 ip
物理线路连接问题:
- 确定物理网口和 nic 的对应关系:可以使用“闪烁灯光”命令。执行后,对应的物理网口灯会持续闪烁 10 秒。去机房/机柜后面看哪个灯在闪,就能确认线有没有插对。
bashethtool -p nic3 10
ip route
ip a
监听网卡上的 ARP 数据包发现个网口现在接收到的全是 192.168.1.x 网段的广播包,说明网口连接到的交换机,连接到了路由器 LAN 口。交换机变成了内网交换机。
tcpdump -i nic3 -n -e arp
宿主机 ip route 结果
default via 220.163.7.33 dev vmbr1 proto kernel onlink192.168.1.0/24 dev vmbr0 proto kernel scope link src 192.168.1.150220.163.7.32/29 dev vmbr1 proto kernel scope link src 220.163.7.36
路由表配置:
- 默认路由正确:
default via 220.163.7.33 dev vmbr1确保了所有访问互联网的流量都会尝试通过公网网口发出。 - 网段隔离清晰:内网流量走
vmbr0,公网流量走vmbr1,互不干扰。
绑定 IP
修改 PVE 宿主机的 vmbr1 配置,删掉它的 IP 地址和网关,只保留网桥和物理口的绑定关系。这样宿主机在外网就“隐身”了,更安全。
虚拟机手动配置 IP (Netplan 方式)
cat <<EOF | sudo tee /etc/netplan/00-installer-config.yamlnetwork:version: 2renderer: networkdethernets:ens18:addresses: [220.163.7.35/29]nameservers:addresses: [8.8.8.8, 114.114.114.114]routes:- to: defaultvia: 220.163.7.33EOF
sudo netplan apply
我 vmbr0 里面配的地址是 192.168.1.150,为什么我在虚拟机里使用 vmbr0 后,配 ip 192.168.126 也能行?
在 PVE 中,vmbr0 是一个网桥(Bridge),本质上是一台虚拟的逻辑上“傻瓜交换机”。
- 宿主机的 IP (192.168.1.150):可以理解为 PVE 自己的管理口也“插”在了这台虚拟交换机的一个端口上。
- 虚拟机的 IP (192.168.1.126):是虚拟机通过虚拟网线(tap 设备)“插”在了这台虚拟交换机的另一个端口上。
因为它们都插在同一个“交换机”上,只要它们在同一个网段(都是 192.168.1.x),它们就能互通,也能通过 vmbr0 绑定的物理网卡出去找路由器。网桥不关心你给虚拟机配了什么 IP。它的工作原理是在**二层(MAC 地址层)**转发数据包。
只要满足以下条件,就能行:
- 二层连通:虚拟机的网卡挂载在
vmbr0上。 - 三层同段:虚拟机配的是
192.168.1.126(你可能漏打了一个1),只要它和宿主机192.168.1.150都在192.168.1.0/24网段内。 - 网关指向正确:只要虚拟机的网关也指向你的内网路由器(比如
192.168.1.1),它就能上网。
虚拟机磁盘扩容
本指南适用于在 PVE 后台调大硬盘容量后,如何在不重启 Ubuntu 虚拟机的情况下,热扩容其内部的 LVM 逻辑卷及文件系统。
1. PVE 后台调整硬件容量
- 登录 PVE 节点后台,在左侧菜单点击目标 VM (虚拟机) 或 LXC (容器)。
- 切换至 Hardware (硬件) 标签页(LXC 对应 Resources (资源))。
- 选中需要扩容的 Hard Disk (硬盘),点击上方菜单的 Disk Action (磁盘操作) Resize (调整大小)。
- 在弹出的窗口中,输入需要增加(Increment)的容量(例如:输入
50表示在原有基础上增加 50GB),点击确定。
2. Ubuntu 系统内热扩容 LVM 与文件系统
PVE 侧的调整仅改变了底层“虚拟磁盘的物理尺寸”,需通过以下三步让 Ubuntu 内部的 LVM (逻辑卷管理) 及文件系统识别并应用新空间。
- 扩容 LVM 物理卷 (PV)。通知 LVM 物理卷更新其底层存储结构,以识别硬件新增的未分配空间。
- 注:通常 LVM 物理分区名称为
/dev/vda3,如不确定,可先用sudo pvs确认。
bashsudo pvresize /dev/vda3
- 步骤二:扩容 LVM 逻辑卷 (LV)。将物理卷中刚刚识别到的所有剩余未分配空间(
100%FREE),全部全额分配给根目录所在的逻辑卷。
bashsudo lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
- 刷新文件系统:LVM 逻辑卷扩容后,需要在线刷新上层文件系统(此处以 Ubuntu 默认的 ext4 为例)以使容量正式生效。
bashsudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
提示:如果您的文件系统是 XFS,请将上述命令替换为:
sudo xfs_growfs /
- 验证扩容结果。执行完上述操作后,输入以下命令检查根目录
/的挂载容量是否正确更新:
bashdf -h
上传文件
用 https://filezilla-project.org/download.php
虚拟机控制台允许粘贴
第一步:在 PVE 网页端为虚拟机添加 Serial 硬件
- 登录 PVE 网页控制台,找到该虚拟机。
- 点击 Hardware(硬件) -> Add(添加) -> Serial Port(串口)。
- 保持默认的
Serial 0,点击 Create。 - 注意: 修改硬件后,虚拟机需要 关机再开机(Reboot/Cold Boot) 才能生效。
第二步:在虚拟机系统内启用 Serial 监听
进入虚拟机系统内部(可以通过网页端的 Console),根据操作系统执行以下操作,让系统把控制台输出重定向到串口:
- 对于 Ubuntu / Debian / CentOS 7+:
bashsudo systemctl enable serial-getty@ttyS0.servicesudo systemctl start serial-getty@ttyS0.service
准备工作完成后,在 PVE 宿主机上执行以下命令即可进入控制台:
bashqm terminal <VMID>
这样就可以使用 xterm.js 打开 console

