Szukasz ładnego, lekkiego monitora systemu? Chcesz wiedzieć na bieżąco co się dzieje w Twoim systemie? Widziałeś u kolegi bajeranckie statsy na pulpicie i chcesz u siebie takie same(albo lepsze)? A może denerwuje Cię ciągłe sprawdzanie poczty w oczekiwaniu na nowe maile? Nie masz ochoty ciągle wklepywać w konsoli szeregu poleceń aby dowiedzieć się o nowych aktualizacjach systemu? Jeśli choć na jedno z tych pytań odpowiedziałeś twierdząco to ten art jest dla Ciebie. Conky jest dla Ciebie!
Conky - A co to?
Należy zacząć od wyjaśnienia czym to w ogóle jest. Conky to bardzo lekki (przy dobrej konfiguracji potrafi zajmować nawet mniej niż 2Mb w pamięci RAM), funkcjonalny i wszechstronnie konfigurowalny “monitor systemu”. Napisałem to w cudzysłowie, gdyż conky może spełniać rolę np: “sprawdzacza poczty gmail” albo “monitora aktualizacji”. Co więcej, conky może wyświetlać zawartość praktycznie każdego pliku. To znaczy, że łatwo możemy go zmusić do wyświetlania wyniku działania jakiegoś skryptu (jeśli tylko mamy możliwość zapisać ten wynik w pliku). Jak widać możliwości są ograniczone tylko naszymi umiejętnościami. Dlaczego wybrałem conky? Przecież jest pełno graficznych widgetów ,które oferują podobne możliwości. Właśnie dlatego ,że wspomniane widgety pożerają mnóstwo zasobów naszego komputera, a conky tylko niezbędne minimum. Dość gadania, przejdźmy do zabawy.
Let’s do it!
Conky możemy instalować kompilując ze źródeł lub pobierając paczkę z repozytorium. Wygodniejszym wydaje sie sposób 2. I ten tu przedstawię. Sposób pierwszy ma taką zaletę, że możemy do naszego programu dołączyć niestandardowe moduły. Polecałbym ten sposób bardziej zaawansowanym użytkownikom. Tymczasem :
apt-get install conky
Pobrane? Zainstalowane? Czas na konfigurację. Otwieramy:
gedit ~/.conkyrc
Zawartość pliku konfiguracyjnego może być różna. Warto , żeby każdy sam spróbował wypełnić ten plik według własnych potrzeb. Oto mój plik conkyrc. Pokazuje on bieżący dzień, godzinę, wykres pracy procesora,listę aktywnych procesów, zużycie ramu i swapa, użycie dysku twardego, ilość połączeń i bieżący transfer oraz listę połączeń. Z resztą widzicie to po prawej stronie.
Tyle byłoby o ogólnym przeznaczeniu tego programu. Lista szczegółowych funkcji jest dostępna na stronach projektu: ustawienia główne i zmienne.
Zapewne zauważyliście, że obszar wyświetlania danych conkiego mieści się w ściśle określonym prostokącie(niekoniecznie biegnącym wzdłuż wysokości pulpitu, można ustawić aby conky wyświetlał się np. wzdłuż panelu gnome). Z tym będą związane pewne komplikacje dotyczące zmiany wyglądu. Bo co zrobimy jeśli ubzdura nam się, żeby np. cała sekcja “INTERNET” była zupełnie w innym miejscu? np. na środku ekranu? Oczywiście można dłubać w configu i przesuwać całość spacjami, ale tak naprawdę szkoda na to nerwów i czasu. Rozwiązaniem będzie uruchomienie nowego procesu conky ze swoim własnym configiem. Nie bójcie się o zasoby komputera. Takie rozwiązanie u mnie pochłania nie więcej niż 2Mb w pamięci.
Tworzymy nowy plik konfiguracyjny:
gedit ~/.conky2
Zawartość pliku będzie się nieco różniła od naszego głównego configa. Różnica polega na tym, że jesteśmy skazani na to by drugi conky był osadzony w swoim własnym oknie a nie bezpośrednio na pulpicie. Oczywiście można go osadzić na pulpicie ale wtedy zaczynają się kłócić, odświeżać w różnych momentach, migać, mrugać etc. A tu umieściłem zawartość mojego drugiego configa. Główne różnice są zawarte w 11,12 i 13 linii. Resztę możecie konfigurować według własnych potrzeb (pozycja etc.). Aby uruchomić nowy proces conky z innym configiem niż domyślny wydajemy:
conky -d -c ~/.conky2
Monitor aktualizacji.
Obiecałem wam monitor aktualizacji. Zastrzegam od razu, że to rozwiązanie jest dla systemów korzystających z apt (debian, ubuntu etc.). Dla innych systemów nie posiadam gotowego skryptu, ponieważ obecnie siedzę na debianie (wcześniej na ubuntu). Nie ma sensu więc pisać o czymś, o czym nie mam pojęcia.
Tworzymy plik aktualizacja (musimy posiadać prawa roota) :
gedit /etc/init.d/aktualizacja
Wklejamy do niego :
#!/bin/bash
apt-get update
sh -c “apt-get dist-upgrade -s | grep Inst | cut -c 6- > /var/log/aktualizacja.log”
Zapisujemy. Powyższy skrypt sprawdza nasze repozytoria a następnie filtruje(grep) wyniki zostawiając tylko te z początkiem Inst. Całość wkleja do /var/log/aktualizacja.log . Teraz musimy nadać prawa do wykonywania naszego skrypciku (za pomocą roota):
chmod +x /etc/init.d/aktualizacja
Kolejnym krokiem będzie konfiguracja Cron. Cron jest programem, który będzie wywoływał nasz skrypt w określonym przez nas czasie. Edytujemy tablice Cron (jako root):
gedit /etc/crontab
Na samym końcu pliku dodajemy :
10,30,50 * * * * root /etc/init.d/aktualizacja
Powyższy wpis sprawi, że nasz programik będzie co 20 minut sprawdzał dostępność nowych aktualizacji, a jeśli takowe znajdzie to zapisze je w pliku.
Przeładowujemy Cron (root) :
/etc/init.d/cron reload
Aby zmusić Conky do wyświetlania naszego pliku z aktualizacjami dodajemy w naszym configu (~/.conkyrc albo innym) pod słowem TEXT następujące linie:
${color #0077ff}Pakiety do aktualizacji:${color}
${color slate grey} ${execi 20 cat /var/log/aktualizacja.log} ${color}
Oto wynik :
A tak będzie to wyglądało gdy będą dostępne aktualizacje:
Monitor poczty Gmail
Możemy podpiąć pod Conky skrypt sprawdzający pocztę Gmail. Jest to banalnie proste. Tworzymy w naszym katalogu plik gmail.sh
gedit gmail.sh
Wklejamy:
#!/bin/bash
gmail_login=”login” #login do skrzyki
gmail_password=”haslo” #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/.*
if [ -z “$dane” ]; then
echo “Connection Error !”
else
echo “$dane list(ów)”
fi
Zapisujemy. Nadajemy prawa do wykonywania skryptu (musimy być rootem!):
chmod +x gmail.sh
Otwieramy nasz config conky (~/.conkyrc ) :
gedit ~/.conkyrc
W dowolnym miejscu pod napisem TEXT wklejamy :
${color #0077ff}Gmail:${color} ${color slate grey}${execi 60 ~/gmail.sh}${color}
Zapisujemy. Resetujemy Conky i możemy podziwiać efekt : ![]()
Na sam koniec jako podsumowanie naszych dokonań zamieszczam screenshot z mojego pulpitu. Pisząc ten art wspomagałem się tematem o conky z forum debian.linux.pl . Oczywiście te funkcje które przedstawiłem wyżej to nie jedyne funkcje Conky. Bardziej zaawansowani(zdesperowani?:D) użytkownicy mogą zainteresować się monitorowaniem temperatury swoich komponentów komputera lub spróbować napisać skrypt do odczytu swojej własnej poczty niekoniecznie gmail. Nie bójcie się eksperymentować! Udanych podbojów ! Pozdrawiam.

Brak komentarzy.