以下內容和方法均爲親測實踐總結得出:
1.切換權限:sudo su root
*可選輸入步驟(非必要操作步驟):
*安裝額外yum源
yum install epel-release
*查看目前有哪些可用源 (搜索yum包可以使用命令yum search 關鍵字)
yum grouplist
2.安裝Xfce
yum groupinstall Xfce -y
3.安裝vnc-server或者tigervnc-server
yum install vnc-server -y 或者yum install tigervnc-server -y
4.修改vnc啓動配置文件
vi /root/.vnc/xstartup
默認配置文件:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec /etc/X11/xinit/xinitrc
修改後的配置文件:
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
#exec /etc/X11/xinit/xinitrc <--註釋這一行
startxfce4 <--添加這一行,或者exec startxfce4
*安裝gnome桌面則添加的啓動桌面語句爲 exec gnome-session
*安裝gnome桌面並修改配置後,要重啓服務器reboot才能使用vncserver進入到有桌面的遠程界面,否則不重啓就直接vncserver進去後會沒有圖形界面。
5.啓動vnc服務,自動提示設置vncpasswd,也可後期自己通過vncpasswd更改密碼
啓動vnc可選命令一:默認順序打開窗口,從1開始
vncserver
啓動vnc可選命令二:打開指定窗口n
vncserver :n 如:vncserver :2 打開2號窗口,即5902端口(5900+n)
PS:防火牆要放行相應端口,在阿里雲服務器防火牆頁面添加規則,放行5900,5901,5902等(5900+n)需要用到的相應端口。
啓動vnc服務的第二種方法(到啓動vnc前的步驟都和上面一樣)
a.首先拷貝所需打開服務窗口號的配置文件
如下,以拷貝1號窗口的服務配置文件爲例
cp /lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service
/etc/systemd/system下面的、vncserver@後面的冒號數字,表示服務實例編號,可以配置多個服務實例,指定不同的編號的即可。 VNC的服務端口從5900開始,根據服務實例編號增加,比如示例的vncserver@:1.service,對應的端口號就是5901,如果是vncserver@:12.service,那對應的端口號就是5912。
b.然後修改所需打開服務窗口的配置文件
vi /etc/systemd/system/vncserver@:1.service
打開文件後,可以看到如下注釋,其實即運行vnc服務的第二種方法的具體步驟
# The vncserver service unit file
#
# Quick HowTo:
# 1. Copy this file to /etc/systemd/system/[email protected]
# 2. Replace <USER> with the actual user name and edit vncserver
# parameters appropriately
# (ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
# PIDFile=/home/<USER>/.vnc/%H%i.pid)
# 3. Run `systemctl daemon-reload`
# 4. Run `systemctl enable vncserver@:<display>.service`
將配置文件中的
ExecStart=/sbin/runuser -l <USER>-c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid
這兩行中的替換爲需要通過vnc遠程登錄的用戶名。
其中第二行的/home是用戶的home目錄;如果是root則是/root,即PIDFile=/root/.vnc/%H%i.pid。
c.設置vnc密碼(隻影響執行命令的用戶,比如當前是root用戶,就只設置了root的vnc登錄密碼)
vncpasswd
d.刷新服務、設置自啓、啓動服務
systemctl daemon-reload
systemctl enable vncserver@:1.service <--設置該1號窗口爲開機自啓,可選輸入步驟
systemctl start vncserver@:1.service
PS:普通用戶權限下和ROOT用戶權限下使用命令vncserver 啓動的VNC服務號是相互獨立,而且在沒有使用第二種方法啓動VNC服務的情況下所得到的效果也是不一樣的。(前者黑屏,後者有桌面。前者可以通過修改vi /home/admin/.vnc/xstartup來解決黑屏問題,具體修改內容參照文章上面第4點)
停止進程命令:
vncserver -kill :n (注意kill後面要有空格,否則執行報錯)
systemctl stop vncserver@:n(僅限於第二種方法創建vnc服務時使用)PS:Linux VPS使用圖形化界面佔用資源仍比字符界面多,雖說輕量級,但還是見仁見智。
參考自:https://www.linuxidc.com/Linux/2017-12/149718.htm
https://blog.csdn.net/mihou_qust/article/details/44162739
https://blog.csdn.net/huang_tg/article/details/5631178
https://blog.csdn.net/smstong/article/details/44802989#32-安裝x-window-system
https://www.cnblogs.com/k98091518/p/6908364.html
https://blog.csdn.net/qq_26412205/article/details/50589655