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/interfacesy se fija en la configuración. - apt con los repositorios
deb.devuan.org/mergedpara 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ón | Devuan | Debian con systemd |
|---|---|---|
| Iniciar, detener, reiniciar | service nginx start|stop|restart | systemctl start|stop|restart nginx |
| Estado | service nginx status | systemctl status nginx |
| Activar al arrancar | update-rc.d nginx enable | systemctl enable nginx |
| Desactivar al arrancar | update-rc.d nginx disable | systemctl disable nginx |
| Todos los servicios | service --status-all | systemctl 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