VNC連接Centos圖形化界面
Linux系統在服務器上一般都直接最小化安裝,是不安裝圖形界面的,但是有時候,有一些特殊情況,需要使用圖形界面,而下面就利用VNC來實現類似windows的遠程桌面功能。
gnome桌面
首先,系統需要有圖形界面,可以在安裝系統的時候一起安裝gnome,或者后面再安裝也行。
前提: 需要用gnome桌面,如果服務器安裝時使用的最小化安裝,那么進行下面操作按章GNOME 桌面
yum grouplist
# 列出的組列表里有GNOME Desktop。安裝之
yum groupinstall -y "GNOME Desktop"
# 安裝完成后,重啟服務器,修改默認啟動方式為圖形化界面
#設置成圖形模式
systemctl set-default graphical.target
# 如果要換回來
systemctl set-default multi-user.target //設置成命令模式
# 然后重啟即可,或者startx開啟圖形界面。第一次啟動可能時間會長一點,耐心等待即可。
備注:這里安裝圖形化后重啟一次,然后設置圖形化界面
1. 安裝vnc server
yum install tigervnc-server -y
2. 設置為服務
2.1配置root用戶
# 復制一個服務設置的模板
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
# 修改此服務配置
# 以下為root用戶的配置,每一個用戶,都需要單獨設置一個監聽服務。且配置不同
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=-/usr/bin/vncserver -kill %i
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=-/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
備注:vncserver@:1.service 此文件 在終端中顯示可能會多一個 “\” , 實際上是同一個文件,請不要在意。
每一個用戶,都需要單獨設置一個監聽服務。且配置不同
2.2配置普通用戶
下面舉例進行設置: 首先一樣復制一個server配置。改名為vncserver@:2.service,配置普通用戶jim
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service
# 然后進行修改
vim /etc/systemd/system/vncserver@\:2.service
--------------------------------------------------------------------------------------------------------
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=simple
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=-/usr/bin/vncserver -kill %i
#注意這里的<user>更新為目標用戶
ExecStart=/sbin/runuser -l <user> -c "/usr/bin/vncserver %i"
#注意這里的<user>更新為目標用戶
PIDFile=/home/<user>/.vnc/%H%i.pid
ExecStop=-/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
備注:此種設置方式 會出現問題但是可以正常使用status是failed,但是用戶可以訪問
注意
替換為需要設置的用戶,共計更新兩個
備注:
每次配置完成后要使用這個命令:
重啟systemd
systemctl daemon-reload
3. 設置vnc密碼
設置vnc密碼,vnc的密碼跟系統的用戶密碼不一樣,是使用vnc viewer登陸時需要使用的密碼。
注意:設置普通用戶時候,記得切換到普通用戶。
[root@localhost ~]# vncpasswd
Password:
Verify:
Would you like to enter a view-only password (y/n)? n
A view-only password is not used
# 這里不添加只讀賬號密碼
# 每個不用的系統用戶,設置密碼時,需要切換到該用戶下,執行此命令
# 如:su jim 切換到jim用戶再執行上vncpasswd設置密碼
4. 啟動服務,開通端口
# 開啟服務
systemctl start vncserver@:1
# 設為開機啟動
systemctl enable vncserver@:1
# 查看服務監聽的端口,根據監聽的端口,進行端口開放,每個用戶會對應一個端口,第一個用戶默認為5901端口。我這里是root用戶
netstat -lnpt|grep Xvnc
# 查看進程
ps -ef | grep vnc
5. 報錯信息
5.1 錯誤1
Job for vncserver@:1.service failed because the control process exited with error code. See "systemctl status vncserver@:1.service" and "journalctl -xe" for details.
編輯/etc/systemd/system/vncserver@:1.service配置文件:
將Type=forking改為Type=simple
6 vnc客戶端連接
vnc server的官方下載地址
根據自己的電腦的操作系統選擇進行下載,我這里是windows,所以選擇windwos 64位版。下載后直接使用,不需要進行安裝。
然后打開vnc viewer:
之后輸入前面設置的vnc密碼即可登錄。