php 调用vnc协议,Centos7下部署VNC(示例代码)
#默認(rèn)已經(jīng)安裝圖形桌面服務(wù)了!
查看系統(tǒng)運(yùn)行模式
[root@localhost /]# systemctl get-default
graphical.target
#上面處于桌面服務(wù)級(jí)別
在centos中安裝VNC服務(wù)
[root@localhost /]#yum install tigervnc-server
配置VNC
1 #第一個(gè)用戶vncserver@:1.service,第二個(gè)用戶vncserver@:2.service,第三個(gè)用戶.......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文件內(nèi)容開始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"
#替換的內(nèi)容 =>root,以root用戶登錄16 PIDFile=/root/.vnc/%H%i.pid
#替換內(nèi)容/home/ => /root,就是家目錄下的用戶文件夾,可以找下文件夾下的.PID文件,這里是root所以不同一點(diǎn)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文件內(nèi)容結(jié)束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
修改防火墻規(guī)則,確認(rèn)VNC用戶登錄
偷懶方法:直接把防火墻關(guān)掉!
1 放行VNC登錄用戶端口,第一用戶5901,第二個(gè)用戶5902,依次類推2 [root@localhost ~]# firewall-cmd --zone=public --add-port=5901/tcp --permanent3
4 放行VNC服務(wù)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
啟動(dòng),關(guān)閉,重啟VNC
systemctl start vncserver@:1.service #啟動(dòng)
systemctl stop vncserver@:1.service #關(guān)閉
systemctl restart vncserver@:1.service #重啟
使用VNC服務(wù)連接(包括客戶端下載-安裝-使用)
VNC軟件下載地址:
https://www.realvnc.com/en/connect/download/viewer/
VNC Viewer安裝:
1、點(diǎn)擊OK,同意協(xié)議;
2、GOT IT
3、新建連接
注釋:
如果連接虛擬機(jī)中的Linux,要打開(如下圖):
端口可以使用?netstat -lp | grep -i vnc查詢(5900/5901/5902...基本就是這幾個(gè)之一)。
可能出現(xiàn)的錯(cuò)誤:
1、vnc服務(wù)起不來報(bào)錯(cuò),可以根據(jù)提示使用 systemctl status vncserver@:1.service查看到服務(wù)的啟動(dòng)過程在哪里出問題了;
2、我遇到的問題:
可能出現(xiàn)的問題有 圖形化服務(wù)未裝配,檢查本地圖形化服務(wù);
vncserver@:1.service文件里面替換的內(nèi)容錯(cuò)誤,例如找不到用戶家目錄下的PID文件,可以使用systemctl status vncserver@:1.service查看到報(bào)錯(cuò)信息;
記得使用?systemctl daemon-reload裝載配置文件;
其余我沒遇到問題,但是可以根據(jù)報(bào)錯(cuò)信息及日志判斷問題。
總結(jié)
以上是生活随笔為你收集整理的php 调用vnc协议,Centos7下部署VNC(示例代码)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 现金贷是什么平台
- 下一篇: 滨海国金所怎么升额度