conky - instalacja, konfiguracja, i2c, hddtemp itd.
conky - instalacja, konfiguracja, i2c, hddtemp itd.
Cóż to jest conky? Conky jest to monitor systemu, który wyświetla informacje o systemie na pulpicie. Zaraz, zaraz! Przecież ja już mam karambę lub superkarambę. Tak, są do tego programy inne niż conky jednak omawiany tu przeze mnie program jest moim zdaniem najlepszy z jednej ważnej przyczyny: nie pożera tyle pamięci i CPU co karamba czy inne programy tego typu. Mając conky nie poczujesz w ogóle, że jest uruchomione. Ile razy karamba zżerała Ci 10-20% CPU (jak nie więcej), czy mnóstwo RAM-u? Na pewno wiele razy.
No tak, ale co z tego, że tyle tego zżera, przecież mam szybki komputer. Ja też mam szybki komputer, też na początku tak to sobie tłumaczyłem, jednak zmieniłem poglądy. Zacząłem doceniać mój procesor i pamięć, oraz tą niewiarygodną prostotę conky. Usunąłem karambę. Tak, nie żałuję tego. Nie dość, że program conky nie zżera tyle zasobów, nie dość, że jest łatwiejszy w konfiguracji to jego wygląd jest naprawdę świetny. Dlatego zachęcam Cię, drogi czytelniku, abyś chociaż spróbował conky - na pewno nie pożałujesz.
Debian
Wystarczy w konsoli wydać polecenie jako root:
Kod: Zaznacz cały
aptitude update
A następnie:
Kod: Zaznacz cały
aptitude install conky
Ubuntu
Kod: Zaznacz cały
sudo apt-get update
Kod: Zaznacz cały
sudo apt-get install conky
Plikiem konfiguracyjnym conky jest
Kod: Zaznacz cały
/home/nazwa_użytkownika/.conkyrc
Kod: Zaznacz cały
touch ~/.conkyrc
Kod: Zaznacz cały
background yes
#prawy dolny rog
gap_x 1050
gap_y 50
maximum_width 200
# X font when Xft is disabled, you can pick one with program xfontsel
#font -*-*-*-r-normal--14-*-*-*-c-*-iso8859-2
font -xos4-terminus-*-r-normal-*-12-100-*-*-c-*-iso10646-1
# Use Xft?
use_xft yes
#xftfont Bitstream Vera Sans Mono:size=8
xftfont Terminus:encoding=utf-8:size=9
xftalpha 0.9
update_interval 1.0
total_run_times 0
own_window no
#own_window_type desktop
#own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
own_window_transparent yes
# If own_window_transparent is set to no, you can set the background colour here
own_window_colour hotpink
# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes
draw_shades yes
draw_outline no
draw_borders no
stippled_borders 8
border_margin 4
border_width 1
default_color white
default_shade_color black
default_outline_color white
alignment top_left
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale no
use_spacer yes
TEXT
${color #ddaa00}${font Terminus:encoding=iso8859-2:size=15}${time %A}${color}
${font :encoding=iso8859-2:size=9}$alignc${color #ddaa00}${time %e %B %G}
${color slate grey}Kernel:
$alignc${color }$kernel
${color slate grey}UpTime:
$alignc${color }$uptime
${color slate grey}Load:
$alignc${color }$loadavg
${color }${color slate grey}CPU: $color%${color #ddaa00}$cpu$alignr$color$running_processes/ $processes
${color slate grey}${cpugraph 25,200 000000 ffffff}
${font :size=8}${color #ddaa00}${top name 1}$alignr${top cpu 1}
${color lightgrey}${top name 2}$alignr${top cpu 2}
${color lightgrey}${top name 3}$alignr${top cpu 3}
${color lightgrey}${top name 4}$alignr${top cpu 4}
${font :size=9}
${color slate grey}RAM: $color%$memperc ${alignr}$mem
${membar 5,200}
${color slate grey}SWAP: $color%$swapperc ${alignr}$swap
${swapbar 5,200}
${font :size=8}${color #ddaa00}${top_mem name 1}$alignr${top_mem mem 1}
${color lightgrey}${top_mem name 2}$alignr${top_mem mem 2}
${color lightgrey}${top_mem name 3}$alignr${top_mem mem 3}
${color lightgrey}${top_mem name 4}$alignr${top_mem mem 4}
${font :size=9}
${color slate grey}TWARDZIEL: $color$alignr$diskio
${color slate grey}${diskiograph 25,200 000000 ff0000}
${color slate grey} /:${alignr}${color }${fs_free /}
${fs_bar 5,200 /}
${color slate grey}INTERNET:
${color}DL:${color #ddaa00}${downspeed eth0}${color}UP:${color #ddaa00}${upspeed eth0}${color}${alignr}KiB/s
${offset 10}${color}Total: ${color white}${totaldown eth0}
${offset 10}${color}Total: ${color white}${totalup eth0}
${color slate grey}${downspeedgraph eth0 25,200 000000 00ff00}
${color slate grey}${upspeedgraph eth0 25,200 000000 0000ff}
${color #0077ff}@Connections@
$color Outbound: ${tcp_portmon 32768 61000 count}
$color Inbound: ${tcp_portmon 1 32767 count}
${color #0077ff}Outbound Connection ${alignr} Port$color
${tcp_portmon 32768 61000 rip 0} ${alignr} ${tcp_portmon 32768 61000 rservice 0}
${tcp_portmon 32768 61000 rip 1} ${alignr} ${tcp_portmon 32768 61000 rservice 1}
${tcp_portmon 32768 61000 rip 2} ${alignr} ${tcp_portmon 32768 61000 rservice 2}
${tcp_portmon 32768 61000 rip 3} ${alignr} ${tcp_portmon 32768 61000 rservice 3}
${tcp_portmon 32768 61000 rip 4} ${alignr} ${tcp_portmon 32768 61000 rservice 4}
${tcp_portmon 32768 61000 rip 4} ${alignr} ${tcp_portmon 32768 61000 rservice 5}
${tcp_portmon 32768 61000 rip 4} ${alignr} ${tcp_portmon 32768 61000 rservice 6}
${tcp_portmon 32768 61000 rip 4} ${alignr} ${tcp_portmon 32768 61000 rservice 7}
${tcp_portmon 32768 61000 rip 4} ${alignr} ${tcp_portmon 32768 61000 rservice 8}
${tcp_portmon 32768 61000 rip 4} ${alignr} ${tcp_portmon 32768 61000 rservice 9}
${tcp_portmon 32768 61000 rip 4} ${alignr} ${tcp_portmon 32768 61000 rservice 10}
Kod: Zaznacz cały
conky
Jeżeli denerwuje Cię, że conky ciągle mruga (skacze) to jako root otwórz /etc/X11/xorg.conf i do Section "Module" dodaj linijkę:
Kod: Zaznacz cały
Load "dbe"
Kod: Zaznacz cały
double_buffer yes
Mimo, że problem ze skakaniem został rozwiązany to kolejnym zmartwieniem jest to, że w KDE i GNOME nie ma ikon na pulpicie. Na pewno sobie pomyślałeś Co za głupi program ten conky! Ja też za pierwszym razem tak pomyślałem. Zastanowiłem się nad jedną rzeczą: Czy potrzebne są mi ikony na pulpicie?. Po krótkich rozmyśleniach doszedłem do wniosku, że nie. Tak, nie mam na pulpicie teraz żadnych ikon. Zapewne, Ty sobie nie wyobrażasz pracy bez ikon na pulpicie, ale naprawdę zastanów się, czy są one konieczne. Czy nie lepiej wcisnąć na pulpicie na przykład lewy przycisk myszy i tam wybrać co chcesz uruchomić? Tak, według mnie jest to lepsze rozwiązanie. Jednak jeżeli naprawdę musisz mieć te ikony, rodem z Windowsa, to w przypadku KDE do autostartu (~/.kde/Autostart) dodaj poniższe polecenie (ppm --> Utwórz Nowe --> Skrót do programu --> Program --> Polecenie):
Kod: Zaznacz cały
feh --bg-scale `dcop kdesktop KBackgroundIface currentWallpaper 1`
Kod: Zaznacz cały
aptitude install feh
Kod: Zaznacz cały
own_window yes
own_window_type override
Dodam jeszcze, że tekst, który wstawiłeś do pliku ~/.conkyrc jest to moja konfiguracja. Możesz zrobić swoją własną lub użyć jeszcze innych. Więcej konfiguracji znajdziesz z pomocą Google i na stronie http://conky.sourceforge.net/
Dodane:
Dla niewtajemniczonych, oznaczenie:
Kod: Zaznacz cały
/home/nazwa_użytkownika/
Kod: Zaznacz cały
~/
Wcześniej zamieściłem mój plik konfiguracyjny .conkyrc. Czas go omówić. Nie będę omawiał wszystkiego, ale te najważniejsze rzeczy.
- Dwie ostatnie linijki (tak dwie! linijka rozpoczynająca się znakiem # oznacza komentarz) informują conky na jakiej części pulpitu ma się znaleźć. Z matematyki wiesz co to jest oś x i y więc problemów z umiejscowieniem conky na pulpicie nie będzie.
Kod: Zaznacz cały
#prawy dolny rog gap_x 1050 gap_y 100
- Informuje jaki szeroki ma być monitor systemu.
Kod: Zaznacz cały
maximum_width 200
- Wartość podana tutaj informuje conky co ile sekund ma być odświeżany monitor systemu. Polecam wartość 1.0 lub 0.5
Kod: Zaznacz cały
update_interval 1.0
- Czy conky ma się uruchamiać w osobnym oknie. W celu dokładnego zrozumienia tej opcji polecam zamiast no wpisać yes i przekonać się co się stanie.
Kod: Zaznacz cały
own_window no
- Są to trzy linijki mówiące o standardowych kolorach. Zamiast na przykład black można wpisać red - polecam z tymi linijkami trochę poeksperymentować.
Kod: Zaznacz cały
default_color white default_shade_color black default_outline_color white
- W przypadku, jeśli kodowanie systemu masz ustawione na UTF-8 zmień no na yes.
Kod: Zaznacz cały
override_utf8_locale no
- Wszystko znajdujące się poniżej tego słowa, będzie wyświetlane przez monitor systemu conky na pulpicie.
Kod: Zaznacz cały
TEXT
- Każda linijka musi się zaczynać od znaku $. Następnie widzimy {color slate grey} - informuje to conky jakiego koloru tekst ma być wyświetlony w napisach, które występują po {color slate grey}. Po tym widzimy napis Jądro: i to on zostanie właśnie wyświetlony w kolorze jaki został wcześniej zdefiniowany, w nawiasie klamrowym. Po tym znowu widać nową linijkę, a dokładniej: $alignc. Oznacza to, że tekst umieszczony za tą linijką będzie wyśrodkowany. Znowu: ${color } ale tym razem nie ma już zdefiniowane koloru. To jakiego kolor będzie tekst? Zajrzyj do punktu e. Następnie widać bardzo ważną rzecz, a mianowicie $kernel. Dzięki temu nasz monitor systemu wyświetli aktualnie używaną wersję jądra.
Kod: Zaznacz cały
${color slate grey}Jądro: $alignc${color }$kernel
- Zmienia rozmiar czcionki na podany.
Kod: Zaznacz cały
${font :size=8}
- Oznacza, że tekst umieszczony za tym zostanie wyrównany do prawej strony.
Kod: Zaznacz cały
${alignr}
Kod: Zaznacz cały
${color slate grey}TWARDZIEL: $color$alignr$diskio ${color slate grey}${diskiograph 25,200 000000 ff0000}
Ta pierwsza linijka to wiadomo, ale drug to już nowość... Pierwsze wyrazy (${color slate grey}) w drugiej linijce nie są nowością, ale to ostatnie (${diskiograph 25,200 000000 ff0000}) już tak. Za co to odpowiada? Otóż, jeżeli używasz mojego pliku ~/.conkyrc, zauważyłeś, że w conky są jakby takie prostokąty gdzie wyświetlane jest obciążenie procesora itp. Właśnie ta linijka odpowiada za ten prostokąt. Chciałbym w tym momencie podkreślić, że takie ,,prostokąty'' i inne graficzne bajery (nie mówię tu o wyświetlanych tekstach), w przypadku słabego komputera, mogą obciążać procesor. W takim wypadku zalecane jest usunąć takie "prostokąty" i zadowolić się samym tekstem. Proponuję pobawić się z ${diskiograph 25,200 000000 ff0000}, a dokładniej liczbami, które tam występują - dzięki temu lepiej zrozumiesz filozofię tego ustawienia.
Więcej informacji o conky znajdziesz na stronie domowej projektu: http://conky.sourceforge.net/ oraz z pomocą Google.
Czy nie chciałbyś żeby conky pokazywało temperaturę procesora itp.? Aby to osiągnąć należy zainstalować odpowiednie pakiety:
Kod: Zaznacz cały
aptitude update
Kod: Zaznacz cały
aptitude install lm-sensors lm-sensors-source
Kod: Zaznacz cały
sensors-detect
Kod: Zaznacz cały
sensors
Teraz dodamy pokazywanie temperatury do monitora conky.
Otwieramy w dowolnym edytorze plik ~/.conkyrc i dopisujemy w nim odpowiednią linijkę (uwaga! linijka, którą przykładowo przedstawiam jest przystosowana do mojego komputera i pliku ~/.conkyrc).
Kod: Zaznacz cały
${color }CPU:$color ${i2c temp 2}C ${color }MB:$color ${i2c temp 1}C
Źródło
Po co ciągle wpisywać:
Kod: Zaznacz cały
apt-get update
apt-get dis-upgrade
Jako root tworzymy plik:
Kod: Zaznacz cały
vim /etc/init.d/UPGRADE.MONITOR
Kod: Zaznacz cały
#!/bin/bash
apt-get update
sh -c "apt-get dist-upgrade -s | grep Inst | cut -c 6- > /var/log/upgrades.log"
Kod: Zaznacz cały
chmod +x /etc/init.d/UPGRADE.MONITOR
Kod: Zaznacz cały
vim /etc/crontab
Kod: Zaznacz cały
10,20,30,40,50,59 * * * * root /etc/init.d/UPGRADE.MONITOR
Kod: Zaznacz cały
/etc/init.d/cron reload
Kod: Zaznacz cały
~/.conkyrc
Kod: Zaznacz cały
Pakiety do aktualizacji:
${execi 20 cat /var/log/upgrades.log}
Conky może informować nas, czy dotarła jakaś nowa wiadomość na nasze konto na gmailu. Jest to bardzo
przydatna rzecz.
Najpierw tworzymy sobie prosty skrypcik w katalogu domowym o nazwie check_gmail.sh
Kod: Zaznacz cały
#!/bin/bash
gmail_login="xxx" #login do skrzyki
gmail_password="yyy" #hasło do konta
dane="$(wget --secure-protocol=TLSv1 --timeout=3 -t 1 -q -O - \
https://${gmail_login}:${gmail_password}@mail.google.com/mail/feed/atom \
--no-check-certificate | grep 'fullcount' \
| sed -e 's/.*<fullcount>//;s/<\/fullcount>.*//' 2>/dev/null)"
if [ -z "$dane" ]; then
echo "Connection Error !"
else
echo "GMail: $dane list(ów)"
fi
Teraz dajemy prawa do wykonania skryptowi, czyli:
Kod: Zaznacz cały
chmod +x ~/check_gmail.sh
Kod: Zaznacz cały
${execi 60 ~/check_gmail.sh}
--
Autor: Hagal
Temperatura dysku twardego w conky? Tak, to też możliwe.
Najpierw instalujemy potrzebny pakiet:
Kod: Zaznacz cały
aptitude update && aptitude install hddtemp
Teraz dla przykładu, jako zwykły użytkownik, wpisujemy:
Kod: Zaznacz cały
nc localhost 7634
Kod: Zaznacz cały
|/dev/sda|WDC WD1600JS-22NCB1|36|C|
Kod: Zaznacz cały
nc localhost 7634 | cut -d'|' -f4
Aby dodać wyświetlanie temperatury do conky stworzymy mały skrypt.
Jako zwykły użytkownik wpisz:
Kod: Zaznacz cały
touch ~/.conky_script_hddtemp && chmod +x ~/.conky_script_hddtemp
Kod: Zaznacz cały
vim ~/.conky_script_hddtemp
Kod: Zaznacz cały
#!/bin/bash
echo "$(nc localhost 7634 | cut -d'|' -f4)"
Kod: Zaznacz cały
sh ~/.conky_script_hddtemp
Skoro wszystko działa jak należy, dodaj do ~/.conkyrc w najbardziej odpowiadające Ci miejsce:
Kod: Zaznacz cały
$color${execi 1 /home/TY/.conky_script_hddtemp} ${color #ddaa00} °C
Kod: Zaznacz cały
${color slate grey}TWARDZIEL: $color$alignr$diskio
Kod: Zaznacz cały
${color slate grey}TWARDZIEL: $color${execi 1 /home/TY/.conky_script_hddtemp} ${color #ddaa00} °C $color$alignr$diskio
Kod: Zaznacz cały
hddtemp dev, (host,(port)) Displays temperature of a selected hard disk drive
as reported by the hddtemp daemon
running on host :p ort. Default host is
127.0.0.1, default port is 7634.
Pozdrowienia