Capítulo 9: Administración del servidor Ubuntu 14.04 LTS



9.5. Iniciar o detener programas y aplicaciones durante el inicio

Además de los servicios del sistema que acabamos de estudiar, existen una serie de programas o aplicaciones que se ejecutan durante el inicio del sistema y que se encargan de simplificarnos la existencia. Estos programas se encargan de las notificaciones, del control de las conexiones de red, del protector de pantalla, etc.

Algunos de ellos los añade el propio usuario y otros los incluye el sistema de forma automática.

Iniciar o parar programas del usuario durante el inicio

En la interfaz gráfica de Ubuntu 14.04 LTS, el proceso para conseguir que se inicien o detengan, durante el arranque, programas que hayamos añadido nosotros es tan sencillo como buscar la herramienta Aplicaciones al inicio en el Dash.

1

Comenzamos a escribir el nombre y, cuando la veamos, hacemos clic sobre ella.

En un momento veremos la ventana de la herramienta con las aplicaciones que haya incluido el usuario.

Como puede intuirse en la ventana, desde aquí podemos deshabilitar la ejecución de un programa haciendo clic sobre la casilla de verificación que hay a su izquierda o quitarlo definitivamente haciendo clic sobre el botón Quitar.

2

También podemos hacer clic sobre el botón Añadir para ejecutar cualquier programa automáticamente la próxima vez que se inicie el sistema.

Bastará con rellenar, en la ventana emergente que aparece, los datos de la aplicación que queremos que se ejecute al arrancar el sistema. A modo de ejemplo, aquí vamos probar con el editor de textos.

3

Cuando hayamos acabado, hacemos clic sobre el botón Añadir.

De vuelta en la ventana principal, comprobaremos que se ha añadido satisfactoriamente. Observa que, en lugar del nombre del programa, en la línea superior aparece el contenido que hayamos escrito en el campo Nombre y, de bajo, lo que hayamos escrito en el campo Comentario (aunque, en este caso, lo hemos dejado en blanco).

4

Ahora podemos cerrar la ventana y reiniciar el sistema para comprobar que funciona correctamente.

5

Cuando termine de iniciarse el sistema, y sin que nosotros hagamos nada, se abrirá automáticamente el programa (en este ejemplo, el editor de textos gEdit)

Iniciar o parar programas del sistema durante el inicio

En un intento de protegernos de nosotros mismos, Canonical ha impedido que los programas del sistema que se ejecutan durante el inicio, estén visibles para los usuarios dentro de la herramienta Aplicaciones al inicio.

Antes de nada, hay que decir que esta herramienta utiliza el directorio /etc/xdg/autostart/ para definir las aplicaciones que deben ejecutarse durante el inicio.

1

Aquí vemos el contenido de la carpeta /etc/xdg/autostart/.

Por ejemplo, indicator-bluetooth.desktop, permite iniciar el indicador Bluetooth del sistema.

2

Contenido del archivo indicator-bluetooth.desktop visto dentro del editor nano.

Como podemos ver en la imagen, una de las variables que contiene el archivo es NoDisplay que, cuando contiene el valor true, hace que este servicio no aparezca en la herramienta Aplicaciones al inicio.

Para conseguir que aparezca, lo único que tenemos que hacer es cambiar su valor por false (en realidad, basta con comentar la línea). Sin embargo, si queremos que aparezcan todos los servicios, tendríamos que editarlos uno por uno. A modo de ejemplo, en el momento de escribir estas líneas, mi servidor tiene 32 archivos en el directorio /etc/xdg/autostart/.

Para solventar el problema de una forma mas sencilla, podemos recurrir al comando sed (stream editor). Se trata de un editor de textos bastante especial que acepta como entrada un archivo y lo modifica línea a línea según el parámetro recibido. Sin entrar en mucho detalle, el siguiente comando pone un carácter de comentario delante de la palabra NoDisplay en todos los archivos que terminen en *.desktop:

sudo sed --in-place 's/NoDisplay/#NoDisplay/g' *.desktop

3

Ejecutamos el comando sed dentro del directorio /etc/xdg/autostart/.

Si ahora consultamos de nuevo el contenido del archivo indicator-bluetooth.desktopcomprobaremos que la línea ha cambiado satisfactoriamente.

4

La variable NoDisplay aparece precedida por un carácter de comentario.

Cuando abramos de nuevo la herramienta Aplicaciones al inicio, comprobaremos que ahora aparecen todas las aplicaciones que el sistema ejecuta durante su arranque.

5

La herramienta Aplicaciones al inicio mostrando todos los servicios y aplicaciones.

Para deshabilitar cualquiera de ellas, bastará con desmarcar la casilla de verificación que hay a su izquierda. Debemos tener presente que estamos trabajando con un sistema operativo pensado para usuarios de escritorio y, sin embargo, lo estamos configurando para actuar como servidor. En este contexto, nos encontraremos con servicios, como el servicio Bluetooth que hemos mencionado más arriba, que no tiene mucho sentido mantenerlo en ejecución de forma indefinida en el servidor.

Si deshabilitamos las aplicaciones innecesarias, el sistema arrancará más rápido, funcionará más desahogado y será más seguro.

Para deshacer los cambios y volver a ocultar los programas en la herramienta Aplicaciones al inicio, bastará con quitar el comentario que hemos puesto antes. Por ejemplo, usando el siguiente comando:

sudo sed --in-place 's/#NoDisplay/NoDisplay/g' *.desktop

El directorio /etc/xdg/autostart contiene aplicaciones que se inician para todos los usuarios del equipo. Si queremos que una aplicación se inicie sólo para un usuario en particular, deberemos ubicar el lanzador (el archivo con extensión .desktop) en el directorio ~/.config/autostart. (recuerda que el carácter '~' hace referencia a /home/usuario, donde usuario es el nombre de la cuenta de cada usuario del equipo).

Como cabe esperar, los usuarios que no sean administradores sólo podrán actuar sobre sus propios lanzadores (los que se encuentran en su carpeta home).