前言
pve默认的控制台不能进行复制粘贴实在太不方便了,并且画面非常糊。而spice控制画面不仅清晰还可复制粘贴,缺点可能就是对于带宽资源比默认vnc大。
但是pve默认的spice端口3128对于使用家庭动态公网的用户来说并不友好,很多地区的宽带都进行了屏蔽(比如我)。
本篇文章就是对于spice默认端口的修改和spice启用的记录。
本文pve版本8.3,跟着本文修改成功的朋友可以在下方留言所使用的版本,我会添加在前言中以方便其他用户,万分感谢。
SPICE启用
启用
在pve虚拟机硬件选项中修改显示设置为SPICE就完成启用。就可在控制台中选择spice控制。
SPICE程序安装
官方下载地址:
x86:下载
x64:下载
安装好后直接打开控制台下载的.vv就可以控制了
SPICE端口修改
步骤 1:备份原始文件(重要!)
cp /usr/share/perl5/PVE/Service/spiceproxy.pm /root/spiceproxy.pm.bak
步骤 2:编辑模块文件
nano /usr/share/perl5/PVE/Service/spiceproxy.pm
找到这一行(Ctrl+w
→ 3128→ 回车):
my $socket = $self->create_reusable_socket(3128, $listen_ip);
✅ 修改为:
my $socket = $self->create_reusable_socket(65527, $listen_ip);
🔁 将
3128
改为65527
保存退出(Ctrl+O
→ 回车 → Ctrl+X
)
步骤 3:重启 spiceproxy
服务
systemctl restart spiceproxy
步骤 4:验证端口是否监听
ss -tulnp | grep 65527
✅ 成功输出应为:
tcp 0 0 0.0.0.0:65527 0.0.0.0:* LISTEN <PID>/spiceproxy
同理将下方都修改为需要的端口号:
/usr/share/perl5/PVE/AccessControl.pm proxy => "http://$proxy:3128",
/usr/share/perl5/PVE/API2Tools.pm my $port = $uri->port || 3128;
/usr/share/perl5/PVE/APIServer/AnyEvent.pm my $remport = $remip ? 3128 : $spiceport;
/usr/share/perl5/PVE/Service/spiceproxy.pm my $socket = $self->create_reusable_socket(3128, $listen_ip);
修改完后重启就完成了。