在Ubuntu上使用TigerVNC实现远程打印的步骤
首先更新软件包列表,然后安装TigerVNC服务器及常用组件:
sudo apt update
sudo apt install tigervnc-standalone-server tigervnc-common
安装完成后,设置VNC访问密码(首次运行会提示创建密码):
vncpasswd
编辑VNC启动配置文件~/.vnc/xstartup(若不存在则创建),添加以下内容以启动轻量级桌面环境(如Xfce,适合远程使用):
#!/bin/sh
xrdb $HOME/.Xresources
startxfce4 &
赋予文件执行权限:
chmod +x ~/.vnc/xstartup
使用以下命令启动VNC服务(:1表示显示号,对应端口5901,可根据需要调整):
vncserver :1
在Ubuntu服务器上安装CUPS服务,用于管理打印机:
sudo apt install cups
sudo systemctl start cups
sudo systemctl enable cups # 开机自启
编辑CUPS配置文件/etc/cups/cupsd.conf,找到<Location />段落,修改为允许所有IP访问(生产环境建议限制为特定IP):
<Location />
Order allow,deny
Allow all
</Location>
重启CUPS服务使配置生效:
sudo systemctl restart cups
在需要远程打印的计算机(如另一台Ubuntu或Windows)上安装CUPS客户端工具:
# Ubuntu客户端
sudo apt install cups-client
打开浏览器,访问服务器CUPS管理界面(将服务器IP替换为实际IP):
http://服务器IP:631
登录后,点击“Administration”→“Add Printer”,选择“Network Printer”,输入服务器IP和打印机名称(如HP_LaserJet),按照提示完成打印机添加。
在客户端计算机上,打开任意文档(如文本文件、图片),点击“打印”,选择刚添加的远程打印机(如HP_LaserJet),点击“打印”。文档将通过VNC连接发送到服务器,使用服务器上的打印机进行打印。
5901端口)和CUPS(631端口)通信。例如,使用ufw防火墙时,可运行:sudo ufw allow 5901/tcp
sudo ufw allow 631/tcp
ssh -L 5901:localhost:5901 user@server_ip),避免密码泄露。