Ceci est une ancienne révision du document !
Conky : Scripts Système
Compléments à la documentation Conky
Les codes donnés ci dessous sont à placer après la section TEXT de votre conkyrc
Références des Variables
Dans les scripts donnés ci-dessous, on ne vous donne que les codes génériques.
Vous pouvez retrouver les scripts qui ont permit la réalisation des images sur les liens suivants :
IL vous suffira d'ouvrir un unique fichier texte, d'y coller 'Avant TEXT' et toutes les parties désirées qui suivent à la suite.
Ordinateur
Afficher des informations sur l'ordinateur. Dans l'ordre : la version de la distribution, le numéro de version, le nom de version, le kernel, l'architecure, la vitesse du processeur, le temps d'activité.
${execi 86400 lsb_release -si} : ${execi 86400 lsb_release -sr} ${execi 86400 lsb_release -sc} $sysname : $kernel $machine $freq_dyn_g GHz Uptime : $uptime
CPU / Carte mère
Utilisation processeur
Afficher un graphique de l'utilisation processeur, avec indication en % dans ce graphique.
Ici on va utiliser la variable voffset (vertical offset) pour positionner l'utilisation du processeur en % sur le graphique de celui-ci.
${cpugraph 5e7b7b d8deeb} ${voffset -24}${alignc}${cpu cpu1}%
Mémoire / Swap
Afficher l'utilisation (restant / totalité / graphique ) de la mémoire RAM et SWAP.
RAM : $memperc% $mem /$memmax $membar Swap : $swapperc% $swap /$swapmax $swapbar Process : $processes Running : $running_processes
Ici ${color} est utilisé afin de redonner la couleur du texte par défaut définit dans la section précédent TEXT
Température
Après avoir installé lm-sensors - lm-sensors et lancé la détection des capteurs, vous pouvez accéder à différentes températures qui sont visible via la commande sensors
Les résultats des capteurs sont dans : /sys/class/hwmon/hwmon[n]/device/temp[n]_input ([n] est un chiffre).
Vous pouvez les visualiser via :
$ cat /sys/class/hwmon/hwmon1/device/temp1_input 34000 $ cat /sys/class/hwmon/hwmon1/device/temp2_input 44000
Ici on voit le chiffre 34000 et 44000, dans votre conkyrc il suffit d'ajouter :
CPU : ${hwmon 1 temp 2}C° M/B : ${hwmon 1 temp 1}C°
Et on obtient :
CPU : 44.0 C° M/B : 34.0 C°
Disque dur
Taille / Espace
Local
Afficher différentes informations sur des partitions (dans ce cas : Taille des disque durs sda et sdb). La variable 'fs_bar' (file system bar) reçoit 2 valeurs, la hauteur (ici 5pixels) et la largeur (ici 120 pixels). Ces valeurs peuvent être ommises.
Intitulé : ${fs_used_perc /point/de/montage/}% ${fs_free /point/de/montage/} ${fs_bar 5,120 /point/de/montage/}
Distant
Notez la variable 'if_mounted' qui permet de vérifier que les disques sont montés, avant de lancer l'affichage. Même si vos disques sont montés après le lancement de conky, ceux-ci seront automatiquement affichés.
${if_mounted /point/de/montage/}Intitulé : ${fs_used_perc /point/de/montage/}% ${fs_free /point/de/montage/} ${fs_bar 5,120 /point/de/montage/}${endif}
Température
Local
Après avoir installé hddtemp, il suffit d'ajouter les lignes :
Local : sda ${hddtemp /dev/sda}°
Et on obtient :
sda : 35C° sdb : 42C°
Distant
Récupérer la température d'un disque distant (pratique dans le cas d'un NFS)
Voir les valeurs en vrac (exemple)
nick@hostname:~$ nc 192.168.xxx.xxx 7634 |/dev/sg0|Maxtor 6Y160P0|42|C||/dev/s
Première variante
${exec nc <ip> <port> | cut -d'|' -f4}C°
Légende | |
<ip> | Ip de la machine contenant les disques à contrôler |
<port> | port de la machine distante (pensez à ouvrir ce port dans le parefeu) par défaut : 7634 |
cut -d'| ' | on découpe tous les '| ' (pipe), ça créé un tableau |
-f4 | on récupère la valeur à la position 4 (ce qui se trouve juste avant le 4ème '| ' donc) |
Seconde variante
${exec nc <ip> <port> | awk -F'|' '{ print $4 }'}C°
On récupère ainsi la valeur '42C°' dans les deux cas
Réseau
Affichage graphique de l'utilisation réseau. Ici on affiche la vitesse des réceptions/émmissions dans le graphique en utilisant conjointement 'offset' et 'voffset'.
Down ${offset 45}${totaldown eth1} ${offset 8}Up ${alignr}${totalup eth1} ${downspeedgraph eth0 22,150 5e7b7b d8deeb} ${upspeedgraph eth0 22,150 99c8e8 618094} ${offset 40}${voffset -21}${downspeedf eth1}k/s ${offset 190}${voffset -14}${upspeedf eth1}k/s
Ici dans le cas de deux carte réseau. L'une en réseau vers l'extérieure, l'autre en local.
eth1 : ${addr eth1}
Afficher l'ip publique.
${texeci 3600 wget http://checkip.dyndns.org -O - -o /dev/null | cut -d : -f 2 | cut -d \< -f 1}
Affichage simple et complet.
eth0 : ${addr eth0} | ${totaldown eth0} | ${totalup eth0}
Dans le cas d'une seconde carte, non configuré et non connecté, conky affiche 'No Address' en place de l'adresse ip de la carte.
Divers
Afficher les résultats d'un 'top'
${color #e09495} ${top name 1} ${top pid 1} ${alignc}${top cpu 1} ${top mem 1} ${color #e0d094} ${top name 2} ${top pid 2} ${alignc}${top cpu 2} ${top mem 2} ${color1} ${top name 3} ${top pid 3} ${alignc}${top cpu 3} ${top mem 3} ${color1} ${top name 4} ${top pid 4} ${alignc}${top cpu 4} ${top mem 4} ${color1} ${top name 5} ${top pid 5} ${alignc}${top cpu 5} ${top mem 5}