Esta receta explica cómo instalar y configurar la herramienta NUT para aprovechar al máximo las posibilidades de un SAI en un sistema Debian GNU/Linux. Concretamente, los pasos son para un MGE Pulsar Extreme 1500C
Introducción
Instalar un software de control para un SAI sólo tiene sentido si podemos hablar con él para obtener datos de su estado y funcionamiento. Si el SAI no tiene ningún tipo de conexión de datos (tal como serie o USB) esta receta no te sirve. En cualquier caso, un SAI que no dice nada sobre su estado es de muy poca utilidad. Si estás pensado en comprar un SAI, elige uno con el que puedas hablar. En la página de nut hay una lista de las marcas y modelos compatibles.
Instalación
Si tienes una distro compatible Debian, instalar el paquete nut es así de fácil:
Descripción
Este software tiene una arquitectura cliente/servidor. Esta configuración permite que varios equipos alimentados por un único SAI (y que ejecutan un cliente) puedan hablar, a través de la red, con el equipo que tiene la conexión de datos del SAI (y que ejecuta el servidor). De este modo, ante un corte de corriente, todos los equipos quedan informados y pueden actuar en consecuencia.
Por este motivo, aunque el SAI dé servicio a una sola máquina, será necesario instalar un servidor y un cliente.
Funcionalidad
Lógicamente, la función de un SAI o UPS (mantener la alimentación durante cortes de luz) es insuficiente para un servidor, ya que es muy probable que no haya nadie para apagar el equipo durante el tiempo de duración de las baterías. El software nut ofrece servicios mucho más interesantes:
Fijar un umbral de bateria, por debajo del cual el equipo conectado al SAI se apaga automáticamente.
Desconexión del SAI. De este modo las baterías no se agotan inútilmente, pues ya no hay nada que alimentar.
Fijar umbrales de carga máxima.
Monitorización y configuración remota (por medio de CGI).
Con esa configuración, ante un corte de luz, ocurre lo siguiente:
El SAI pasa a modo batería.
Al bajar el nivel de carga de la batería al umbral fijado, el driver que corre en el servidor lo detecta e informa a todos los clientes.
Los clientes inician el proceso de apagado de cada equipo.
Justo antes de apagarse, el servidor envía al SAI el comando de desconexión.
El SAI recibe el comando, espera un tiempo prefijado y después se apaga.
Al volver la corriente:
El SAI enciende automáticamente.
Cuando la fuente de alimentación del PC detecta voltaje (procedente del SAI) arranca el equipo. Para esto es necesario configurar el BIOS Setup de cada ordenador.
No todos los SAIs pueden hacer todo lo que se índica. Tendrás más o menos posibilidades dependiendo de la gama y precio del SAI.
Configuración
Configuración común
Lo primero, y antes de que se nos olvide, será cambiar los permisos del puerto serie (/dev/ttyS0 o /dev/ttyS1), pues nos debe dejar leer y escribir en él como root. En Debian, los puertos serie suelen pertenecer al grupo dialout, así que la manera más fácil de conseguir permiso es:
En /etc/nut/ups.conf habrá que realizar algunos cambios (tanto en cliente como en servidor). Aquí es donde se añade el driver (cada familia de SAIs tiene su propio driver):
Por ejemplo, para un SAI “MGE Pulsar Extreme” será:
Configuración del servidor
Edita el fichero /etc/default/nut modificando la línea “START_UPSD=no” por “START_UPSD=yes”
En el fichero /etc/nut/upsd.conf tienes que crear la lista de control de acceso (ACL). Para ello incluye (si no existe ya):
Por último, edita el fichero /etc/nut/upsd.users para dar acceso a los usuarios. Para ello, añade las líneas:
Configuración del cliente
Edita el fichero /etc/default/nut modificando la línea “START_UPSMON=no” por “START_UPSMON=yes”
Lo siguiente será /etc/nut/upsmon.conf. Éste es el fichero de configuración del cliente. La línea obligatoria a añadir es la del monitor:
Lo normal para el equipo que tiene la conexión de datos al SAI es que funcione en modo “master”. Eso significa que debe esperar a que los “slaves” apaguen antes de hacerlo él. Así que quedará algo como esto:
Ahora debes reniciar el servicio de la forma habitual:
Consejos
Lo mejor es que la primera vez se arranque todo a mano, pues el script descrito en la sección anterior redirige todos los errores a /dev/null. Para ello se hará:
Puedes ver que la monitorización funciona adecuadamente con el comando upsc:
El gestor de arranque GRUB permite hacer operaciones muy sensibles, como por ejemplo, modificar el dispositivo desde el que arranca el sistema o arrancar sin tener la contraseña de super-usuario. Para evitar esto, tienes la posibilidad de protoger GRUB con su propia contraseña
Para ponerle una contraseña debes hacer lo siguiente (como root):
Te pedirá una contraseña y su verificación, como resultado te dará un puñado de caracteres, los copias.
Ahora edita el fichero /boot/grub/menu.lst y antes de la lista de items de arranque añade:
password --md5 pega_puñado_de_caracteres
Ahora cuando arranque grub sólo te permitirá seleccionar un item de arranque, o pulsar 'p' para introducir la clave y a partir de ahí tendrás acceso total hacer lo que quieras.
Por cierto, si en alguna entrada de arranque pones 'lock' te pedirá la misma contraseña para poder usarla.
fácil...
Para instalar grub en el arranque del disco debes ejecutar:
siempre que tu disco de arranque sea /dev/hda.
Configuración
Grub puede crear un fichero de configuración por defecto...
Este programa averigua qué kernels tienes instalados y modifica o crea (si no existe) un fichero menu.lst con los datos necesarios. Hazlo también después de instalar un nuevo kernel.
El fichero menu.lst
Su aspecto típico es:
timeout 4
color black/cyan yellow/cyan
default 0
title Debian GNU/Linux [2.4.19-686 precompiled]
root (hd0,4)
kernel /boot/vmlinuz-2.4.19-686 root=/dev/hda5
initrd /boot/initrd.img-2.4.19-686
title Debian single-user (kernel 2.2.18)
root (hd0,4)
kernel /boot/vmlinuz-2.2.18 root=/dev/hda5 ro single
initrd /boot/initrd-2.2.18.gz
title Windows 98
rootnoverify (hd0,0)
makeactive
chainloader +1
Bueno... hace unos días se habló en CRySoL de realizar una "install party"... pero como viene siendo habitual si no hay nadie que diga: "va, lo hago yo" pues no se hace. Pues bien yo (Tobias Diaz) y el siempre bien ponderado Cleto hemos decidido decir: "va, lo hacemos nosotros" y hemos empezado a preguntar por aquí y por allí a ver qué podemos y qué no podemos hacer.
Finalmente hemos llegado a la feliz idea de realizar una install party con talleres variados... es decir, pasaremos unas amenas horas instalando un sistema base tipo Debian/Ubuntu/Gnesis/MoLinux y después sacando parte del jugo a nuestros "hijos".
Todavía queda mucho por decir, pero lo mas inmediato es decidir que días os vienen mejor, para eso esta la encuesta... votad por favor!
En próximos días os contaremos como van los progresos... ok?
Ah! ya pediremos colaboraciones a ver si es verdad que todos los "podéis contar conmigo" eran de verdad o de boquilla... jejejeje...
Buenas, lo que me ha pasado ahora es que he tenido que reinstalar windows en mi portatil, por motivos que no vienen al caso, la cuestión es que he perdido el gestor de arranque. Lo mejor de todo es que ya me había pasado antes e instalé un GAG que encontré en internet. Ahora quiero recuperar el GRUB, sé que se puede hacer con el live CD pero, no sé como, a ver quién me echa una mano, gracias.