Usar la PC como reloj despertador en Linux
¿Se te queda pegada la almohada en la nuca por la mañana? Esto te puede venir bien:
Como usar tu PC como reloj-alarma, que haga las veces de despertador musical, reproduciendo tu lista de canciones preferidas.
El procedimiento dista bastante de ser complicado pero lamentablemente no es implementable en todos los casos. En laptops por ejemplo en la gran mayoría de los casos el BIOS no dispone de esta funcionalidad. En algunos BIOS modernos he visto también que la posibilidad de encender la PC usando una alarma a desaparecido. Si estás en esta situación, leé al final del artículo.
El proceso consta de 3 pasos:
- Hacer que el BIOS de tu PC encienda automáticamente a una hora determinada.
- Arrancar Linux (o windows, pero queda excluído de esta guía).
- Correr un reproductor de MP3 con el volumen bajo, subir el volumen gradualmente.
¿Como se logra todo lo anterior?
1 – El BIOS:
Necesitas configurar el mismo para que encienda tu PC todos los días a una determinada hora, -como te conozco, se que lo vas a poner a las 10:30 AM-. Entrar al BIOS implica por lo general presionar las teclas F2, F10 o Suprimir/Del durante el POST, dependiendo de cual sea el que te tocó en suerte.
Una vez dentro del BIOS, en la sección “Power Management” del mismo siempre hay una subsección “Advanced Power Management” o “APM Configuration“. Si tu BIOS no dispone de esta posibilidad, estás en problemas, o casi. (leer al final del artículo).
Dentro de la subsección APM, configurar la opción “Power On By Real Time Clock Alarm” para que coincida con la fecha y la hora en que querés intentar infructuosamente despertarte:

Configurando el BIOS para que me despierte a las 8:00, por que yo si madrugo, no como otros que…
Establecidas ya fecha y hora de nuestro despertador disruptivo, salir guardando los cambios presionando para ello la tecla F10.
Verificando si funcionó:
Una vez en Linux, se puede verificar el estado del Real Time Clock (RTC) tipeando:
cat /proc/driver/rtc
Que debería devolverte algo como esto:
rtc_time : 12:19:16 rtc_date : 2011-04-07 alrm_time : 07:30:00 alrm_date : ****-**-** alarm_IRQ : no alrm_pending : no 24hr : yes periodic_IRQ : no update_IRQ : no HPET_emulated : no DST_enable : no periodic_freq : 1024 batt_status : okay
En donde se ve claramente que un poco arrepentido, el cargo de conciencia me impulsó a levantarme todos los días media hora antes, a las 7:30 AM, para no llegar tarde al trabajo.
2 – Bootear Linux:
Bueno, esto es relativamente simple. Si estás leyendo esto es por que ya disponés de una distribución de Linux instalada con anterioridad, lo único que necesitás es hacer que Linux sea tu opción por defecto en el selector de sistemas operativos, si tuvieras mas de uno instalado en la misma PC.
3 – Correr un reproductor de MP3:
Paso 1 – El reproductor de MP3: Aquí es donde se abre un amplio abanico de posibilidades, pero de entre el montón me decantaré por MOC (Music On Console), por que es livianito, por que guarda la lista de reproducción y por que puede funcionar sin haber levantado el entorno gráfico ni iniciado sesión con tu nombre de usuario. El candidato perfecto digamos, aun que lo mismo daría que hubiera usado mplayer por ejemplo, pero es un poco menos flexible e implicaría andar manoseando mucho los scripts, cosa que no es muy conveniente. Si tipeás mal una ruta a un directorio, al otro día te quedás dormido y te pegan una patada en el culo.
MOC es súmamente versátil, puede hacer prácticamente lo mismo que cualquier otro reproductor de MP3 para entorno gráfico -salvo por la parte en que se muestra un vúmetro o cursilerías afines que no son mas que puras mariconadas- así que si les interesa, pueden ahondar en su principio de funcionamiento ejecutando “moc –help” o presionando la tecla “h” mientras moc está en ejecución.
Para el caso de esta guía, lo único que necesitás saber es que moc cuenta con dos paneles: El panel izquierdo, que es el de navegación por tu disco rígido y el derecho que es el de navegación por tu lista de reproducción. Los temas que quieras escuchar se agregan del panel izquierdo al derecho usando la tecla “a” y se inicia la reproducción con “Enter“.

MOC en acción, en el panel izquierdo el contenido de tu disco rídigo y en el derecho la lista de reproducción cargada
Una vez cargada la lista de reproducción del que será de ahora en mas el mejor intento documentado por despertarte a la mañana que hayas hecho alguna vez en tu vida, se puede salir de moc -pero queda en ejecución como proceso- usando la tecla “q” o salir cerrando también el proceso usando la tecla “Q” (Ojo, moc distingue entre mayúsculas y minúsculas). En el primer caso, se cierra moc pero sigue sonando de fondo. En el segundo se cierra y deja de sonar. En ambos casos la lista de reproducción queda guardada, que es lo que nos interesa.
Moc está siempre disponible en el gestor de paquetes de tu distribución de Linux de cabecera.
Paso 2 – Un script para automatizarlos a todos: Si ya tenés MOC instalado y una lista de reproducción cargada, ahora necesitás un script que sea capaz de ejecutar el reproductor de MP3 cada vez que tu PC inicie. Esta es la versión 0.0.1 Alpha que me he currado en mas o menos 2 minutos y que funciona a la perfección. Lo he llamado “despertador.sh“:
#!/bin/bash # Despertador 0.0.1 Alpha. amixer sset Master 10% &>/dev/null # Baja el volumen del subsistema de audio al 10% mocp -S # Ejecuta MOC en modo proceso invisible (modo server) mocp -p # Comienza la reproducción del playlist desde el primer tema sleep 150 # Espera dos minutos y medio amixer sset Master 25% &>/dev/null # Sube el volumen al 25% sleep 150 # Espera otros dos minutos y medio... amixer sset Master 50% &>/dev/null # Y así sucesivamente... sleep 150 amixer sset Master 75% &>/dev/null sleep 150 amixer sset Master 100% &>/dev/null
Creá un archivo de texto de nombre “despertador.sh” o como mas te guste, pegá el contenido del script de mas arriba dentro del mismo y salí guardando los cambios. Hacé al archivo ejecutable tipeando:
chmod +x /ruta/al/archivo/despertador.sh
Paso 3 – Automatizar la ejecución de despertador.sh: Nuevamente, se abre otro puto amplio abanico de posibilidades al respecto pero para tratar de hacer esta guía lo mas genérica posible nuevamente abarcaré las opciones mas comunes y que funcionarían prácticamente en cualquier distribución de Linux:
En Debian, Ubuntu y toda la infinidad de derivados y demases etcéteras, podés editar el archivo /etc/rc.local y agregar ahí dentro una línea que diga “despertador.sh” sin las comillas. Eso hará que la música comience a sonar cada vez que tu PC se encienda.
En Gentoo, para el mismo caso el archivo se llama /etc/conf.d/local.start.
En RedHat, Fedora y derivados el archivo se llama /etc/rc.d/rc.local.
Y hasta por ahí nomás llega mi sapiencia pero creo que con eso ya abarco mas o menos el 80% de los casos. Para cada distribución de Linux hay una archivo que se ejecuta automáticamente en el último nivel de ejecución y que te permite ejecutar comandos arbitrariamente. (Google es tu amigo).
En todos los casos, el script se ejecutará como super usuario, como root, por lo cual es necesario cargar tu playlist en MOC como root, si no no habrá nada que reproducir. (MOC guarda una lista de reproducción independiente por cada usuario del sistema). Esto se logra ejecutando el típico:
sudo moc
A su vez, nuestro despertador.sh tiene que estar dentro del path, para poder llamarlo todas las veces que lo necesitemos sin tener que andar recordando dónde fué que lo guardamos. Solucionable facilmente moviendo el archivo a /usr/bin:
mv despertador.sh /usr/bin/
Otra posibilidad es esperar a que el entorno gráfico se inicie y tu usuario incie sesión (suponiendo que tu usuario inicia sesión automáticamente, que hace autologin, que le dicen) y hacer que sea tu entorno de escritorio el que ejecute a despertador.sh. En Gnome por ejemplo:

Haciendo que Gnome ejecute automáticamente despertador.sh al iniciar sesión
Lógicamente además de todas las anteriores hay infinidad mas de opciones, pero siempre dependerá de cual es tu distribución de Linux y de cuales tus preferencias durante la instalación así que cualquier sugerencia al respecto desde ya es bienvenida.
¿Tu BIOS no tiene APM?
Para los pobres desahuciados cuyo BIOS no ofrece la posibilidad de configurar APM o RTC Alarm no está todo perdido. Los muchachos de MythTV tienen en su wiki oficial un documento muy bien explicado haciendo referencia a la posibilidad que tiene Linux de meterse con los paŕametros del RTC de tu BIOS inclusive cuando la misma no te ofrece el submenú necesario. La parte que vas a necesitar es la que hace referencia a “Using /sys/class/rtc/rtc0/wakealarm” y que Google gentimente ha traducido al español por mí.
¿Te gustó al artículo? ¡Entonces, compartilo!



Cinta de papel y los tornillos
BitTorrent Bundle: artistas beneficiándose del P2P
¿Tiene sentido comprar una tablet barata?
¿Como sé cuántas fotos sacó mi cámara?
Blackberry abre BBM, ¿es una buena decisión?


Estas son las grandes ventajas de linux? media enciclopedia para poder iniciar un mp3 a una hora determinada?
Responder
Precisamente.
A que no podés pasar una hora y media configurando una banalidad como esa y además terminar contento en Windows.
Responder