GNU/Linux >> Linux Esercitazione >  >> Linux

7 Esempi di comandi chkconfig Linux:aggiungi, rimuovi, visualizza, cambia servizi

Il comando Chkconfig viene utilizzato per impostare, visualizzare o modificare i servizi configurati per l'avvio automatico durante l'avvio del sistema.

Questo articolo contiene 7 esempi pratici che spiegano come usare il comando chkconfig.

1. Verifica lo stato di avvio del servizio da Shell Script

Quando esegui il comando chkconfig solo con il nome del servizio, restituisce true se il servizio è configurato per l'avvio. Il seguente frammento di codice mostra come verificare se un servizio è configurato per l'avvio o meno da uno script di shell.

# vi check.sh
chkconfig network && echo "Network service is configured"
chkconfig junk && echo "Junk service is configured"

# ./check.sh
Network service is configured

Puoi anche controllare in modo specifico se è configurato per un particolare livello di esecuzione o meno.

# vi check1.sh
chkconfig network --level 3 && echo "Network service is configured for level 3"
chkconfig network --level 1 && echo "Network service is configured for level 1"

# ./check1.sh
Network service is configured for level 3

2. Visualizza lo stato attuale dei servizi di avvio

L'opzione –list mostra tutti i servizi con lo stato di configurazione di avvio corrente.

# chkconfig --list
abrtd   0:off   1:off   2:off   3:on    4:off   5:on    6:off
acpid   0:off   1:off   2:off   3:off   4:off   5:off   6:off
atd     0:off   1:off   2:off   3:on    4:on    5:on    6:off
...

Per visualizzare solo i servizi configurati per essere avviati durante l'avvio del sistema, procedere come segue. Tieni presente che questo presuppone che il livello di avvio del tuo sistema sia 3.

chkconfig --list | grep 3:on

Nota :per visualizzare tutti i livelli di esecuzione del sistema disponibili, fare riferimento a 6 fasi del processo di avvio di Linux

Per visualizzare la configurazione di avvio di un particolare servizio, grep l'output di 'chkconfig –list' per quel servizio.

chkconfig --list | grep network

3. Aggiungi un nuovo Servizio alla Startup

Utilizzare l'opzione –add per aggiungere un servizio specifico all'elenco dei servizi che verranno avviati durante il riavvio del sistema.

L'esempio seguente mostra come aggiungere un nuovo servizio (ad esempio, iptables) all'elenco dei servizi che devono essere avviati. Anche il comando 'chkconfig –add' attiverà automaticamente i livelli 2, 3, 4 e 5 come mostrato di seguito.

# chkconfig --list | grep iptables

# chkconfig --add iptables

# chkconfig --list | grep iptables
iptables       0:off   1:off   2:on    3:on    4:on    5:on    6:off

Nota:"chkconfig –add" aggiunge solo un servizio esistente all'elenco di avvio. Se il servizio non esiste, dovresti prima installarlo prima di aggiungerlo all'elenco di avvio del sistema. Anche se questo è abbastanza ovvio, vale la pena menzionarlo, poiché un principiante potrebbe commettere questo errore.

4. Rimuovere un servizio dall'elenco di avvio

L'esempio seguente mostra che i servizi ip6tables sono configurati per l'avvio.

# chkconfig --list | grep ip6tables
ip6tables       0:off   1:off   2:off   3:on   4:off   5:off   6:off

Per rimuoverlo dall'elenco di avvio, utilizzare l'opzione –del come mostrato di seguito.

# chkconfig --del ip6tables

# chkconfig --list | grep ip6tables

5. Attiva o disattiva un servizio per un livello di esecuzione selezionato

A volte potresti non voler eliminare l'intero servizio. Invece, potresti semplicemente voler attivare o disattivare il flag per un particolare livello di esecuzione (per un particolare servizio).

L'esempio seguente disattiverà il servizio nfserver per il livello 5

# chkconfig --level 5 nfsserver off

Puoi anche combinare più livelli. L'esempio seguente disattiverà nfsserver sia per il livello 3 che per il livello 5.

# chkconfig --level 35 nfsserver off

6. File di script nelle sottodirectory rc.d

Ogni volta che aggiungi o rimuovi un servizio dal controllo chkconfig, fa quanto segue nelle sottodirectory /etc/rc.d.

  • Quando il comando chkconfig –add viene eseguito, crea un file di collegamento simbolico per avviare e arrestare il servizio nella directory rc corrispondente.
  • Quando il comando chkconfig –del viene eseguito, rimuove il file di collegamento simbolico dalla directory rc corrispondente.

L'esempio seguente mostra che xinetd è abilitato sia per il livello di esecuzione 3 che per il 5.

Quindi, xinetd avrà due file nella directory rc3.d e due file nella directory rc5.d. Il file che inizia con K viene utilizzato durante l'arresto (K sta per kill). Il file che inizia con S viene utilizzato durante l'avvio (S sta per start).

# chkconfig --list | grep xinetd
xinetd                    0:off  1:off  2:off  3:on   4:off  5:on   6:off
xinetd based services:

# cd /etc/rc.d/rc3.d
# ls | grep xinetd
K08xinetd
S14xinetd

# cd /etc/rc.d/rc5.d

# ls | grep xinetd
K08xinetd
S14xinetd

7. rcx.d Modifiche alla directory per l'operazione di aggiunta

Quando aggiungi un nuovo servizio al controllo chkconfig, i livelli di esecuzione predefiniti per quel servizio verranno attivati ​​automaticamente e i file verranno creati nelle directory rcx corrispondenti.

Ad esempio, se il servizio nfsserver non esiste nel controllo chkconfig, nessun file di avvio del servizio nfsserver sarebbe presente nelle directory /etc/rc.d/rc*.d come mostrato di seguito.

# chkconfig  --list | grep nfsserver
nfsserver                 0:off  1:off  2:off  3:off  4:off  5:off  6:off

# ls /etc/rc.d/rc3.d | grep nfsserver

# ls /etc/rc.d/rc5.d | grep nfsserver

Dopo aver aggiunto il servizio nfsserver, vedrai i collegamenti simbolici in queste directory.

# chkconfig --add nfsserver
nfsserver                 0:off  1:off  2:off  3:on   4:off  5:on   6:off

# cd  /etc/rc.d/rc3.d
# ls -l | grep nfsserver
lrwxrwxrwx 1 root root 12 2011-06-18 00:52 K08nfsserver -> ../nfsserver
lrwxrwxrwx 1 root root 12 2011-06-18 00:52 S14nfsserver -> ../nfsserver

# cd /etc/rc.d/rc5.d
# ls -l | grep nfsserver
lrwxrwxrwx 1 root root 12 2011-06-18 00:52 K08nfsserver -> ../nfsserver
lrwxrwxrwx 1 root root 12 2011-06-18 00:52 S14nfsserver -> ../nfsserver

Quando si disattiva il servizio utilizzando l'opzione –del o l'opzione –level, il file di collegamento simbolico corrispondente nella directory rcx.d verrà eliminato come mostrato di seguito.

# chkconfig --level 5 nfsserver off

# ls /etc/rc.d/rc5.d  | grep nfsserver

Linux
  1. 7 Esempi di comandi Linux df

  2. 8 Esempi di comandi TR Linux

  3. Esempi di comandi rm in Linux

  4. ps Esempi di comandi in Linux

  5. Esempi di comandi chkconfig in Linux

Comando wc Linux con esempi

10 esempi di comandi iftop in Linux

Comando di aggiunta route Linux con esempi

7 Esempi di comandi di route Linux (come aggiungere route in Linux)

Esempi di comandi id in Linux

Comando Linux chkconfig con esempi