GNU/Linux >> Linux Esercitazione >  >> Linux

Come utilizzare il comando sysctl in Linux

Introduzione

sysctl è un'utilità software di alcuni sistemi operativi simili a Unix che legge e modifica gli attributi del kernel di sistema come il suo:

  • Numero di versione
  • Limiti massimi
  • Impostazioni di sicurezza.

È disponibile sia come chiamata di sistema per programmi compilati, sia come comando dell'amministratore per l'uso interattivo e lo scripting. Linux espone inoltre sysctl come un file system virtuale.

Questo articolo mostra come utilizzare il sysctl comando per visualizzare e modificare i parametri del kernel in fase di esecuzione.

Visualizza i parametri del kernel con sysctl

Per visualizzare tutti i parametri correnti del kernel usa questo comando:

sysctl -a
[root@unixcop ~]# sysctl -a
abi.vsyscall32 = 1
crypto.fips_enabled = 0
debug.exception-trace = 1
debug.kprobes-optimization = 1
dev.cdrom.autoclose = 1
dev.cdrom.autoeject = 0
dev.cdrom.check_media = 0
dev.cdrom.debug = 0
dev.cdrom.info = CD-ROM information, Id: cdrom.c 3.20 2003/12/17
dev.cdrom.info = 
dev.cdrom.info = drive name:		sr0
dev.cdrom.info = drive speed:		1
........
....

Questo è un elenco in cui ogni riga include il nome del parametro e il suo valore come mostrato sopra.

Controlla il valore del parametro del kernel singel con sysctl

Puoi controllare il valore di un singolo parametro invocando il suo nome come argomento per sysctl .

Nota :solo l'utente root può modificare i propri valori.

Esempio:

Controlla il valore massimo del limite di velocità del dispositivo raid.

[root@unixcop ~]# sysctl dev.raid.speed_limit_max 
dev.raid.speed_limit_max = 200000
[root@unixcop ~]#

Inoltre puoi usare grep comando per cercare il valore del parametro come mostrato di seguito:

 sysctl -a | grep dev.raid.speed_limit_max 

sysctl il comando legge le informazioni da /proc/sys directory.

/proc/sys è una directory virtuale contenente oggetti file che possono essere utilizzati per visualizzare e impostare i parametri del kernel correnti.

È inoltre possibile visualizzare il valore di un parametro visualizzando il contenuto del file appropriato. L'unica differenza è come viene rappresentato il file.

Esempio:

sysctl dev.raid.speed_limit_max e cat /proc/sys/dev/raid/speed_limit_max mostrerà lo stesso output mostrato di seguito.

Modifica i parametri del kernel con sysctl

Per modificare un parametro del kernel eseguire il comando sysctl seguito dal parametro e dal valore che si desidera modificare in

La sintassi per modificare il valore:

sysctl -w parameter=value

Esempio :

[root@unixcop ~]# sysctl net.ipv6.route.gc_timeout
net.ipv6.route.gc_timeout = 50
[root@unixcop ~]# 
[root@unixcop ~]# sysctl -w net.ipv6.route.gc_timeout=60
net.ipv6.route.gc_timeout = 60
[root@unixcop ~]# 
[root@unixcop ~]# sysctl net.ipv6.route.gc_timeout
net.ipv6.route.gc_timeout = 60
[root@unixcop ~]#

Note :

Se il valore contiene spazi vuoti o caratteri speciali, racchiudere il valore tra virgolette.

Puoi anche passare più parameter=value nello stesso comando.

Eccoci

La modifica verrà aggiunta correttamente, ma non è persistente. Dopo un riavvio del sistema, viene caricato il valore predefinito.

Quindi

Per impostare un parametro in modo permanente, dovrai scrivere le modifiche in /etc/sysctl.conf o un altro file di configurazione in /etc/sysctl.d perché è un file incluso o un file secondario rispetto a quello di configurazione principale.

sysctl -w net.ipv6.route.gc_timeout=60 >> /etc/sysctl.conf

Il -p l'opzione consente di caricare le modifiche da un file di configurazione come mostrato:

[root@unixcop ~]# sysctl -p /etc/sysctl.d/79-sysctl.conf 
net.ipv6.route.gc_timeout = 60
[root@unixcop ~]#

Conclusione

Questo è tutto

Abbiamo illustrato come utilizzare il sysctl comando per consentire di visualizzare e modificare i parametri del kernel Linux.


Linux
  1. Come usare il comando Linux grep

  2. Come usare il comando cronologia in Linux

  3. Come usare il comando Su in Linux

  4. Come usare il comando ldconfig in Linux

  5. Come usare il comando ipset in Linux

Come utilizzare il comando LDD in Linux

Come utilizzare il comando di arresto di Linux

Come usare grep in Linux

Come utilizzare il comando Mkdir su Linux

Come usare il comando jobs in Linux

Come usare il comando schermo in Linux