Saltar al contenido
glowfish

Inicio · Ayuda · Configurar un servidor Devuan sin systemd

Configurar un servidor Devuan sin systemd

Devuan es Debian sin systemd. Los paquetes, apt y la estructura de directorios son los mismos. Los servicios los arranca sysvinit. Esta guía es válida para Devuan 6 (Excalibur) en un servidor Devuan y muestra lo que cambia respecto a Debian.

Qué está instalado

  • sysvinit como sistema de arranque. Los scripts de inicio están en /etc/init.d.
  • ifupdown para la red. La dirección está en /etc/network/interfaces y se fija en la configuración.
  • apt con los repositorios deb.devuan.org/merged para Excalibur y las actualizaciones de seguridad.
  • sudo. OpenSSH para iniciar sesión se añade al configurar el servidor.

La imagen es deliberadamente ligera. Faltan cron y un servicio de registros, que se instalan con un solo comando.

1. Actualizar e instalar paquetes

apt update && apt full-upgrade
apt install nginx

Los paquetes con servicio propio incluyen un script de inicio para sysvinit. El servicio funciona tras la instalación y arranca con cada reinicio.

2. Gestionar servicios

FunciónDevuanDebian con systemd
Iniciar, detener, reiniciarservice nginx start|stop|restartsystemctl start|stop|restart nginx
Estadoservice nginx statussystemctl status nginx
Activar al arrancarupdate-rc.d nginx enablesystemctl enable nginx
Desactivar al arrancarupdate-rc.d nginx disablesystemctl disable nginx
Todos los serviciosservice --status-allsystemctl list-units

3. Configurar un servicio propio

Algunos programas solo incluyen una unidad de systemd. En ese caso basta un breve script de inicio con start-stop-daemon. Guardarlo como /etc/init.d/miservicio y adaptar programa y usuario:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          meindienst
# Required-Start:    $network $remote_fs
# Required-Stop:     $network $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
### END INIT INFO

PROGRAMM=/usr/local/bin/meindienst
PIDDATEI=/run/meindienst.pid

case "$1" in
  start)   start-stop-daemon --start --background --make-pidfile --pidfile $PIDDATEI --chuid dienst --exec $PROGRAMM ;;
  stop)    start-stop-daemon --stop --pidfile $PIDDATEI --remove-pidfile ;;
  restart) "$0" stop && "$0" start ;;
  *)       echo "Aufruf: $0 {start|stop|restart}" && exit 1 ;;
esac
chmod 755 /etc/init.d/meindienst
update-rc.d meindienst defaults
service meindienst start

El bloque INIT INFO fija cuándo arranca el servicio. $network espera a la red.

4. Instalar cron y registros

apt install cron rsyslog logrotate

Después, cron ejecuta las entradas de crontab -e y los registros del sistema están en /var/log/syslog. Sin systemd no existe journalctl.

5. Cambiar los ajustes de SSH

Tras un cambio en /etc/ssh/sshd_config, sshd -t comprueba el archivo y service ssh restart lo aplica. Si mantiene una conexión abierta hasta que funcione el nuevo inicio de sesión, no se queda fuera. Para emergencias está la consola en la cuenta de cliente.

Contenedor y kernel

Con nosotros, Devuan funciona como contenedor con Incus y usa el kernel del anfitrión. Por eso no hay actualizaciones del kernel ni módulos del kernel propios. Quien necesite un kernel propio elige un vServer con KVM, por ejemplo con Debian.

Preguntas frecuentes

¿Funcionan los paquetes de Debian en Devuan?
Sí. Devuan adopta los paquetes de Debian y solo sustituye los que dependen de systemd. Los paquetes .deb de terceros funcionan mientras no exijan funciones de systemd.
¿Cómo paso de Devuan 5 a Devuan 6?
Con una reinstalación en la cuenta de cliente. Antes, los datos se pueden guardar con el directorio de rescate. Ver Reinstalar el servidor sin perder datos.
¿Puedo usar OpenRC en lugar de sysvinit?
Devuan ofrece OpenRC como paquete (apt install openrc). Por defecto se entrega sysvinit. El cambio afecta al arranque del sistema. Por eso, cree antes una copia de seguridad.

Más: Los primeros pasos en su vServer Configurar un servidor Alpine Linux

Ver servidor Devuan