Ulimit è un'utilità della riga di comando in un sistema operativo basato su Linux utilizzata per allocare e limitare le risorse. Puoi usarlo per controllare le risorse a livello globale, di gruppo e utente. L'impostazione dei giusti limiti farà funzionare il tuo sistema in modo ottimale. Puoi utilizzare ulimit per impostare restrizioni sulle risorse utilizzate da un processo in modo che solo i processi importanti sui tuoi server possano continuare a funzionare.
In questo post, ti mostreremo come controllare l'utilizzo delle risorse di sistema con ulimit in Linux.
Prerequisiti
- Un nuovo server Ubuntu 20.04 sulla piattaforma Atlantic.Net Cloud
- Una password di root configurata sul tuo server
Crea server cloud Atlantic.Net
Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo Ubuntu 20.04 come sistema operativo con almeno 2GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.
Dopo aver effettuato l'accesso al tuo server Ubuntu 20.04, esegui il comando seguente per aggiornare il tuo sistema di base con gli ultimi pacchetti disponibili.
apt-get update -y
Sintassi di base
La sintassi di base del comando ulimit è mostrata di seguito:
ulimit [option]
Di seguito viene mostrata una breve spiegazione di ciascuna opzione:
- -a:mostra i limiti per tutti gli utenti.
- -d:Definisce la dimensione dell'area dati.
- -c:Definisci la dimensione del core dump.
- -e:utilizzato per definire la priorità.
- -s:definisce la dimensione massima dello stack.
- -u:Definisci il numero massimo di processi utente.
Come usare ulimit
Per visualizzare il limite di risorse di tutti gli utenti, eseguire il comando seguente:
ulimit -a
Uscita:
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 15237 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 15237 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Per visualizzare il limite di risorse per un utente specifico, eseguire il comando seguente:
ulimit -a root
Uscita:
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 15237 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 15237 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Per visualizzare il limite software di un utente corrente, eseguire il comando seguente:
ulimit -S
Per visualizzare il limite rigido di un utente corrente, eseguire il comando seguente:
ulimit -H
Per verificare il limite fisso allocato sul numero massimo di processi utente, eseguire il comando seguente:
ulimit -Hu
Uscita:
15237
Per modificare temporaneamente il limite rigido predefinito, eseguire il comando seguente:
ulimit -u 20000
Per modificare il limite fisso in modo permanente, modificare il file /etc/security/limits.conf:
nano /etc/security/limits.conf
Aggiungi la seguente riga:
root hard nproc 20000
Salva e chiudi il file quando hai finito.
Per controllare il limite di file aperti, esegui il comando seguente:
ulimit -n
Per modificare il limite di file aperti, esegui il comando seguente:
ulimit -n 1000
Per controllare il limite massimo della dimensione della memoria, esegui il comando seguente:
ulimit -m
Per modificare il limite massimo della dimensione della memoria, esegui il comando seguente:
ulimit -m 2000
Conclusione
Nella guida sopra, hai imparato come limitare le risorse di sistema con il comando ulimit. ulimit ti aiuterà a far funzionare il tuo sistema con prestazioni ottimali. Provalo oggi sul tuo account di hosting VPS Atlantic.Net!