共計 6168 個字符,預計需要花費 16 分鐘才能閱讀完成。
這篇文章主要為大家展示了“Red Hat 7 vncserver 如何配置”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓丸趣 TV 小編帶領大家一起研究并學習一下“Red Hat 7 vncserver 如何配置”這篇文章吧。
首先,配置好 yum 源,查詢 vncserver 需要安裝什么包,然后安裝。
[root@localhost ~]# yum provides vncserver
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
yum | 4.1 kB 00:00:00
(1/2): yum/group_gz | 134 kB 00:00:00
(2/2): yum/primary_db | 3.4 MB 00:00:00
yum/filelists_db | 3.0 MB 00:00:00
tigervnc-server-1.2.80-0.30.20130314svn5065.el7.x86_64 : A TigerVNC server
Repo : yum
Matched from:
Filename : /usr/bin/vncserver
[root@localhost ~]# yum install tigervnc-server-1.2.80-0.30.20130314svn5065.el7.x86_64 -y
Installed:
tigervnc-server.x86_64 0:1.2.80-0.30.20130314svn5065.el7
Complete!
這樣 vncserver 就安裝好了,通過命令 vncserver 可以啟動或進行管理,首次啟動 vncserver,會提示修改密碼。此密碼為 vnc 客戶端連接時使用。
[root@localhost ~]# vncserver
New localhost.localdomain:1 (root) desktop is localhost.localdomain:1
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost.localdomain:1.log
用 vncserver 啟動,默認會從最低端口(1)啟動,之后依次遞增,如果想指定 vnc 端口,可以使用 ncserver [: port_number]
[root@localhost ~]# vncserver :2016
New localhost.localdomain:2016 (root) desktop is localhost.localdomain:2016
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost.localdomain:2016.log
通過 vncserver -list 可以查看當前運行的 vnc 信息
[root@localhost ~]# vncserver -list
TigerVNC server sessions:
X DISPLAY # PROCESS ID
:1 8167
:2016 8670
通過 vncserver -kill : port_number 可以關閉 vnc 端口
[root@localhost ~]# vncserver -kill :1
Killing Xvnc process ID 8167
當然,客戶端要訪問 vnc 還得經過防火墻的同意,需要在防火墻放行 vnc 或者直接關閉防火墻。這里測試了下,在防火墻放行之后,默認通過 vncserver 啟動的端口訪問,但是通過 vncserver :port_number 指定端口啟動的還是無法訪問,求解。
防火墻配置放行 vncserver
[root@localhost ~]# firewall-cmd --permanent --add-service=vnc-server
success
[root@localhost ~]# firewall-cmd --reload
success
或者關閉防火墻,并且禁止防火墻開機自啟。[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
rm /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service
rm /etc/systemd/system/basic.target.wants/firewalld.service
以上,vnc 的安裝配置就基本完成了。接下來需要配置 vncserver 開機啟動了。
使用 rpm- qc tigervnc-server 查詢 vncserver 的配置。
得知配置文件被轉移到了 /lib/systemd/system/vncsercer@.server,文件的頭部有詳細的說明。
[root@localhost ~]# rpm -qc tigervnc-server
/etc/sysconfig/vncservers
[root@localhost ~]# cat /etc/sysconfig/vncservers
# THIS FILE HAS BEEN REPLACED BY /lib/systemd/system/vncserver@.service
[root@localhost ~]# head /lib/systemd/system/vncserver@.service
# The vncserver service unit file
# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/vncserver@: display .service
# 2. Edit USER and vncserver parameters appropriately
# (runuser -l USER -c /usr/bin/vncserver %i -arg1 -arg2)
# 3. Run `systemctl daemon-reload`
# 4. Run `systemctl enable vncserver@: display .service`
# DO NOT RUN THIS SERVICE if your local area network is
配置方法:
1. 復制當前文件 (/lib/systemd/system/vncsercer@.server) 到 /etc/systemd/system/vncserver@: display .server 這里 display 為啟動的端口
2. 編輯復制后的文檔,把兩處 USER 替換成需要啟動的用戶。需要注意的是如果用 root 啟動,root 的家目錄為 /root,而非 /home/root
3. 運行 systemctl daemon-reload 重新加載配置
4. 運行 systemctl enable vncserver@: display .service 配置成開機自啟
[root@localhost ~]# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
[root@localhost ~]# vim /etc/systemd/system/vncserver@:1.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i /dev/null 2 1 || :
ExecStart=/sbin/runuser -l root -c /usr/bin/vncserver %i # 修改此行的用戶名
PIDFile=/root/.vnc/%H%i.pid # 修改此行的用戶家目錄
ExecStop=/bin/sh -c /usr/bin/vncserver -kill %i /dev/null 2 1 || :
[Install]
WantedBy=multi-user.target
[root@localhost ~]# systemctl daemon-reload
[root@localhost ~]# systemctl start vncserver@:1.service (此處手動啟動)[root@localhost ~]# systemctl status vncserver@:1.service (查看運行情況 為 active)
vncserver@:1.service - Remote desktop service (VNC)
Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled)
Active: active (running) since Fri 2016-01-22 17:00:34 CST; 7s ago
[root@localhost ~]# vncserver -list
TigerVNC server sessions:
X DISPLAY # PROCESS ID
:1 9959
[root@localhost ~]# systemctl enable vncserver@:1.service 確定手動啟動沒問題后加入自啟)[root@localhost ~]# reboot (重啟測試)
Last login: Fri Jan 22 16:30:36 2016 from 192.168.175.1
[root@localhost ~]# vncserver -list (重啟后查看 vnc 已經啟動了。)TigerVNC server sessions:
X DISPLAY # PROCESS ID
:1 1522
[root@localhost ~]# ps -ef |grep vnc
root 1522 1 1 17:10 ? 00:00:00 /usr/bin/Xvnc :1 -desktop localhost.localdomain:1 (root) -auth /root/.Xauthority -geometry 1024x768 -rfbwait 30000 -rfbauth /root/.vnc/passwd -rfbport 5901 -fp catalogue:/etc/X11/fontpath.d -pn
root 1907 1 0 17:10 ? 00:00:00 /usr/bin/vncconfig -iconic
root 3167 3120 0 17:11 pts/0 00:00:00 grep --color=auto vnc
至此,vncserver 的配置就已經完成了。
過程中,有一次不知道誤操作了什么,1 號端口一直啟動不了。查看不到進程,卻一直提示已經啟動,重啟自啟也失敗。
[root@kvm02 ~]# systemctl status vncserver@\:1.service
vncserver@:1.service - Remote desktop service (VNC)
Loaded: loaded (/usr/lib/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Fri 2016-01-22 21:28:33 CST; 1min 35s ago
Process: 1154 ExecStart=/sbin/runuser -l root -c /usr/bin/vncserver %i (code=exited, status=2)
Process: 1132 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i /dev/null 2 1 || : (code=exited, status=0/ SUCCESS)
[root@kvm02 .vnc]# vncserver :1
A VNC server is already running as :1
[root@kvm02 .vnc]# ps -ef |grep vnc
root 7146 1667 0 22:29 pts/0 00:00:00 grep --color=auto vnc
最后在一次啟動中發現了 /tmp/.X11-unix/ 下有個文件鎖住了。切換到目錄下刪除文件,就可以了。
報錯信息:Warning: kvm02:1 is taken because of /tmp/.X11-unix/X1
Remove this file if there is no X server kvm02:1
解決:[root@kvm02 ~]# cd /tmp/.X11-unix
[root@kvm02 .X11-unix]# rm -rf * (刪除了所有文件,此處沖動了,其實只要刪除 X1 就好了)[root@kvm02 .X11-unix]# vncserver (刪除過后就可以正常啟動了)xauth: (stdin):1: bad display name kvm02:1 in add command
New kvm02:1 (root) desktop is kvm02:1
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/kvm02:1.log
以上是“Red Hat 7 vncserver 如何配置”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!