Proxmox VE PVE 8.X 使用问题集合
本文最后更新于 379 天前,其中的信息可能已经有所发展或是发生改变。

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
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Image
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇