标签 Proxmox VE 下的文章

分享个 Proxmox VE (PVE) “黑产级” 小技巧,通过改一点点后台代码和前端脚本,直接让 PVE 的侧边栏显示 VM 的备注第一行,支持显示为中文。效果就是一眼望去,你的 “测试机”、“数据库”、“挂机宝” 全都清清楚楚。

注意:此操作是基于 8.2.2 版本,操作前务必先备份文件,万一代码对不齐把网页搞崩了,还能救回来。

一共三个步骤:

  • 后端: 让 PVE 的 API 在获取集群资源时,顺便去读一下 VM 配置文件里的备注字段。
  • 前端: 让网页侧边栏拿到这个字段,并把它显示出来。
  • 重启: 刷新服务生效。

直接上代码,可以直接把下面这一整段代码复制到 PVE 的 Shell 里执行。代码里加上了自动备份功能,改错了也能找回原文件。

# ==========================================
# 第一步:后端修改 (让 API 吐出备注数据)
# ==========================================

# 先备份,万一翻车好救命

cp /usr/share/perl5/PVE/API2/Cluster.pm /usr/share/perl5/PVE/API2/Cluster.pm.bak

# 在 API 定义里加个 description 字段

sed -i "/name => {/i \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ description => { description => \"Description\", type => \"string\", optional => 1 }, " /usr/share/perl5/PVE/API2/Cluster.pm

# 注入读取逻辑:直接去读 /etc/pve/ 下的配置文件第一行注释

sed -i "/my \$entry = PVE::API2Tools::extract_vm_stats/a \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ eval { my \$raw = PVE::Tools::file_get_contents(\"/etc/pve/\" . (\$entry->{type} eq 'lxc' ? 'lxc' : 'qemu-server') . \"/\$vmid.conf\"); if (\$raw =~ /^#(\\\\S+)/) { \$entry->{description} = \$1; } };" /usr/share/perl5/PVE/API2/Cluster.pm

# ==========================================
# 第二步:前端修改 (让网页侧边栏显示备注)
# ==========================================

# 还是先备份

cp /usr/share/pve-manager/js/pvemanagerlib.js /usr/share/pve-manager/js/pvemanagerlib.js.bak

# 在 ResourceStore 资源池里注册一下 description 字段

sed -i "4000,4500s|name: {|description: { header: gettext('Description'), type: 'string', hidden: true }, name: {|" /usr/share/pve-manager/js/pvemanagerlib.js

# 修改侧边栏显示逻辑:如果有备注就显备注,没备注就显原来的名字

sed -i "s|text += \" (\" + info.name + ')';|text += \" (\" + (info.description ? decodeURIComponent(info.description).split('\\\\n')[0] : info.name) + ')';|" /usr/share/pve-manager/js/pvemanagerlib.js

# ==========================================
# 第三步:重启服务,刷新页面
# ==========================================

systemctl restart pvedaemon pveproxy

执行之后,使用 Ctrl+F5 强制刷新 PVE 网页。
选中一个虚拟机,点开备注。
在备注的第一行写上你想显示的文字,比如:核心数据库。
填了之后侧边栏 ID 后面括号里显示的就是你填的备注,支持中文和特殊字符。

关于更新: PVE 每次大版本更新,这些系统文件都会被覆盖。到时候如果你发现备注没了,再跑一遍这个脚本就行。

万一网页打不开了: 别慌,用 cp /usr/share/pve-manager/js/pvemanagerlib.js.bak/usr/share/pve-manager/js/pvemanagerlib.js 把备份覆盖回去,再重启服务就恢复了。


📌 转载信息
转载时间:
2026/1/16 12:29:50

最近写一个关于 Proxmox VE 多集群开源项目,第一次整这玩意,各位观众老爷们给评一评,国内会有人用?不知道有木有要入坑欢迎大家一起交流交流

项目简介

一个开源的 Proxmox VE 多集群 Web 管理平台,解决多集群运维的痛点。

解决什么问题

如果你运维多个 PVE 集群,应该深有体会:

  • 在多个 Web 界面之间频繁切换
  • 手动同步虚拟机模板费时费力
  • 缺少跨集群的资源全局视图

PveSphere 提供统一的控制面板,让你从单一界面管理所有集群。

核心功能

  • 多集群统一管理
  • 虚拟机生命周期管理(创建、迁移、备份等)
  • 自动化模板同步
  • 实时资源监控
  • VNC 控制台访问

快速体验

git clone https://github.com/pvesphere/pvesphere.git
cd pvesphere
make docker-compose-build

默认账号:[email protected] / Ab123456

访问: http://localhost:8080

技术栈

  • 后端:Go + Nunu 框架
  • 前端:Vue + vue-pure-admin
  • 部署:Docker Compose

适用场景

✅ 管理多个 PVE 集群
✅ 需要自动化模板分发
✅ 需要集中监控和管理

❌ 单集群用户(原生界面可能更合适)

项目地址

联系方式

博客原文

https://www.ljohn.cn/posts/91d244ba/

欢迎试用和反馈 🙌

平台地址:https://beta.spiritlhl.net/

平台搭建使用的开源项目:GitHub - oneclickvirt/oneclickvirt: Universal Virtualization Management Platform 可扩展的通用虚拟化管理平台,支持 LXD / Incus / Docker / Proxmox VE

欢迎仓库点一个 star 免费支持

平台使用有任何问题这里反馈,测试平台的 incus 类型的虚拟机和容器中

不要直接点首页的注册,直接点登录进入使用第三方登录注册,默认公开注册已关闭


📌 转载信息
原作者:
ECS
转载时间:
2026/1/5 12:20:41