歡迎您光臨本站 註冊首頁

ubuntu下conky配置

←手機掃碼閱讀     火星人 @ 2014-03-26 , reply:0

Conky是一個建設在X-window之上的系統監視工具,它佔用系統資源非常小而功能卻非常強大,如果你懂得shell編程,那麼conky的功能可以說是無所不能了。同時,Conky是在根窗口上繪製界面,因此本身就支持透明,可以和桌面完美地結合在一起,如果你願意,Conky也可以以窗口的形式運行。

當然,即使你不懂shell,根據下面的教程,你也能一步步學會使用conkey。

1、獲取conky。

sudo apt-get install conky

或者登錄conky的主頁下載,編譯。
推薦用第一種。

2、配置conky

Conky 安裝后不會為當前用戶創建配置文件,而是使用系統級默認配置文件,這時候需要使用下列命令手動生成當前用戶的配置文件:

zcat /usr/share/doc/conky/examples/conkyrc.sample.gz > ~/.conkyrc

當然,默認的配置文件是比較丑的,也不適合每個人,所以還需要進行個性化配置。不過它的配置文件初看起來非常亂,給人一種無所適從的感覺。其實Conky的配置參數並不多,只要掌握了規律還是非常容易入手的,下面參照我的配置方案分析一下:

我的配置方案是基於Conky官方網站上一個非常受歡迎的樣式的配置文件修改而來的,不過原版由於字體的原因不支持中文,這裡我去掉了一些不適合我的元素,增加了幾個我需要的參數,效果圖如下(點擊查看全屏截圖):


當然,你也可以在Conky的官網獲得其它幾種配置文件來參考,該頁面在這裡。

首先,Conky的配置文件分為兩個部分,第一部分對Conky的全局屬性做設定,比如字體、嵌入桌面等等;第二部分是定義Conky的輸出格式,也就是Conky呈現在桌面上的樣式。

在全局屬性的部分,重要的參數有:

1、background no:是否嵌入桌面,「no」表示不嵌入;「yes」表示嵌入。

2、out_to_console no:是否輸出結果到終端,主要在判斷Conky在哪裡出錯時使用,一般情況下為「no」即可。

3、use_xft yes:是否使用xft字體,一般為「yes」。

4、xftfont Monospace:size=8:設置一個默認字體,在下面的樣式定義段可以特別定義使用別的字體,如不特別指定,則使用默認字體;這裡最好選則一個等寬中文字體,比如我這裡選的就是「Monospace」,字體大小為「8」。

5、update_interval 1:刷新時間。Conky需要每隔一段時間讀取一次要監視的系統狀態並把結果輸出到屏幕上,設定的時間間隔越短,監控的實時性越好,但系統負擔也越重;間隔時間越長則系統負擔越輕,但是監控的實時性越差。我這裡設定為1秒。

6、minimum_size 280 5:設定Conky的邊界範圍,最小寬度為280像素,最小高度為5像素,一般沒有用,我這裡沒有使用,前面插入「#」號表示註釋掉。

7、maximum_width 308:Conky邊界範圍最大寬度308像素,很多時候用這個參數來限制Conky的邊界。

8、default_color white:設定Conky默認顏色,在樣式定義中可以設定使用任何一種顏色,如果沒有設置則採用預設的顏色。這裡設定預設顏色為「white」,也可以用16位值表示的顏色值,如「#0A0F00」。

9、gap_x 10
gap_y 10:以上兩條設定Conky輸出範圍距離屏幕邊界的像素數量,最小為10像素。
alignment top_right:設定Conky輸出範圍在屏幕上的位置,「top_right」表示右上方,依此類推,「bottom_left」是左下角。

10、uppercase no:如果值設為「yes」則所有輸出的文字都變成大寫字母。

下面介紹一下輸出樣式定義區:

Conky樣式定義的語法和編寫網頁有點相似,首先,以字元「TEXT」標誌樣式定義的開始。Conky樣式的定義以行為單位,每一行對應Conky輸出到屏幕時的一行。

每一行可以分為樣式屬性、文字和元素。其中樣式屬性和元素都以「$」開頭,並包含在「{}」裡面,「${}」應該放在應用目標的前面。

樣式屬性如顏色、字體大小、停靠位置等,其中,顏色的定義格式為:

${color #5000a0}

其中的16位值色可以用X中定義的顏色名稱代替,如:

${color snow}

你可以在/etc/X11/rgb.txt中找到全部顏色的列表。

字體屬性的定義格式如下:

${font Monospace:style=Bold:size=10}

上面三個字體屬性中任何一個不設定則使用上面定義的默認值。

${alignr}表示以該參數定義的元素向右對齊,${alignl}表示左對齊,${alignc}表示居中對齊。

需要注意的是,${}中定義的顏色和字體屬性將一直影響到Conky配置文件的最後,即如果你在前面定義了第一行的顏色為「white」,那麼以後各行的顏色都是白色。所以原則上你需要為每一行甚至每一行的各個元素設定顏色或者字體屬性。

文字即Conky顯示在屏幕上的文字,它不需要特別的定義,你希望Conky顯示什麼文字就添加什麼文字即可。

元素即呈現在屏幕上的那些進度條、你要監視的系統狀態等等,格式為:

${監視目標 參數}

如果沒有參數,也可以直接使用

$監視目標

的格式。

下面介紹一些常用的元素和其參數的格式:

1、time:採用strftime的參數格式,其參數有好幾個,可以到這裡查找適合自己的參數並布置其格式。如我這裡設置為:

${color lightgrey}${font Monospace:style=Bold:size=8}${time %b%d日星期%a}${alignr}${time %p%l:%M:%S}

即輸出字體為Monospace、字體大小為8像素、粗體、顏色為lightgrey,依次輸出月、日、星期幾,後面以12小時格式輸出時間並向右對齊。

2、nodename:本機在網路上的名稱。
sysname:如Linux。
kernel:內核版本。
machine:硬體系統類型,如i686。

3、stippled_hr:在本行餘下的空間輸出虛線,多用於分隔區塊。

4、uptime:系統持續運行時間。

5、cpu:CPU實時佔用百分比。
cpubar:CPU佔用的進度條樣式。
cpugraph:CPU佔用的頻譜圖樣式。該元素可以加兩個顏色值作參數,實現顏色漸變:

${cpugraph 000000 5000a0}

6、mem:內存實時佔用大小。
memmax:內存總量。
memperc:內存實時佔用百分比。
swap、swapmax、swapperc是虛擬內存的相應參數。

7、processes:正在運行的進程數。
running_processes:活躍的進程數。

8、addr ppp0:顯示ADSL撥號建立的連接的IP地址,「addr eth0」表示顯示第一塊網卡的IP地址。

9、offset 70:表示相對於當前位置向右偏移70像素。

10、downspeed eth0:第一塊網卡下載數據的實時速度。
upspeed eth0:第一塊網卡上傳數據的實時速度。
downspeedgraph eth0 32,150 ff0000 0000ff:以頻譜圖的樣式顯示第一塊網卡下載速度,高度為32像素,寬度為150像素,後面是兩種顏色,用於漸變色。
upspeedgraph eth0 …:用法同上。

11、fs_used /home:顯示掛載到/home文件夾下的硬碟分區的使用量。
fs_size /home:顯示掛載到/home文件夾下的硬碟分區的總量。
fs_bar /home:以進度條樣式顯示掛載到/home文件夾下的硬碟分區的佔用量。

12、top name 1:按CPU佔用從大到小排序當前進程並顯示第一個的名字。
top mem 2:按CPU佔用從大到小排序當前進程並顯示第二個的內存佔用量。
top pid 3:按CPU佔用從大到小排序當前進程並顯示第三個的pid號。
top cpu 4:按CPU佔用從大到小排序當前進程並顯示第四個的CPU佔用量。
top_mem按內存佔用從大到小排序當前進程。

13、mpd_status:監視mpd的狀態。
mpd_elapsed:歌曲的已播放時間。
mpd_length:當前播放歌曲的長度。
mpd_bar:當前播放歌曲的進度條。
mpd_smart:智能判斷當前歌曲的輸出信息,如果id3可用,則輸出」歌手-歌名「的格式,如果id3不可用,則輸出當前歌曲的文件名。

除mpd外,Conky支持對audacious、bmp、xmms的監視。

14、rss:訂閱一個feed並顯示其最新的幾個條目的標題等信息,如

${rss http://feed.feedsky.com/my_cnbeta 5 item_titles 10}

即每隔五分鐘獲取該源的最新條目,並輸出最新的十個條目的標題。

15、tcp_portmon:監視當前使用的埠,目前只支持IPv4。使用格式為:

tcp_portmon port_begin port_end item (index)

16、電子郵件監視:通過設置fechmail並在配置文件中加入相關參數,Conky可以實現對電子郵箱的監視,每隔一段時間fechmail會收取伺服器上的郵件,Conky會監視系統中的mail管道並顯示未閱讀的郵件的數量。
考慮到安全性,我沒有設置郵件監視,不過可以在這裡找到Conky監視郵件的設置方法。

17、exec:執行一個shell命令並把結果輸出到屏幕上。如,我這裡使用:

${exec whoami}

輸出當前用戶名。

18、acpitemp:監視並輸出CPU溫度,攝氏溫標。Conky支持很多種CPU溫度監視方案。

19、diskio:監視當前硬碟讀寫速度。
diskiograph:以頻譜形式輸出硬碟讀寫頻度,用法如cpugraph。

使Vim支持Conky配置文件的語法高亮

默認情況下,Vim不認識Conky的配置文件,使用Vim打開「.conkyrc」文件無法實現語法高亮。

首先,到這裡下載Vim的Conky配置文件語法高亮插件。然後將其複製到用戶主目錄下的「.vim/syntax」文件夾(如果沒有則新建)里。最後在 「.vim/ftdetect」文件夾里建立一個新文件,命名為「conkyrc.vim」,在裡面添加如下內容:

au BufNewFile,BufRead *conkyrc set filetype=conkyrc

再打開Conky的配置文件就可以實現語法高亮了。

conky閃爍問題

在安裝之後默認狀態下並不會閃爍,但是經過配置之後就往往會出現閃爍的問題。解決辦法如下:
sudo apt-get install wmctrl
sudo vim /etc/X11/xorg.conf
在Module段加入一行:
Load 「dbe」
保存後退出。

設置conky的配置文件:
vim ~/.conkyrc
設置以下幾項:
own_window yes
own_window_type override
double_buffer yes
保存後退出。

Conky的詳細說明

Conky的功能非常豐富,這裡無法一一說明,只挑選了我認為有用的一些常用功能和參數進行分析。關於Conky的更詳細的說明可以參看官方的文檔。

[火星人 ] ubuntu下conky配置已經有1297次圍觀

http://coctec.com/docs/linux/show-post-177305.html