Posts Tagged “boot”

Me ha tocado hacer una configuración con estos requisitos:

  1. Al iniciar el PC con Linux, se lanza automáticamente una aplicación gráfica SDL sin hacer login gráfico (display manager), ni arrancar un gestor de escritorios ni de ventanas.
  2. Al cerrar dicha aplicación gráfica, el PC se apaga.
  3. Durante la ejecución de la aplicación gráfica ha de ser posible acceder a una consola en modo texto, tanto en el PC físico como a través de ssh.

Solución:

  • Elegir la versión de Linux e instalarla: aunque quizás sería más lógico ir a una Debian, por comodidad de disponibilidad de drivers recientes me voy a una Ubuntu 9.10 Karmic de 64 bits.
  • Hacer que no se inicie el gdm: en /etc/default/grub incluir text en la línea de GRUB_CMDLINE_LINUX_DEFAULT, ej:
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash text" y después hacer sudo update-grub
  • Login automático a una de las consolas de texto: instalar mingetty y cambiar en /etc/init/tty1.conf (en Karmic ya no hay /etc/inittab sino upstart):
    #exec /sbin/getty -8 38400 tty1
    exec /sbin/mingetty --autologin usuarioXX --noclear tty1
  • Lanzamiento automático de la aplicación sólo en una terminal: añadir al ~/.bash_login para del usuarioXX:
    if [ $(tty) = "/dev/tty1" ] ; then
    xinit aplicacion_grafica -- :1
    sudo /sbin/poweroff
    fi

    Con lo anterior, se consiguen que sólo se inicie en el caso de haber hecho login en tty1. Además sería posible hacer Ctrl-Alt-F2, Ctrl-Alt-F3,… y ssh (en este caso se crea una pseudoterminal).
  • Apagado automático: para que usuarioXX pueda llamar a poweroff, añadir al final de /etc/sudoers la línea:
    usuarioXX ALL=(root) NOPASSWD:/sbin/poweroff

Comments 4 Comentarios »