Personalizando
Hace poco le dí a mi Debian Wheezy un lavado de cara y ajustando unas cosillas por aquí y otras por allá para ponerlo bonito, me puse a trastear con Conky. Ya hacía años que usaba Conky por que es bastante ligero y muy muy personalizable, pero quizás por vagueza le deje una configuración que en su día encontré por la red. Era una configuración de KZKG^Gaara y como digo, la dejé tal cual venía.
Ahora he querido adaptarme un poco más esa plantilla de Conky (he mirado muchas y ninguna me convence o por ser demasiado futuristas o por que complican lo fácil). Le he cambiado colores, fuentes, tamaños de fuentes, eliminado cosas que no me interesaban y puesto otras, que o no existian en la plantilla o no funcionaban.
Iba todo bien asta queme topé con el problema de no poder visualizar la temperatura de mis hdd’s. por que Hddtemp solo hace su trabajo cuando le mandamos como #root, asi que empecé a investigar y encontre la solución.
Solucionando el problema
La solucion pasa por el comando netcat de nuestra terminal.
Cuando instalamos Hddtemp, este nos pide que le configuremos una determinada ip (localhost o 127.0.0.1 por defecto) y un puerto (7634 por defecto). Cada 5 minutos Hddtemp deja un mensaje con la temperatura de cada uno de nuestros disco duros instalados en nuestro sistema. Con netcat lo que haremos será escuchar la información de ese puerto e ip que usa Hddtemp sin necesidad de tener privilegio de #root.
Lo primero que haremos sera ver que escuchamos en esa ip y puerto usado por Hddtemp.
dmacias@debian:~$ nc localhost 7634<br />
|/dev/sda|WDC WD3200AAKS-00VYA0|47|C||/dev/sdb|MAXTOR STM3320820AS|46|C||/dev/sdc|SAMSUNG HD502JI|39|C|
dmacias@debian:~$ nc 127.0.0.1 7634<br />
|/dev/sda|WDC WD3200AAKS-00VYA0|47|C||/dev/sdb|MAXTOR STM3320820AS|46|C||/dev/sdc|SAMSUNG HD502JI|39|C|
Como veis nos da el mismo resultado tanto con localhost como con 127.0.0.1
Ahora con el comando cut y su opción -c lo que haremos sera especificar que caracteres queremos visualizar de esa linea en concreto, en mi caso los 33 , 34, 68, 69, 99, 100 que son los caracteres que corresponden a las temperaturas de mir 3 hdd’s.
dmacias@debian:~$ nc localhost 7634 | cut -c33-34<br />
48<br />
dmacias@debian:~$ nc localhost 7634 | cut -c68-69<br />
46<br />
dmacias@debian:~$ nc localhost 7634 | cut -c99-100<br />
39
Ya solo nos queda con la variable execi de conky y un poco de imaginación le introducimos los datos a la plantilla, la mia quedo así:
${font Handlee:size=8} Hdd sistema: ${alignr}${execi 300 nc localhost 7634 | cut -c33-34;}ºC<br />
${font Handlee:size=8} Disco 2: ${alignr}${execi 300 nc localhost 7634 | cut -c68-69;}ºC<br />
${font Handlee:size=8} Disco 3: ${alignr}${execi 300 nc localhost 7634 | cut -c99-100;}ºC
y ahora ya el resultado final
Tenia recopilada información de bastantes lugares pero al final me encontre con este blog en el que lo explican perfecto y justo como yo quería, así que casi se lo he copiado
Pingback: Bitacoras.com