Proxmox VE PVE 8.X 使用问题集合

Proxmox VE PVE 8.X 使用问题集合

仅记录Proxmox VE 8.X版本以上的遇到的问题

安装PVE

参考:

1.https://www.zhihu.com/tardis/zm/art/32211156275?source_id=1005

2.https://www.cnblogs.com/Thenext/p/18733378

PVE local存储空间扩容

移除并重新创建 ,需要确认磁盘是空的。数据非常重要哈

在执行任何操作之前,请务必确认 pxvirt-data 精简池中没有任何虚拟机或容器数据!

# 停用 data 逻辑卷
lvchange -an /dev/pxvirt/data

# 移除 data 逻辑卷。
# 系统会提示您确认 (Do you really want to remove "pxvirt/data"? [y/n]:),输入 y 并回车。
lvremove /dev/pxvirt/data

# 确认 data 已移除且空间已释放
lvs
pvs

# 扩展 root 逻辑卷
lvextend -L 596G /dev/pxvirt/root

# 调整 root 文件系统大小。
# 最后,让 / 文件系统识别并使用新增加的空间。
resize2fs /dev/pxvirt/root

# 重新创建 data 精简池 (设定更小容量)
lvcreate -L 6.34T -T pxvirt/data

# 验证所有更改
lvs
df -h /

image-20250730120105362

麒麟v10-sp3系统设置自启动qemu-guest-agent.service报错

VMware平台有VMwareTools,KVM平台有qemu-guest-agent

qemu-guest-agent可解决虚拟机无法关机和内存不同步IP不显示等问题

解决方法:

编辑文件 /usr/lib/systemd/system/qemu-guest-agent.service 在结尾增加install单元节点后再重新执行命令即可正常

# 挂载源
mount Kylin-Server-V10-SP3-2403-Release-20240426-arm64.iso /mnt

#for rehat
yum  install qemu-guest-agent -y
#for debian
apt install qemu-guest-agent -y
# for Arch Linux
pacman -S qemu-guest-agent

# 修改文件
# 快速追加:echo "WantedBy=multi-user.target" >> /usr/lib/systemd/system/qemu-guest-agent.service
vim /usr/lib/systemd/system/qemu-guest-agent.service
[Install]
WantedBy=multi-user.target

#重启即可
sudo systemctl status qemu-guest-agent
sudo systemctl start qemu-guest-agent
sudo systemctl enable --now qemu-guest-agent
sudo systemctl status qemu-guest-agent

博通网卡与PVE8.x内核冲突异常问题

参考:https://forum.proxmox.com/threads/broadcom-nics-down-after-pve-8-2-kernel-6-8.146185/

在公司测试环境X86物理机部署PVE过程中,遇到启动PVE服务无法识别网卡,查看日志提示网络初始化失败,因为pve的debian12内核6.8过高,与博通网卡不兼容导致。

image-20250804101846937

解决办法:

禁用bnxt_re内核模块即可解决

echo "blacklist bnxt_re" >> /etc/modprobe.d/blacklist-bnxt_re.conf
update-initramfs -u
reboot

pve显卡直通

参考:https://lyd.im/archives/pve-8-2-gpu-passthrough

官网:https://pve.proxmox.com/pve-docs/chapter-qm.html#qm_pci_passthrough

1.启用 VT-d

需要BIOS 中开启 Intel VT-d

2.修改内核启动参数

编辑 /etc/default/grub 文件,修改 GRUB_CMDLINE_LINUX_DEFAULT 参数

# before
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
# after
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction"

AMD平台替换为:amd_iommu=on

3.添加内核模块

编辑 /etc/modules 添加以下内容

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

4.屏蔽驱动

编辑 /etc/modprobe.d/pve-blacklist.conf,添加相关内容

# Nvidia
blacklist nvidiafb
blacklist nouveau
blacklist nvidia
# AMD
blacklist amdgpu
blacklist radeon
# Intel UHD
blacklist snd_hda_codec_hdmi
blacklist snd_hda_intel
blacklist snd_hda_codec
blacklist snd_hda_core

5.查看显卡的 PCI ID并且绑定 vfio-pci

# 查询显卡的 PCI ID
root@pve247:~# lspci -nnk | grep -i nvidia
27:00.0 3D controller [0302]: NVIDIA Corporation AD102GL [L20] [10de:26ba] (rev a1)
        Subsystem: NVIDIA Corporation AD102GL [L20] [10de:1957]
        Kernel modules: nvidiafb, nouveau


# 绑定 vfio-pci
# 编辑 /etc/modprobe.d/vfio.conf,将上一步骤获取的 PCI ID 填入
vim /etc/modprobe.d/vfio.conf
#----
softdep nouveau pre: vfio-pci
softdep snd_hda_intel pre: vfio-pci
options vfio-pci ids=10de:1957
#----

6.更新内核

# 更新initramfs
root@pve247:/etc/modprobe.d# update-initramfs -u

update-initramfs: Generating /boot/initrd.img-6.8.12-9-pve
Running hook script 'zz-proxmox-boot'..
Re-executing '/etc/kernel/postinst.d/zz-proxmox-boot' in new private mount namespace..
No /etc/kernel/proxmox-boot-uuids found, skipping ESP sync.



root@pve247:/etc/modprobe.d# update-grub

Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.8.12-9-pve
Found initrd image: /boot/initrd.img-6.8.12-9-pve
Found memtest86+ 64bit EFI image: /boot/memtest86+x64.efi
Adding boot menu entry for UEFI Firmware Settings ...
done

7.重启系统并查询是否成功绑定

# 重启服务器
reboot

# 看到 Kernel driver in use: vfio-pci 字样即为直通成功
root@pve247:~# lspci -nnk | grep -i nvidia
27:00.0 3D controller [0302]: NVIDIA Corporation AD102GL [L20] [10de:26ba] (rev a1)
        Subsystem: NVIDIA Corporation AD102GL [L20] [10de:1957]
        Kernel modules: nvidiafb, nouveau

8.虚拟机添加直通设备

前往 PVE 控制台,在硬件选项卡中,添加 PCI 设备

image-20250804103517982

选择 原始设备,设备选择对应的 Nvidia 显卡,勾选 所有功能

image-20250804103554561

启动虚拟机,安装 Nvidia 显卡驱动,使用 nvidia-smi 检查一下,有正常输出即为成功。

img

PVE 8.4 关闭 “您没有此服务器的有效订阅” 提示

解决登录后提示:您没有此服务器的有效订阅。请访问 www.proxmox.com 获取可用选项列表。

解决办法:

备份原来的以备不时之需

cd /usr/share/javascript/proxmox-widget-toolkit/ && cp proxmoxlib.js proxmoxlib.js.bk

编辑/usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js文件

新增:res.data.status='active';

image-20250804154511798

重启服务

systemctl restart pveproxy

然后CTRL+F5强制刷新网页,或清理一下浏览器的缓存就好了!

ESXI 虚拟机备份迁移到PVE-8

参考:https://yangwenqing.com/archives/2434/

准备前工作

1.一台待迁移的ESXI主机(6.5-8.0版本都可以)
2.一台装好PVE8.2的主机(低于8.2版本请先升级)

迁移导入工作

1.添加数据源

在PVE的存储菜单下,把待迁移的ESXI添加进来。(PVE要能访问ESXI,毕竟是网络迁移)
步骤:数据中心 → 存储 → 添加 → ESXI

image-20250805143052412

2.连接esxi

把ESXi信息添加进来,作为PVE远程存储。
步骤:填写ID → 填写ESXI后台地址 → 输入ESXI管理员账号&密码 → 勾选启用和跳过证书验证 → 添加

img

类似这样子:

image-20250805143250298

3.导入虚拟机

添加进来后,在PVE左边菜单就能看到ESXI的远程挂载存储,该存储只有导入权限。

image-20250805143404891

点击ESXi存储,页面右侧区域将会显示ESXi下的所有虚拟机的镜像,到这你就可以选择需要导入PVE的虚拟机,选择导入。

image-20250805143503751

导入对话框可以根据自己需求去修改,可以调整CPU类型、内存、OS类型、网络、及虚拟机的默认存储位置与格式。确认无误后点击导入(迁移时虚拟机需要关机,否则不能导入)。

image-20250805143712637

导入的过程与PVE还原恢复基本一样,待进度条恢复完毕,就可以启动从ESXi迁移过来的虚拟机。

image-20250805143816959

尝试启动后,可能存在无法识别磁盘等问题。请看解决导入的ESXI虚拟机找不到磁盘的问题

解决导入的ESXI虚拟机包含中文路径异常

image-20250805161311511

问题根源是 PVE 对中文路径的编码支持不足,导致路径解析错误。

解决办法-重命名 ESXi 文件:

1.定位目标虚拟机文件

找到报错中提到的存储路径(例如 111.202_datastore 下的 应急演练测试环境-192.168.111.242 文件夹)。

2.关闭虚拟机

确保该虚拟机已完全关机(避免文件被锁定)。

3.批量重命名

  • 将包含中文的文件夹名(如 应急演练测试环境-192.168.111.242)改为纯英文 / 数字
  • 检查文件夹内的 .vmdk.vmx 等文件,若文件名也包含中文,同步改为对应英文名称(保持与文件夹名关联)

注意:若 .vmx 文件内引用了原中文文件名,需用文本编辑器打开 .vmx,将其中的中文路径改为新的英文路径(否则虚拟机可能无法启动)。

cat yjyl-test-192.168.111.242.vmsd | grep -i “应急演练”

cat yjyl-test-192.168.111.242.vmx | grep -i “应急演练”

image-20250805161716546

4.开机验证是否正常启动

在ESXI上重新进行开机,查看是否正常开机或者存在错误。

5.重新在 PVE 中导入

在esxi关闭虚拟机,重新在PVE上导入虚拟机。

导入前,建议把历史快照进行删除,加快导入速度。

解决导入的ESXI虚拟机找不到磁盘的问题

参考:https://blog.biuyoudead.com/archives/esxi-8-xu-ni-ji-bei-fen-qian-yi-dao-pve-8#5%E3%80%81%E8%A7%A3%E5%86%B3%E6%89%BE%E4%B8%8D%E5%88%B0%E7%A3%81%E7%9B%98%E7%9A%84%E9%97%AE%E9%A2%98

从esxi导入虚拟机后,尝试启动可能存在无法识别磁盘等问题而进入了 Dracut 命令的窗口 。

image-20250805144712357

1.虚拟机关机

2.分离导入的磁盘,并修改为IDE

image-20250805144901315

修改,保存

image-20250805151311189

修改启动项

image-20250805151358134

3.启动并给内核开启其他驱动

#选择开启驱动
echo "add_drivers+=\"ahci megaraid_sas mpt3sas mpt2sas virtio_blk "\" >> /etc/dracut.conf.d/sasmod.conf
#更新内核
dracut -f

4.关机并恢复

跟上面的 5.2操作相反的恢复

分离导入的磁盘,并修改为SCSI

image-20250805151526461

修改,保存

image-20250805151600581

修改启动项

image-20250805151647838

最后开机尝试。

image-20250805151742833

优化-使用pvetools工具

详情自行了解:https://github.com/ivanhao/pvetools

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇