Centos7安裝tigervnc-server並配置開機自啓動

一、環境說明及前提條件

操作系統:Centos7.9;

操作用戶:root;

Liunx桌面環境:GNOME Destop,必須要安裝有一個桌面環境(KDE\GNOME\Unity\Mate選一個),否則安裝tigervnc-server不起任何作用(該版本操作系統已經默認安裝了該桌面環境);

Vnc服務端:tigervnc-server;

Vnc客戶端: VNC-Viewer(安裝在Windows系統下),用於遠程訪問Linux桌面;

確保防火牆關閉;

# systemctl status firewalld.service
# 顯示以下內容表示防火牆已經關閉
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)

Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete FORWARD --in-interface virbr...at chain?).
Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete FORWARD --out-interface virb... that name.
Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete FORWARD --in-interface virbr... that name.
Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete INPUT --in-interface virbr0 ...at chain?).
Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete INPUT --in-interface virbr0 ...at chain?).
Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete OUTPUT --out-interface virbr...at chain?).
Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete INPUT --in-interface virbr0 ...at chain?).
Mar 05 10:06:45 localhost.localdomain firewalld[1954]: 2021-03-04 21:06:45 ERROR: COMMAND_FAILED: '/sbin/iptables -w2 -w --table filter --delete INPUT --in-interface virbr0 ...at chain?).
Mar 05 10:12:07 localhost.localdomain systemd[1]: Stopping firewalld - dynamic firewall daemon...
Mar 05 10:12:08 localhost.localdomain systemd[1]: Stopped firewalld - dynamic firewall daemon.
Hint: Some lines were ellipsized, use -l to show in full.

二、安裝Vnc服務端

# 安裝Vnc服務端命令
# yum install -y tigervnc-server
# 卸載Vnc服務端命令
# yum erase -y tigervnc-server

出現以下提示既表示安裝成功!筆者這裏是因爲把操作系統的環境設置成了中文

安裝成功後,通過"vncpasswd"命令設置當前Linux用戶的Vnc密碼,用於Vnc客戶端登錄時的安全驗證,該密碼與Liunx用戶本身的密碼不會衝突。

# vncpasswd
按照提示輸入兩次密碼,該密碼與Liunx用戶本身的密碼不會衝突
Password:
Verify:
Would you like to enter a view-only password (y/n)? n
A view-only password is not used

通過"vncserver"命令啓動Vnc服務,Vnc默認端口是5900+後面啓動的序號

# vncserver 命令用法
# vncserver --help
usage: vncserver [:<number>] [-name <desktop-name>] [-depth <depth>]
                 [-geometry <width>x<height>]
                 [-pixelformat rgbNNN|bgrNNN]
                 [-fp <font-path>]
                 [-cc <visual>]
                 [-fg]
                 [-autokill]
                 [-noxstartup]
                 [-xstartup <file>]
                 [-fallbacktofreeport]
                 <Xvnc-options>...

       vncserver -kill <X-display>

       vncserver -list

# 啓動1號桌面
# vncserver :1
# 啓動桌面時出現的提示,啓動後的日誌在{用戶目錄}/.vnc下,我這邊是用的root賬號,如果是其他賬號在/home/{user}/.vnc/目錄下
# 如果通過vncserver -list沒有發現沒有啓動成功,可去此處查看相關日誌,同時結合"journalctl -xe"命令查看詳細錯誤

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


# 關閉1號桌面
# vnserver -kill :1
# 執行關閉命令時出現的提示
Killing Xvnc process ID 446228


# 查看當前用戶下所有桌面
# vncserver -list
TigerVNC server sessions:

X DISPLAY #	PROCESS ID
:1		22182

 在Windows服務器上通過Vnc Viewer通過遠程桌面操作Linux

新建連接

點擊"ok"按鈕,然後雙擊連接

輸入剛纔通過"vncpasswd"設置的密碼

出現以下桌面既連接成功

三、配置開機自啓動

# 拷貝服務配置文件(systemctl)至/etc/systemd/system
# cp /usr/lib/systemd/system/[email protected] /etc/systemd/system
# cd /etc/systemd/system
# 編輯該配置文件,修改以下內容
# vim [email protected]

配置完成後執行以下命令,用於開啓一個或者多個Vnc窗口服務

# systemctl daemon-reload

# 參考上面配置文件中第四步:systemctl enable vncserver@:<display>.service
# systemctl enable vncserver@:1.service
# 需要開通多個遠程服務,可以依次往下
# systemctl enable vncserver@:2.service
# systemctl enable vncserver@:3.service
# ......

啓動Vnc窗口服務

# 啓動Vnc窗口1服務
# systemctl start vncserver@:1.service
# 關閉Vnc窗口1服務
# systemctl stop vncserver@:1.service
# 查看Vnc窗口1的服務狀態
# systemctl status vncserver@:1.service

後續客戶端連接步驟同上。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章