GNU/Linux >> Linux Esercitazione >  >> Linux

Come impostare la priorità del processo Linux usando i comandi nice e renice

Nice è un'utilità della riga di comando in Linux che consente di impostare il valore di "bellezza" dei processi. Viene utilizzato per avviare un processo con una priorità definita. Quando si avvia un programma o un processo senza alcuna priorità definita, nice imposta una priorità predefinita di 10. Un valore di 19 è la priorità più bassa mentre -20 è la priorità più alta. Il bel comando è molto utile quando diversi processi richiedono più risorse di quelle che la CPU può fornire.

Renice è molto simile a nice e viene utilizzato per modificare la priorità di un processo già in esecuzione. Se il tuo sistema è molto lento a causa di un processo lungo, puoi ridurre o aumentare la priorità di quel processo con l'aiuto del comando renice.

La priorità è un valore che puoi assegnare a ciascun processo e il kernel utilizza questo valore per pianificare l'esecuzione del processo.

  • 0-99 è il valore di priorità utilizzato per le assegnazioni di priorità in tempo reale.
  • 100-139 è il valore di priorità assegnato dagli utenti.

In questo post, ti mostreremo come impostare la priorità del processo Linux con il comando Nice and renice.

Prerequisiti

  • Un server Linux sulla piattaforma Atlantic.Net Cloud
  • Una password di root configurata sul tuo server

Fase 1:crea un server cloud Atlantic.Net

Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo Ubuntu, CentOS o Rocky Linux come sistema operativo con almeno 2 GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.

Una volta effettuato l'accesso al server, eseguire il comando seguente per aggiornare il sistema di base con gli ultimi pacchetti disponibili.

apt-get update -y

Oppure

dnf update -y

Fase 2:mostra il valore positivo di un processo

In Linux, quando avvii qualsiasi processo o programma, ottiene la priorità predefinita di 0.

Puoi utilizzare il comando ps o top per visualizzare la priorità di un processo in esecuzione.

Per verificare il valore Nice del processo Nginx, eseguire il comando seguente:

ps -fl -C nginx

Dovresti vedere la priorità del processo Nginx nella colonna NI come mostrato di seguito:

F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
5 S www-data  3156  3155  0  80   0 - 21700 -      10:33 ?        00:00:00 nginx: worker process

Per visualizzare il buon valore di tutti i processi in esecuzione, usa il comando in alto:

top

Dovresti vedere il buon valore di tutti i processi nella colonna NI.

Fase 3:modifica la priorità del processo con Nice Command

Il bel comando non può cambiare la priorità del processo in esecuzione. Tuttavia, puoi usare il bel comando per avviare qualsiasi programma con priorità predefinita.

Ad esempio, avvia un programma top con un buon valore 5:

nice -5 top

Questo assegnerà il valore di priorità di 5 in alto.

Ora apri un altro terminale e verifica la priorità per la parte superiore come mostrato di seguito:

ps -fl -C top

Dovresti vedere la priorità del comando in alto nella colonna NI:

F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S vyom      7966  7277  0  85   5 -  7323 poll_s 11:41 pts/14   00:00:00 top

Non hai bisogno dei privilegi di root quando imposti un valore di priorità maggiore di 0. Avrai bisogno dei privilegi di root se vuoi aumentare la priorità di qualsiasi processo assegnando un valore negativo.

Ad esempio, per aumentare la priorità del comando in alto a -20, utilizzare il comando seguente:

sudo nice --20 top

Fase 4:modifica la priorità del processo di esecuzione con renice Command

Come sai, il bel comando non può cambiare la priorità di nessun processo in esecuzione. In questo caso, dovrai usare il comando renice per cambiare la priorità di un processo in esecuzione.

Qui utilizzeremo il processo principale, che è già in esecuzione.

Innanzitutto, verifica la priorità corrente del processo principale utilizzando il seguente comando:

ps -fl -C top

Esempio di output:

F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S vyom      7966  7277  0  85   5 -  7323 poll_s 11:41 pts/14   00:00:03 top

Come puoi vedere, la priorità del primo processo è 5.

Ora cambieremo la priorità del processo principale in -15.

Innanzitutto, trova il PID del processo principale con il seguente comando:

pidof top

Esempio di output:

7966

Ora, esegui il comando seguente specificando il valore di priorità e il PID di top:

sudo renice -n -15 -p 7966

Esempio di output:

7966 (process ID) old priority 5, new priority -15

Puoi anche modificare la priorità di tutti i processi di proprietà di un utente specifico.

Ad esempio, cambia la priorità di tutti i processi di proprietà dell'utente root, esegui:

sudo renice -n 10 -u root

Conclusione

In questa guida hai imparato come impostare e modificare la priorità di qualsiasi processo usando il comando nice and renice. Ora puoi facilmente aumentare e diminuire la priorità del processo in base alle tue esigenze. Inizia a utilizzare nice and renice sul tuo account di hosting VPS da Altantic.Net.


Linux
  1. Come trasferire file tra due computer utilizzando i comandi nc e pv

  2. Come disabilitare i comandi di spegnimento e riavvio in Linux

  3. Linux nice and renice Command Tutorial (7 esempi)

  4. Come trovare e uccidere il processo Zombie in Linux

  5. Comandi Linux:come manipolare la priorità del processo

Come modificare la priorità di un processo in Linux

Come utilizzare i comandi Pbcopy e Pbpaste su Linux

Come sospendere un processo e riprenderlo in un secondo momento in Linux

Nice and Renice:imposta la priorità del processo in Linux

Come impostare data e ora su Linux

Come uccidere i processi in Linux usando kill, killall e pkill