티스토리 뷰
|Conky 사용하기
리눅스에서 실시간으로 시스템 정보를 확인하려면 터미널에서 nvidia-smi와 같은 명령어를 사용하거나 기타 툴을 실행해야 합니다.
이를 더욱 편하게 하기 위해서는 Conky라는 위젯을 사용할 수 있는데 Conky는 커스터마이징이 가능한 위젯입니다.
위 이미지처럼 Conky를 사용해서 편리하게 실시간으로 시스템 정보를 확인할 수 있습니다.
이 포스팅에서는 conky 설치법과 필자가 사용하는 conky code를 공유할려고 합니다.
또한 간단한 설정법에 관해서 설명하고자 합니다.
참고로 필자는 우분투 18.04 버전을 사용중입니다.
|Conky 설치하기
우분투 18.04 기준으로 터미널에서 아래의 명령어를 치면 됩니다.
1 | sudo apt install conky-all | cs |
위 명령어를 쳐서 설치를 했다면 시작프로그램에 등록해줘야 합니다.
간편하게 등록을 할려면 윈도우 버튼(슈퍼 키)를 누른 후 검색창에다가 한글버전이라면 '시작 프로그램'을 영어라면 'start manager'를 검색하면 됩니다.
추가를 누르고 위와같이 입력 후 추가하면 됩니다. 정상적으로 진행되었다면 로그아웃이나 재부팅 후 conky 위젯이 바탕화면에 나타나게 됩니다.
만약 위 과정이 이해가 잘 안된다면 출처를 따라가서 사진을 보고 따라해보세요.
1 | cp /etc/conky/conky.conf ~/.conkyrc | cs |
그 다음 위 명령어를 쳐서 conky 설정을 편하게 할 수 있게 합니다.
|Conky 설정하기
이제 각자가 편한 텍스터 에디터를 사용해서 위 파일을 수정하면 됩니다.
필자의 경우 nano를 사용하기 때문에 터미널에 아래와 같이 치면됩니다.
1 | nano ~/.conkyrc | cs |
nano가 아니라 vim이나 기타 텍스터 에디터를 사용하면 동일하게 치되 nano부분만 변경하면 됩니다.
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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | -- 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 = { update_interval = 1, cpu_avg_samples = 8, net_avg_samples = 2, out_to_console = false, override_utf8_locale = true, double_buffer = true, no_buffers = true, text_buffer_size = 32768, imlib_cache_size = 0, own_window = true, own_window_type = 'normal', own_window_argb_visual = true, own_window_argb_value = 150, own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager', border_inner_margin = 5, border_outer_margin = 0, xinerama_head = 1, alignment = 'bottom_right', gap_x = 0, gap_y = 33, draw_shades = false, draw_outline = false, draw_borders = false, draw_graph_borders = false, use_xft = true, font = 'Ubuntu Mono:size=12', xftalpha = 0.8, uppercase = false, default_color = 'white', own_window_colour = '#000000', minimum_width = 400, minimum_height = 0, alignment = 'top_right', }; conky.text = [[ ${voffset -16}${font sans-serif:bold:size=36}${alignc}${time %H:%M %S}${font} ${voffset 6}${font sans-serif:normal:size=18}${alignc}${time %Y %m-%d} ${font}${voffset -4} ${font sans-serif:bold:size=14}SYSTEM ${hr 2} ${font sans-serif:normal:size=10}CPU : ${color #FCAF3E}${execi 1000 grep model /proc/cpuinfo | cut -d : -f2 | tail -1 | sed 's/\s//'} ${font sans-setif:normal:size=10}${color1}GPU : ${color #FCAF3E}${exec nvidia-smi --query-gpu=gpu_name --format=csv,noheader,nounits} $color ${font sans-serif:normal:size=10}$sysname $kernel $alignr $machine Uptime:$alignr$uptime ${font sans-serif:bold:size=14}CPU ${hr 2} ${font sans-serif:normal:size=10}${color1}CPU Temp : ${hwmon 0 temp 1} °C CPU0 : ${freq 1} MHz ${alignr}${cpubar cpu0 6,250} ${cpu cpu1} % CPU1 : ${freq 2} MHz ${alignr}${cpubar cpu2 6,250} ${cpu cpu2} % CPU2 : ${freq 3} MHz ${alignr}${cpubar cpu3 6,250} ${cpu cpu3} % CPU3 : ${freq 4} MHz ${alignr}${cpubar cpu4 6,250} ${cpu cpu4} % CPU4 : ${freq 5} MHz ${alignr}${cpubar cpu5 6,250} ${cpu cpu5} % CPU5 : ${freq 6} MHz ${alignr}${cpubar cpu6 6,250} ${cpu cpu6} % CPU6 : ${freq 7} MHz ${alignr}${cpubar cpu7 6,250} ${cpu cpu7} % CPU7 : ${freq 8} MHz ${alignr}${cpubar cpu8 6,250} ${cpu cpu8} % CPU8 : ${freq 9} MHz ${alignr}${cpubar cpu9 6,250} ${cpu cpu9} % CPU9 : ${freq 10} MHz ${alignr}${cpubar cpu10 6,250} ${cpu cpu10} % CPU10 : ${freq 11} MHz ${alignr}${cpubar cpu11 6,250} ${cpu cpu11} % CPU11 : ${freq 12} MHz ${alignr}${cpubar cpu12 6,250} ${cpu cpu12} % CPU12 : ${freq 13} MHz ${alignr}${cpubar cpu13 6,250} ${cpu cpu13} % CPU13 : ${freq 14} MHz ${alignr}${cpubar cpu14 6,250} ${cpu cpu14} % CPU14 : ${freq 15} MHz ${alignr}${cpubar cpu15 6,250} ${cpu cpu15} % CPU15 : ${freq 16} MHz ${alignr}${cpubar cpu16 6,250} ${cpu cpu16} % ${font sans-serif:bold:size=14}MEMORY ${hr 2} ${font sans-serif:normal:size=10}RAM $alignc $mem / $memmax $alignr $memperc% ${membar 6,400 } SWAP $alignc ${swap} / ${swapmax} $alignr ${swapperc}% ${swapbar 6,400 } ${font sans-serif:bold:size=14}GPU ${hr 2} ${font sans-serif:normal:size=10}${color1}GPU Utilization ${color}${alignr}${exec nvidia-smi | grep % | cut -c 61-63} % ${color1}GPU Clock ${alignr}${color0}${nvidia gpufreq} MHz ${color1}Mem Clock ${alignr}${color0}${nvidia memfreq} MHz ${color2}Mem Used ${alignr}${color0}${execi 5 nvidia-settings -q [gpu:0]/UsedDedicatedGPUMemory -t} / ${exec nvidia-settings -q [gpu:0]/TotalDedicatedGPUMemory -t} MiB ${color1}GPU Power Draw ${alignr}${exec nvidia-smi | grep % | cut -c 21-23} W ${color1}GPU Temp ${alignr}${color0}${nvidia temp} °C ${font sans-serif:bold:size=14}DISK USAGE ${hr 2} ${font sans-serif:normal:size=10}${alignc} ${fs_used /} / ${fs_size /} ${alignr} ${fs_used_perc /}% ${fs_bar 6,400} ${font Ubuntu:bold:size=14}NETWORK ${hr 2} ${font sans-serif:normal:size=10}Local IPs : ${execi 1000 ip a | grep inet | grep -vw lo | grep -v inet6 | cut -d \/ -f1 | sed 's/[^0-9\.]*//g'} ${alignr}External IP : ${execi 1000 wget -q -O- http://ipecho.net/plain; echo} ${font sans-serif:normal:size=10}Down: ${downspeed enp6s0} ${alignr}Up: ${upspeed enp6s0} ${color lightgray}${downspeedgraph enp6s0 40,190 } ${alignr}${upspeedgraph enp6s0 40,190 }$color ${font sans-serif:bold:size=14}TOP PROCESSES ${hr 2} ${font sans-serif:bold:size=10}Name $alignr PID CPU% MEM%${font sans-serif:normal:size=10} ${top name 1} $alignr ${top pid 1} ${top cpu 1}% ${top mem 1}% ${top name 2} $alignr ${top pid 2} ${top cpu 2}% ${top mem 2}% ${top name 3} $alignr ${top pid 3} ${top cpu 3}% ${top mem 3}% ${top name 4} $alignr ${top pid 4} ${top cpu 4}% ${top mem 4}% ${top name 5} $alignr ${top pid 5} ${top cpu 5}% ${top mem 5}% ]]; | cs |
위는 필자가 쓰고 있는 코드입니다. 이 코드 말고도 구글에서 conky 로 검색하면 여러 사람들이 올린 코드가 있으니 마음에 드는 코드로 적용하면 됩니다.
이제 위 코드중 필수적으로 수정해야 하는 부분과 원하면 수정가능한 부분을 주석으로 달아서 한개 더 올리겠습니다
-- 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 = {
update_interval = 1,
cpu_avg_samples = 8,
net_avg_samples = 2,
out_to_console = false,
override_utf8_locale = true,
double_buffer = true,
no_buffers = true,
text_buffer_size = 32768,
imlib_cache_size = 0,
own_window = true,
own_window_type = 'normal',
own_window_argb_visual = true,
own_window_argb_value = 150, //투명도 100이 기본이며 값이 커질수록 갈수록 불투명해진다
own_window_hints = 'undecorated,below,sticky,skip_taskbar,skip_pager',
border_inner_margin = 5,
border_outer_margin = 0,
xinerama_head = 1,
alignment = 'bottom_right',
gap_x = 0,
gap_y = 33,
draw_shades = false,
draw_outline = false,
draw_borders = false,
draw_graph_borders = false,
use_xft = true,
font = 'Ubuntu Mono:size=12',
xftalpha = 0.8,
uppercase = false,
default_color = 'white',
own_window_colour = '#000000',
minimum_width = 400, minimum_height = 0, //창의 최소 크기
alignment = 'top_right', //창이 위치하는 방향 top_left, bottom_right 등등
};
conky.text = [[
${voffset -16}${font sans-serif:bold:size=36}${alignc}${time %H:%M %S}${font} //모든 폰트 크기는 원한느데로 변경 가능 bold는 굵은 글씨
${voffset 6}${font sans-serif:normal:size=18}${alignc}${time %Y %m-%d}
${font}${voffset -4}
${font sans-serif:bold:size=14}SYSTEM ${hr 2}
${font sans-serif:normal:size=10}CPU : ${color #FCAF3E}${execi 1000 grep model /proc/cpuinfo | cut -d : -f2 | tail -1 | sed 's/\s//'}
${font sans-setif:normal:size=10}${color1}GPU : ${color #FCAF3E}${exec nvidia-smi --query-gpu=gpu_name --format=csv,noheader,nounits} $color
${font sans-serif:normal:size=10}$sysname $kernel $alignr $machine
Uptime:$alignr$uptime
${font sans-serif:bold:size=14}CPU ${hr 2}
${font sans-serif:normal:size=10}${color1}CPU Temp : ${hwmon 0 temp 1} °C //필자는 2700x 사용으로 16개 썼지만 본인의 코어수에 맞게 1번부터 코어수만큼만 하면 된다. 쓰레드 숫자로
CPU0 : ${freq 1} MHz ${alignr}${cpubar cpu0 6,250} ${cpu cpu1} %
CPU1 : ${freq 2} MHz ${alignr}${cpubar cpu2 6,250} ${cpu cpu2} %
CPU2 : ${freq 3} MHz ${alignr}${cpubar cpu3 6,250} ${cpu cpu3} %
CPU3 : ${freq 4} MHz ${alignr}${cpubar cpu4 6,250} ${cpu cpu4} %
CPU4 : ${freq 5} MHz ${alignr}${cpubar cpu5 6,250} ${cpu cpu5} %
CPU5 : ${freq 6} MHz ${alignr}${cpubar cpu6 6,250} ${cpu cpu6} %
CPU6 : ${freq 7} MHz ${alignr}${cpubar cpu7 6,250} ${cpu cpu7} %
CPU7 : ${freq 8} MHz ${alignr}${cpubar cpu8 6,250} ${cpu cpu8} %
CPU8 : ${freq 9} MHz ${alignr}${cpubar cpu9 6,250} ${cpu cpu9} %
CPU9 : ${freq 10} MHz ${alignr}${cpubar cpu10 6,250} ${cpu cpu10} %
CPU10 : ${freq 11} MHz ${alignr}${cpubar cpu11 6,250} ${cpu cpu11} %
CPU11 : ${freq 12} MHz ${alignr}${cpubar cpu12 6,250} ${cpu cpu12} %
CPU12 : ${freq 13} MHz ${alignr}${cpubar cpu13 6,250} ${cpu cpu13} %
CPU13 : ${freq 14} MHz ${alignr}${cpubar cpu14 6,250} ${cpu cpu14} %
CPU14 : ${freq 15} MHz ${alignr}${cpubar cpu15 6,250} ${cpu cpu15} %
CPU15 : ${freq 16} MHz ${alignr}${cpubar cpu16 6,250} ${cpu cpu16} %
${font sans-serif:bold:size=14}MEMORY ${hr 2}
${font sans-serif:normal:size=10}RAM $alignc $mem / $memmax $alignr $memperc%
${membar 6,400 }
SWAP $alignc ${swap} / ${swapmax} $alignr ${swapperc}%
${swapbar 6,400 }
${font sans-serif:bold:size=14}GPU ${hr 2}
${font sans-serif:normal:size=10}${color1}GPU Utilization ${color}${alignr}${exec nvidia-smi | grep % | cut -c 61-63} %
${color1}GPU Clock ${alignr}${color0}${nvidia gpufreq} MHz
${color1}Mem Clock ${alignr}${color0}${nvidia memfreq} MHz
${color2}Mem Used ${alignr}${color0}${execi 5 nvidia-settings -q [gpu:0]/UsedDedicatedGPUMemory -t} / ${exec nvidia-settings -q [gpu:0]/TotalDedicatedGPUMemory -t} MiB
${color1}GPU Power Draw ${alignr}${exec nvidia-smi | grep % | cut -c 21-23} W
${color1}GPU Temp ${alignr}${color0}${nvidia temp} °C
${font sans-serif:bold:size=14}DISK USAGE ${hr 2}
${font sans-serif:normal:size=10}${alignc} ${fs_used /} / ${fs_size /} ${alignr} ${fs_used_perc /}%
${fs_bar 6,400}
${font Ubuntu:bold:size=14}NETWORK ${hr 2}
${font sans-serif:normal:size=10}Local IPs : ${execi 1000 ip a | grep inet | grep -vw lo | grep -v inet6 | cut -d \/ -f1 | sed 's/[^0-9\.]*//g'} ${alignr}External IP : ${execi 1000 wget -q -O- http://ipecho.net/plain; echo}
${font sans-serif:normal:size=10}Down: ${downspeed enp6s0} ${alignr}Up: ${upspeed enp6s0} //enp6s0 부분은 각자의 컴퓨터마다 다른데 ifconfig를 터미널에 치게되면 가장 먼저 나오는 부분으로 바꿔서 입력하면 된다
${color lightgray}${downspeedgraph enp6s0 40,190 } ${alignr}${upspeedgraph enp6s0 40,190 }$color
${font sans-serif:bold:size=14}TOP PROCESSES ${hr 2}
${font sans-serif:bold:size=10}Name $alignr PID CPU% MEM%${font sans-serif:normal:size=10}
${top name 1} $alignr ${top pid 1} ${top cpu 1}% ${top mem 1}% //5개만 보이게 해 놓았는데 원한다면 5개이상도 가능하고 반대로 5개 미만도 가능하다
${top name 2} $alignr ${top pid 2} ${top cpu 2}% ${top mem 2}%
${top name 3} $alignr ${top pid 3} ${top cpu 3}% ${top mem 3}%
${top name 4} $alignr ${top pid 4} ${top cpu 4}% ${top mem 4}%
${top name 5} $alignr ${top pid 5} ${top cpu 5}% ${top mem 5}%
]];
위에서 필수로 변경해야 할 것은 CPU숫자 ifconfig를 통해 네트워크 장치 이름 변경입니다.
만약 필자가 설명한 것 외에도 궁금한 점이나 잘 안되는 점이 있으면 댓글 남기면 답하겠습니다.
출처/참고
https://linuxconfig.org/system-monitoring-on-ubuntu-18-04-linux-with-conky
광고
- Total
- Today
- Yesterday
- 텐서보드
- 윈도우10
- tensorboard
- 쓰레드리퍼
- Sandisk
- 와트맨
- 우분투
- TensorFlow
- 샌디스크
- 화면캡쳐프로그램
- constant
- 스레드리퍼
- 최적화
- 명암
- 동기화 오류
- 크롬
- 아마존
- tensorflow gpu
- 텐서플로우
- 명암비
- RS4
- Jupyter Notebook
- VSCode
- 주피터 노트북
- 화면캡쳐
- 라데온
- AMD
- 픽셀
- 프리싱크
- 디스플레이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 30 | 31 |