Vai al contenuto
glowfish

Home · Assistenza · Configurare un server Devuan senza systemd

Configurare un server Devuan senza systemd

Devuan è Debian senza systemd. Pacchetti, apt e struttura delle directory sono gli stessi, i servizi li avvia sysvinit. Questa guida vale per Devuan 6 (Excalibur) su un server Devuan e mostra cosa cambia rispetto a Debian.

Cosa è installato

  • sysvinit come sistema di avvio, gli script di avvio si trovano in /etc/init.d.
  • ifupdown per la rete. L'indirizzo si trova in /etc/network/interfaces ed è impostato alla configurazione.
  • apt con i repository deb.devuan.org/merged per Excalibur e gli aggiornamenti di sicurezza.
  • sudo. OpenSSH per l'accesso si aggiunge con la configurazione del server.

L'immagine è volutamente snella. Mancano cron e un servizio di log, che si installano con un solo comando.

1. Aggiornare e installare pacchetti

apt update && apt full-upgrade
apt install nginx

I pacchetti con un proprio servizio portano uno script di avvio per sysvinit. Il servizio gira dopo l'installazione e si avvia a ogni riavvio.

2. Gestire i servizi

FunzioneDevuanDebian con systemd
Avviare, fermare, riavviareservice nginx start|stop|restartsystemctl start|stop|restart nginx
Statoservice nginx statussystemctl status nginx
Attivare all'avvioupdate-rc.d nginx enablesystemctl enable nginx
Disattivare all'avvioupdate-rc.d nginx disablesystemctl disable nginx
Tutti i serviziservice --status-allsystemctl list-units

3. Configurare un servizio proprio

Alcuni programmi forniscono solo un'unità systemd. Basta allora un breve script di avvio con start-stop-daemon. Salvarlo come /etc/init.d/mioservizio e adattare programma e utente:

#!/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

Il blocco INIT INFO stabilisce quando il servizio si avvia. $network attende la rete.

4. Installare cron e log

apt install cron rsyslog logrotate

Poi cron esegue le voci di crontab -e e i log di sistema si trovano in /var/log/syslog. Senza systemd non esiste journalctl.

5. Modificare le impostazioni SSH

Dopo una modifica in /etc/ssh/sshd_config, sshd -t verifica il file e service ssh restart lo applica. Se una connessione resta aperta finché il nuovo accesso funziona, non si resta chiusi fuori. Per le emergenze c'è la console nell'account cliente.

Container e kernel

Da noi Devuan gira come container con Incus e usa il kernel dell'host. Aggiornamenti del kernel e moduli del kernel propri non sono quindi previsti. Chi ha bisogno di un kernel proprio sceglie un vServer con KVM, ad esempio con Debian.

Domande frequenti

I pacchetti Debian funzionano su Devuan?
Sì. Devuan riprende i pacchetti Debian e sostituisce solo quelli che dipendono da systemd. I pacchetti .deb di terzi funzionano finché non richiedono funzioni di systemd.
Come passo da Devuan 5 a Devuan 6?
Con una reinstallazione nell'account cliente. Prima i dati si possono salvare con la directory di soccorso, vedi Reinstallare il server senza perdere dati.
Posso usare OpenRC al posto di sysvinit?
Devuan offre OpenRC come pacchetto (apt install openrc). Viene fornito sysvinit. Un cambio interviene sull'avvio del sistema, quindi crei prima un backup.

Continua: I primi passi sul suo vServer Configurare un server Alpine Linux

Vedi il server Devuan