1. linux 上 配置vncserver
vncserver是使用非常方便和廣泛的遠程桌面服務,配置也相對簡單。
下面記錄了在centos系統上進行配置vncserver的過程。
安裝
查看centos下是否已經安裝了vncserver
rpm -qa |grep vnc
如果未安裝vncserver,則進行安裝
yum install vnc vncserver
vncserver配置
vnc桌面的啟動方式有兩種,一種是通過在 /etc/sysconfig/vncservers文件中配置啟動,這種方式配置的vnc桌面在伺服器啟動的時候就被啟動,可以直接遠程連接;另一種是在機器運行的時候運行vncserver
:桌面號 命令來啟動,這種方式啟動的vnc桌面在機器重啟後失效。
1. 使用文件來進行配置
這種方式只能在root用戶下執行。
/etc/sysconfig/vncservers的配置:
1
2
3
4
5
# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600-nolisten tcp -localhost"
VNCSERVERS="1:root 2:jason"
VNCSERVERARGS[1]="-geometry 1600x1000-nolisten tcp -localhost"
VNCSERVERARGS[2]="-geometry 1600x1000-nolisten tcp -localhost"
其中指定了 桌面號:用戶名,以及相應的配置信息。
2. 使用vncserver命令來配置
這種方式可以在所有用戶下進行,每個用戶都可以開啟多個vnc遠程桌面,一個用戶的所有vnc桌面都使用相同的密碼,但是所有用戶的桌面號必須唯一。
1
2
3
4
5
6
7
8
9
usage: vncserver [:] [-name] [-depth ]
[-geometry x]
[-pixelformat rgbNNN|bgrNNN]
[-fp ]
[-fg]
[-autokill]
...
vncserver -kill
vncserver -list
可以通過vncserver命令新建桌面
vncserver :number 桌面號, -name 桌面名(顯示在vncviewer上), -depth 色深, -geometry 桌面大小。
或者刪除一個遠程桌面
vncserver -kill :桌面號
vnc桌面配置
每個用戶的~/.vnc目錄下都有一個 xstartup配置文件,來配置vnc使用的是 gnome桌面還是kde桌面,還有其他的一些信息。
如果你是gnome桌面,那麼你需要修改/root/.vnc/xstartup的配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/sh
[ -r /etc/sysconfig/i18n ] && ./etc/sysconfig/i18n
export LANG
export SYSFONT
vncconfig -iconic &
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
OS=`uname -s`
if [ $OS = 'Linux' ]; then
case "$WINDOWMANAGER" in
*gnome*)
if [ -e /etc/SuSE-release ]; then
PATH=$PATH:/opt/gnome/bin
export PATH
fi
;;
esac
fi
if [ -x /etc/X11/xinit/xinitrc ]; then
exec /etc/X11/xinit/xinitrc
fi
if [ -f /etc/X11/xinit/xinitrc ]; then
exec sh /etc/X11/xinit/xinitrc
fi
[ -r $HOME/.Xresources ] && xrdb$HOME/.Xresources
xsetroot -solid grey
xterm -geometry 80x24+10+10 -ls -title"$VNCDESKTOP Desktop" &
gnome-session gnome #添加這一句是連接時使用gnome 桌面環境
twm &
vncserver的服務端運行
vncserver運行:
service vncserver start
在運行的時候,每個用戶都可以通過vncserer命令開多個vnc遠程桌面(通過全局的桌面號來進行區分),且一個用戶的所有vnc桌面的密碼都相同(通過vncpasswd設置)。
每當用戶新開一個vnc桌面時,在用戶的 ~/.vnc 目錄下就會有一個對應的 伺服器機器名:桌面號.pid 的進程文件和伺服器機器名:桌面號.log 的日誌文件。
vnc客戶端的連接
a、在linux下,運行vncviewer命令即可,伺服器地址的寫法形如192.168.1.11:1
b、在windows下,運行windows版本的vncviewer即可,用法與linux下相近。
在centos7 下安裝配置vncserver
一.安裝
以root用戶運行以下命令來安裝vncserver;
yum install tigervnc-server
同樣運行以下命令來安裝vncviewer;
yum install vnc
停止並禁用防火牆
systemctl stop firewalld.service
systemctl disable firewalld.service
二.配置
vncviewer基本上不用配置;
vncserver的配置,創建一個新的配置文件,以開啟1號窗口為例(也可以同時開啟多個窗口,修改數字即可),方法如下:
cp /lib/systemd/system/[email protected]/etc/systemd/system/vncserver@:1.service
或者再增加一個窗口:
cp /lib/systemd/system/[email protected]/etc/systemd/system/vncserver@:2.service
編輯/lib/systemd/system/vncserver@:1.service,設置用戶root相關參數,最終內容如下:
[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 || :'
上述內容中最好設置為root用戶,否則可能會看到以下報錯:
vncserver@:1.service - Remote desktopservice (VNC)
Loaded: loaded (/usr/lib/systemd/system/vncserver@:1.service; enabled)
Active: failed (Result: exit-code) since Tue 2015-04-14 10:09:24 CST;1min 36s ago
Process: 3258 ExecStart=/sbin/runuser -l sysadmin -c /usr/bin/vncserver%i (code=exited, status=1/FAILURE)
Process: 3254 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i >/dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:Starting Remote desktop service (VNC)...
Apr 14 10:09:24 F1A-VMHOST-SWPErunuser[3258]: Password:
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:vncserver@:1.service: control process exited, code=exited status=1
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:Failed to start Remote desktop service (VNC).
Apr 14 10:09:24 F1A-VMHOST-SWPE systemd[1]:Unit vncserver@:1.service entered failed state.
Warning: Unit file changed on disk,'systemctl daemon-reload' recommended.
三.應用
更新systemctl以使其生效;
systemctl daemon-reload
設置vncserver的密碼;
vncpasswd root
按提示輸入密碼以及確認密碼
啟動該服務用來啟用vnc的1號窗口;
systemctl start vncserver@:1.service 或者vncserver :1
關閉1號窗口:
systemctl stop vncserver@:1.service 或者vncserver -kill:1
設置為開機自動啟動;
systemctl enable vncserver@:1.service
End.
轉自 嘉為教育-rhce認證_rhce培訓_linux培訓_linux認證_linux考證
2. Linux 中的配置文件在哪個目錄是由什麼決定的
配置文件位置取決於用什麼發行版。
通常情況下,用戶軟體的配置文件放在自已的 home 目錄回下,比如 /home/riku/ 下,一答般以 . 作為目錄開始字元,比如 .gnome 。
而系統軟體的配置文件一般放在 /etc/ 目錄下。
3. Centos7 VNC遠程桌面服務安裝配置
前提: 需要用 gnome 桌面,如果伺服器安裝時使用的最小化安裝,那麼進行下面操作按章 GNOME 桌面
開始安裝 vnc
修改配置文件
替換文件中的兩行,其實就是將USER>換成用戶名,這里我直接用root 用戶登錄
對於普通用戶,加入用戶名為:Amos
下面舉例進行設置: 首先一樣復制一個server配置。改名為vncserver@:2.service
修改配置文件
修改了配置文件,必須重載系統服務才能生效
設置 vnc 密碼, vnc 的密碼跟系統的用戶密碼不一樣,是使用 vnc viewer 登陸時需要使用的密碼
啟動服務
VNC服務到此已經安裝完成 然後需要使用vnc客戶端進行連接
4. linux 下 deepin 和 gnome 桌面的外觀設置
桌面的外觀設置一般包括窗口主題、圖標主題、游標主題和字體設置,其中窗口主題就是常見的 gtk 主題,字體設置又包括標准字體、等款字體和字體大小。對於進些年的高分屏,又添加了字體縮放和窗口縮放這2個選項。
界面上設置方法就不介紹了,都可以在各自桌面的控制中心中找到,這里主要介紹命令行下的。
deepin 和 gnome 桌面環境的外觀配置數據是使用 gsettings 來存儲,所以可以通過 gsettings 來設置和讀取。 gsettings 相比設置界面就是 可以設置到更多的選項,設置的值更加精確。
下面先簡單介紹下 gsettings 的用法。
其中 schema 是在 /usr/share/glib-2.0/schemas 這個目錄下, schema_id 是文件內容中 id 的值, key 就是文件中描述的,每個 key 都有一個默認值。
如 deepin 的主題配置文件是 com.deepin.dde.appearance.gchema.xml ,通過其文件開頭的內容 <schema path="/com/deepin/dde/appearance/" id="com.deepin.dde.appearance" gettext-domain="DDE"> 可知,其 schema_id 就是 com.deepin.dde.appearance 。
gnome 的外觀配置的 id 是 org.gnome.desktop.interface , deepin 的則是 com.deepin.dde.appearance 和 com.deepin.xsettings 。
通過命令 gsettings list-keys <schema_id> 可以查詢到所有支持的 key ,如查詢 gnome 支持的 key :
每個 key 的含義請閱讀對應的 schema 文件來查詢。
窗口主題對應的 key 是 gtk-theme ,值是字元串類型。
所有系統附帶的 gtk 主題都在 /usr/share/themes 目錄下。
如設置 Adapta 作為窗口主題
圖標主題的 key 是 icon-theme ,游標主題的 key 是 cursor-theme ,值都是字元串類型,系統附帶的圖標和游標主題都在 /usr/share/icons/ 目錄下。
主題的設置和獲取方法與上面的窗口主題一樣,這里就不再贅述了。
gnome 標准字體設置的 key 是 font-name ,等寬字體的 key 是 monospace-font-name ,值也都是字元串類型,字體的大小附加在字體名稱後面一起設置,如設置標准字體:
gsettings set org.gnome.desktop.interface font-name 'Cantarell 11'
deepin 下標准字體的 key 是 font-standard ,等寬字體的是 font-monospace ,值也是字元串類型。但它的字體大小是單獨在 font-size 中設置的,值是浮點數類型。
使用 gsettings 操作的方法就不再贅述了,與窗口主題一致。
gnome 下字體縮放的 key 是 text-scaling-factor ,它的值是浮點數類型;窗口縮放的 key 是 scaling-factor ,但它的值是無符號整型,即非負的整數。
deepin 下縮放的 schema_id 變為了 com.deepin.xsettings ,字體縮放的 key 是 scale-factor ,它的值也是浮點數類型;窗口縮放的 key 是 window-scale ,它的值也是無符號整型。
注意: 只有在設置 deepin 縮放時 schema_id 才是 com.deepin.xsettings ,其他的設置時都是 com.deepin.dde.appearance 。
以上介紹的設置方法在使用 deepin 或 gnome 作為桌面的 linux 發行版都可以適用,如 ubuntu , fedora 和 deepin 等,這些設置的改變桌面環境是會實時響應。
希望這些能夠幫助到你,如寫一個自動備份和恢復的腳本等...
如果你是想知道這些設置是如何生效的,請持續關注哦,本人計劃在下篇文章中介紹 deepin 下的實現原理,謝謝支持。