openSUSE:Gestire Systemd

Questa pagina illustra come utilizzare systemd, anche per un uso duraturo, ma anche come eliminarlo dal sistema.

Systemd è il nuovo sistema di avvio per openSUSE (e gran parte delle principali distribuzioni di Linux). Fa un uso ottimale della ram disponibile, parallelizza il più possibile le attività all'avvio e gestisce nel miglior modo possibile le interazioni tra i vari driver e i demoni che carica in fase di avvio.

Una delle pagine dal sito principale di systemd

Pagina sul sito di Fedora

Usare systemd

Se il sistema non dispone di systemd e lo si vuole usare (su openSUSE 11.4 o 12.1, per esempio), dovrebbe essere sufficiente installare systemd (con YaST o "zypper in systemd"), e aggiungere alla riga di comando relativa al kernel:

init=/bin/systemd

Per un primo test, è sicuramente meglio aggiungere l'opzione citata qui sopra direttamente a mano nel menu di avvio del sistema, dato che in questo modo è possibile riavviare con un sistema funzionante, nel caso qualcosa fosse andato storto.

Usare system V come init

Se il sistema di avvio predefinito fosse systemd e per qualunque motivo si volesse eliminarlo dal sistema per utilizzare il precedente init system V, esistono vari metodi per farlo. Ciò potrebbe risultare necessario con le versioni di openSUSE 12.1 e successive, che usano systemd per impostazione predefinita.

  • Disinstallare systemd. Si dovrebbe fare questa operazione solo con estrema cautela poiché il rischio di ritrovarsi con un sistema non più in grado di avviarsi è elevato;
  • Come minimo il pacchetto rpm systemd-sysvinit deve essere rimosso, se è presente, altrimenti /sbin/init è un collegamento simbolico a systemd. [vedere anche più sotto]
  • Premere "F5" nella schermata di avvio e scegliere "System V"
  • aggiungere init=/sbin/init alla riga del kernel. Questo si può fare manualmente per controllare i risultati ottenuti, oppure aggiungendolo ne file /boot/grub/menu.lst con il proprio editor di testo preferito o con YaST.

[Quest'ultimo "init=/sbin/init" a volte funziona, ma non quando init è un collegamento simbolico a systemd, come nel caso di una nuova installazione. Se fosse così, aggiungere "init=/sbin/sysvinit" alla riga del Kernel nella voce di grub opportuna]