miércoles, 20 de mayo de 2015

Script para lanzar aplicación con start-stop-daemon a nivel de sistema

La mayoría de las distribuciones de GNU/Linux utilizan start-stop-daemon en sus scripts de inicio systemV. Esto facilita la creación de procesos al inicio con parámetros como usuario, aplicación, entorno, etc. modificables.
En este caso, debido a la migración de un sistema windows a ubuntu, es necesario lanzar una aplicación de windows con wine y un usuario determinado.
Primero creamos el archivo script
vi /etc/init.d/opac
y le editamos el siguiente contenido:
#!/bin/sh

### BEGIN INIT INFO
# Provides:          Catalogo
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# X-Interactive:     true
# Short-Description: Opac CRUB
# Description:       Catalogo OnLine de la Biblioteca
#                    CRUB UNCo
### END INIT INFO

set -e
NAME=opac
PIDFILE=/var/run/$NAME.pid
#This is the command to be run, give the full pathname
DAEMON=/usr/bin/wine
DAEMON_OPTS=" /home/hector/.wine/drive_c/OpenMP/apache/Apache.exe -k start"

export PATH="${PATH:+$PATH:}/usr/sbin:/sbin"

case "$1" in
  start)
        echo -n "Starting daemon: "$NAME
        start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_OPTS
        echo "."
        ;;
  stop)
        echo -n "Stopping daemon: "$NAME
        start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE
        echo "."
        ;;
 restart)
        echo -n "Restarting daemon: "$NAME
        start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile $PIDFILE
        start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_OPTS
        echo "."
        ;;

  *)
        echo "Usage: "$1" {start|stop|restart}"
        exit 1
esac

exit 0

Luego de esto damos atributo de ejecución
chmod +x /etc/init.d/opac
Y finalmente agregamos el servicio a nuestro run level.
 update-rc.d opac defaults





Fuentes:

http://www.tldp.org/LDP/solrhe/Securing-Optimizing-Linux-RH-Edition-v1.3/chap3sec21.html
http://manpages.ubuntu.com/manpages/saucy/man8/start-stop-daemon.8.html
http://blog.frd.mn/how-to-set-up-proper-startstop-services-ubuntu-debian-mac-windows/
http://manpages.ubuntu.com/manpages/hardy/es/man8/update-rc.d.8.html

viernes, 15 de mayo de 2015

Linux Configurar repositorios DSL (DamnSmallLinux)

damn Small Linux es una distribución basada en knoppix que a su vez, en aquellos inicios cuando fueron creadas ambas, están basadas en debian woody.

El objetivo de esta tarea es tener un entorno GNU/Linux conocido (debian alike) en una máquina virtual en conjunto con el simulador de redes netkit para realizar tareas prácticas en la Técnicatura de administración.
Instalar DSL en una VM no es para nada complejo. Sin embargo, a la hora de utilizar nuestra VM es probable que nos encontremos con algunos errores; sobre todo por los cambios que realizó el hosting del repositorio de DSL que es Ibiblio.
Es por ello que aqui voy a dejar las instrucciones para corregir esto y además los comandos para convertir a DSL en un verdadero debian. Con esto lo que se obtiene en primera medida es la herramienta apt-get, fundamental para instalar software adicional.

Una vez en nuestra VM-DSL lanzamos una terminal root y allí editamos el archivo de configuración de dsl:

vi /opt/.dslrc
aquí borramos la primera linea y agregamos esta:
mirror: distro.ibiblio.org/damnsmall/ 

Con esto ya tenemos nuestro DSL configurado correctamente con su repositorio.

Finalmente en esta misma consola ejecutamos dos comandos. Primero, las herramientas GNU:
/usr/sbin/gnu-utils-restore
Y luego habilitamos los repositorios debian:
/usr/sbin/dpkg-restore
Finalmente, y para sentirnos realmente en una distribución "Debian alike" ejecutamos:
apt-get update


 No recomiendo hacer un apt-get upgrade ya que ello rompería la convivencia de woody con dsl.

En proximos post explicaré cómo utilizar netkit desde el live cd de Raizo en nuestra DSL-VM