php 调用vnc协议,Centos7下部署VNC(示例代码)
#默認已經安裝圖形桌面服務了!
查看系統運行模式
[root@localhost /]# systemctl get-default
graphical.target
#上面處于桌面服務級別
在centos中安裝VNC服務
[root@localhost /]#yum install tigervnc-server
配置VNC
1 #第一個用戶vncserver@:1.service,第二個用戶vncserver@:2.service,第三個用戶.......2 [root@localhost /]# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service3
4 [root@localhost system]# vim /etc/systemd/system/vncserver@:1.service5 #vncserver@:1.service文件內容開始6 [Unit]7 Description=Remote desktop service (VNC)8 After=syslog.target network.target9
10 [Service]11 Type=forking12
13 # Clean any existing files in /tmp/.X11-unix environment14 ExecStartPre=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :‘
15 ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
#替換的內容 =>root,以root用戶登錄16 PIDFile=/root/.vnc/%H%i.pid
#替換內容/home/ => /root,就是家目錄下的用戶文件夾,可以找下文件夾下的.PID文件,這里是root所以不同一點17 ExecStop=/bin/sh -c ‘/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :‘
18
19 [Install]20 WantedBy=multi-user.target21 #vncserver@:1.service文件內容結束22 #注釋我這里是已root用戶作為登錄用戶,其他的作為登錄用戶替換方式相同23
24 [root@localhost /]# systemctl daemon-reload #重新加載配置文件
修改vnc黑名單限制
1 [root@localhost ~]# vim /etc/sysconfig/vncservers2
3 # THIS FILE HAS BEEN REPLACED BY /lib/systemd/system/vncserver@.service4
5 VNCSERVERS="1:root"
6 VNCSERVERARGS[1]="-geometry 1024x768 -BlacklistTimeout 0"
7
8
9 "/etc/sysconfig/vncservers" 7L, 155C
修改防火墻規則,確認VNC用戶登錄
偷懶方法:直接把防火墻關掉!
1 放行VNC登錄用戶端口,第一用戶5901,第二個用戶5902,依次類推2 [root@localhost ~]# firewall-cmd --zone=public --add-port=5901/tcp --permanent3
4 放行VNC服務5 [root@localhost ~]# firewall-cmd --add-service vnc-server6
7 #重啟防火墻8 firewall-cmd --reload9
10
11 [root@localhost ~]# netstat -lp | grep -i vnc12 tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 2489/Xvnc13 tcp 0 0 0.0.0.0:5902 0.0.0.0:* LISTEN 3897/Xvnc14 tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 2489/Xvnc15 tcp 0 0 0.0.0.0:6002 0.0.0.0:* LISTEN 3897/Xvnc16 tcp6 0 0 [::]:5901 [::]:* LISTEN 2489/Xvnc17 tcp6 0 0 [::]:5902 [::]:* LISTEN 3897/Xvnc18 tcp6 0 0 [::]:6001 [::]:* LISTEN 2489/Xvnc19 tcp6 0 0 [::]:6002 [::]:* LISTEN 3897/Xvnc20 unix 2 [ ACC ] STREAM LISTENING 39621 2489/Xvnc @/tmp/.X11-unix/X121 unix 2 [ ACC ] STREAM LISTENING 53127 3897/Xvnc @/tmp/.X11-unix/X222 unix 2 [ ACC ] STREAM LISTENING 39622 2489/Xvnc /tmp/.X11-unix/X123 unix 2 [ ACC ] STREAM LISTENING 53128 3897/Xvnc /tmp/.X11-unix/X2
啟動,關閉,重啟VNC
systemctl start vncserver@:1.service #啟動
systemctl stop vncserver@:1.service #關閉
systemctl restart vncserver@:1.service #重啟
使用VNC服務連接(包括客戶端下載-安裝-使用)
VNC軟件下載地址:
https://www.realvnc.com/en/connect/download/viewer/
VNC Viewer安裝:
1、點擊OK,同意協議;
2、GOT IT
3、新建連接
注釋:
如果連接虛擬機中的Linux,要打開(如下圖):
端口可以使用?netstat -lp | grep -i vnc查詢(5900/5901/5902...基本就是這幾個之一)。
可能出現的錯誤:
1、vnc服務起不來報錯,可以根據提示使用 systemctl status vncserver@:1.service查看到服務的啟動過程在哪里出問題了;
2、我遇到的問題:
可能出現的問題有 圖形化服務未裝配,檢查本地圖形化服務;
vncserver@:1.service文件里面替換的內容錯誤,例如找不到用戶家目錄下的PID文件,可以使用systemctl status vncserver@:1.service查看到報錯信息;
記得使用?systemctl daemon-reload裝載配置文件;
其余我沒遇到問題,但是可以根據報錯信息及日志判斷問題。
總結
以上是生活随笔為你收集整理的php 调用vnc协议,Centos7下部署VNC(示例代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 现金贷是什么平台
- 下一篇: php set error handle