back
Personalizzare un runlevel

Come abbiamo precedentemente visto, debian utilizza di default il runlevel 2. Possiamo dunque modificare a nostra scelta i runlevel 3-5 senza cambiare il "default" del nostro sistema.
Per infine fare un esempio sulla gestione dei runlevel andremo a modificare il runlevel 3 per avviare un sistema molto leggero, senza server grafico e con solo i servizi di rete minimali. Questo runlevel lo potremo dunque utilizzare per una manutenzione "leggera" del nostro sistema (rispetto al Single-User Mode, potremo ad esempio loggarci come utente (e non solo root) e accedere alla rete. Diamo un'occhiata al mio attuale runlevel 2:

/etc/rc2.d$ ls
K21apmd            S20dcmqrscp           S24hal         S89cron
README             S20exim4              S25bluetooth   S91apache2
S05loadcpufreq     S20kerneloops         S25pulseaudio  S99acpi-support
S10rsyslog         S20nvidia-glx         S26gpsd        S99bootchart
S12acpid           S20nvidia-kernel      S30gdm         S99rc.local
S12dbus            S20openbsd-inetd      S50cups        S99rmnologin
S14avahi-daemon    S20rsync              S70bootlogs    S99stop-bootlogd
S19cpufrequtils    S20saned              S75sudo
S19postgresql-8.4  S20speech-dispatcher  S89anacron
S20acct            S23ntp                S89atd

Come vedete molti servizi sono abilitati, ma non saranno necessari per una "manutenzione".

Utilizzeremo dunque i metodi imparati per "alleggerire" il runlevel 3 (partendo dal runlevel 2) ottenendo qualcosa di simile:

/etc/rc3.d$ ls
K01bootchart      K20speech-dispatcher  S12acpid          S70bootlogs
K01gdm            K21apmd               S12dbus           S75sudo
K09apache2        K21postgresql-8.4     S14avahi-daemon   S89atd
K11anacron        K23ntp                S19cpufrequtils   S99acpi-support
K11cron           K73gpsd               S20acct           S99rc.local
K15pulseaudio     K74bluetooth          S20dcmqrscp       S99rmnologin
K20exim4          K80cups               S20kerneloops     S99stop-bootlogd
K20nvidia-glx     README                S20openbsd-inetd
K20nvidia-kernel  S05loadcpufreq        S20rsync
K20saned          S10rsyslog            S24hal

Come potrete notare, si passa da una "K" a 17... niente male! Per passare ora a questo runlevel potremo utilizzare "telinit" come abbiamo imparato sopra. Ancora più interessante sarà però avviare il sistema direttamente in questo runlevel, risparmiando tutto il tempo necessario ad avviare i servizi citati e per la nostra sessione di lavoro considerati inutili. Fare ciò è semplicissimo e ci basterà una singola cifra nella configurazione di GRUB (o GRUB2): questa andrà inserita dopo la linea che avvia il kernel e rappresenta il runlevel da avviare. Sarà tutto più semplice con un esempio.

back