Conky

Conky是桌一款面环境的系统监控工具。免费开源,高度可定制。

简介

时间轴

了解更多 >> Conky 发行版


安装

Debian / Ubuntu

sudo apt-get install conky

了解更多 >> Conky 文档:安装


基础知识

常用命令

命令 描述 示例
conky 启动conky,使用默认配置文件。先加载当前用户配置文件$HOME/.conkyrc,如果没找到加载系统配置文件位/etc/conky/conky.conf conky
conky -c 配置文件 启动conky,使用指定配置文件。 conky -c myconkyrc.lua
kill `pidof conky` 关闭conky kill `pidof conky`

配置文件

概览

conky 1.10开始,配置文件使用lua语法,conky 1.7.1 开始内置了lua。配置文件主要由两部分组成:显示设置和显示内容。如下:

-- 显示设置
conky.config = {

}

-- 显示内容
conky.text = [[

]]

hello world版配置文件:

-- 显示设置
conky.config = {
    update_interval=10,       -- 刷新时间,10秒
    alignment = 'top_left',   -- 左上角显示
    own_window = true,        -- 界面显示
    own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
}

-- 显示内容
conky.text = [[
hello world !

cpu: ${cpu}%
users:${user_number}
]]

将配置保存到一个文件,如conkyrc,指定配置文件启动:conky -c conkyrc

了解更多 >> conky 文档:配置



配置文件位置

终端输入conky -v可以看到版本默认配置文件位置等信息。

  • 系统配置文件位置:/etc/conky/conky.conf
  • 用户配置文件位置:$HOME/.conkyrc

当运行conky时,程序先加载当前用户的配置文件,如果不存在再加载系统配置文件。当然也可以再运行时指定配置文件:conky -c myconkyrc。用户配置文件刚安装时不存在,可以复制系统配置文件到用户配置文件位置 cp /etc/conky/conky.conf $HOME/.conkyrc,再进行修改。 以下为默认配置文件内容:

-- vim: ts=4 sw=4 noet ai cindent syntax=lua
--[[
Conky, a system monitor, based on torsmo

Any original torsmo code is licensed under the BSD license

All code written since the fork of torsmo is licensed under the GPL

Please see COPYING for details

Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen
Copyright (c) 2005-2012 Brenden Matthews, Philip Kovacs, et. al. (see AUTHORS)
All rights reserved.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
]]

conky.config = {
    alignment = 'top_left',
    background = false,
    border_width = 1,
    cpu_avg_samples = 2,
	default_color = 'white',
    default_outline_color = 'white',
    default_shade_color = 'white',
    draw_borders = false,
    draw_graph_borders = true,
    draw_outline = false,
    draw_shades = false,
    use_xft = true,
    font = 'DejaVu Sans Mono:size=12',
    gap_x = 5,
    gap_y = 60,
    minimum_height = 5,
	minimum_width = 5,
    net_avg_samples = 2,
    no_buffers = true,
    out_to_console = false,
    out_to_stderr = false,
    extra_newline = false,
    own_window = true,
    own_window_class = 'Conky',
    own_window_type = 'desktop',
    stippled_borders = 0,
    update_interval = 1.0,
    uppercase = false,
    use_spacer = 'none',
    show_graph_scale = false,
    show_graph_range = false
}

conky.text = [[
${scroll 16 $nodename - $sysname $kernel on $machine | }
$hr
${color grey}Uptime:$color $uptime
${color grey}Frequency (in MHz):$color $freq
${color grey}Frequency (in GHz):$color $freq_g
${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
${color grey}CPU Usage:$color $cpu% ${cpubar 4}
${color grey}Processes:$color $processes  ${color grey}Running:$color $running_processes
$hr
${color grey}File systems:
 / $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
${color grey}Networking:
Up:$color ${upspeed eth0} ${color grey} - Down:$color ${downspeed eth0}
$hr
${color grey}Name              PID   CPU%   MEM%
${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
]]

了解更多 >> conky 文档:配置


内置变量

了解更多 >> Conky 文档:变量


显示设置

显示设置位于配置文件的conky.config = { }部分,可以设置显示位置,样式,刷新时间等。如:

conky.config = {
    -- 更新时间
    update_interval = 1.0,

    -- 显示位置
    alignment = 'top_left',
    gap_x = 120,
    gap_y = 33,

    -- 省略部分内容
}

了解更多 >> conky 文档:设置


位置

名称 描述 示例
alignment 设置对其位置,可选值 alignment = 'top_left' 位于显示器的左上角

窗口

名称 描述 示例
own_window
单独窗口。是否使用自己单独的窗口绘制。true 开启单独窗口false 不使用单独窗口 own_window = true

模板

名称 描述 示例
templateN 模板可以使用占位符,使用模板时将显示内容替换占位符。占位符用斜杠和位置序号表示:如\1\2等。模板一共可以设置10个,从template0到template9。

如设置一个标题模板,Noto字体加粗14号:
template0 = [[${font Noto Serif CJK SC:bold:size=14}\1${font}]]
conky.text = []中使用模板:
${template0 内存} ${template0 内存\ $memperc% }

显示内容

CPU

内存

网络

存储

执行shell命令

温度

条件判断

使用Lua脚本

了解更多 >> Conky 文档:Lua Conky 文档:使用Lua脚本 - 1.lua脚本怎么工作


分享的配置文件

名称 地址
Eboreg/klaatu-conky-conf https://github.com/Eboreg/klaatu-conky-conf
ChrisPVille/aux-display https://github.com/ChrisPVille/aux-display

了解更多 >> Conky 文档:用户配置文件


常见问题

中文显示乱码。需要设置支持中文的字体。
  • 1.查看系统中的中文字体:fc-list :lang=zh ,选择一个字体如Noto Serif CJK SC,如果没有安装一个中文字体。
  • 2.conky配置文件中conky.config = {}中设置: font = 'Noto Serif CJK SC:size=12',


某些运行配置文件,屏幕偶尔黑屏。


如何在显示桌面时不会最小化?

在配置文件conky.config = { }部分添加own_window = true,own_window_type = 'desktop',。其中own_window_type也可以设置paneldock类型,添加own_window_hints = 'below',将conky置于最底层。

资源

官网

相关文章