Modificare il runlevel di default su Slackware

A differenza di molte altre distribuzioni, Slackware di default si avvia in modalità testuale.

Per far sì che anche la vostra Slackware si avvi in modalità grafica non dovrete far altro che modificare il runlevel di default della macchina. Cos’è un runlevel? Cito da wikipedia:

“Il runlevel è un concetto tipico dei sistemi UNIX e simili. In sostanza rappresenta lo stato di attività di una macchina, relativamente ai programmi in esecuzione e ai servizi offerti.”

Il runlevel di default di Slackware (il numero 3) non comprende il server grafico. Il runlevel che avvia X (il server grafico) è il numero 4. Quindi con il vostro editor di testo preferito aprite il file /etc/inittab con privilegi di amministratore. Proprio all’inizio del file dovreste trovare queste righe:

 

# These are the default runlevels in Slackware:
# 0 = halt
# 1 = single user mode
# 2 = unused (but configured the same as runlevel 3)
# 3 = multiuser mode (default Slackware runlevel)
# 4 = X11 with KDM/GDM/XDM (session managers)
# 5 = unused (but configured the same as runlevel 3)
# 6 = reboot

# Default runlevel. (Do not set to 0 or 6)
id:3:initdefault:

Per cambiare il runlevel di default non dovrete far altro che modificare l’ultima riga, l’unica non commentata, con il numero del runlevel desiderato. Ad esempio:

id:4:initdefault:

Così la vostra macchina si avvierà di default in modalità grafica.

Fate attenzione alla scritta subito sopra la riga che avete modificato: DO NOT SET TO 0 OR 6. NON SETTATELO NÈ SU 0 NÈ SU 6. Come potete vedere infatti dallo schemino all’inizio del file, questi runlevel sono specifici per l’arresto e il riavvio della macchina, quindi se settate il runlevel di default ad uno di questi due il vostro computer sarà inutilizzabile finchè non aggiusterete il tutto con una live.

È possibile modificare i runlevel anche a macchina già avviata utilizzando il comando telinit:

su -c telinit 3

riporterà la vostra macchina alla modalità testuale. Se invece da terminale date:

su -c telinit 0

la macchina si spegnerà. Semplice no?