In Linux, Ulimit è uno strumento integrato per gestire l'allocazione delle risorse a livello globale, di gruppo e utente. Per un sistema multiutente come Linux, una caratteristica del genere è quasi fondamentale da avere. Può impedire il consumo di risorse di sistema indesiderate come la RAM e la potenza della CPU.
Scopri come impostare il valore Ulimit permanentemente su Linux.
Valore ulimit
Ulimit applica il limite predefinito di quante risorse può utilizzare un utente. Lo strumento utilizza un determinato file di configurazione come core per assegnare i valori Ulimit. Per un controllo più messo a punto, è meglio modificare il file.
$ cat/etc/sicurezza/limiti.conf
Esistono due tipi di limiti che possono essere imposti: limiti morbidi e difficili. È meglio spiegare questi tipi con un semplice esempio.
Diciamo che un amministratore di sistema vorrebbe che un certo utente si aggirasse atto. Qui, l'utente può superare il valore se necessario ma non duro da esso. In questo caso, sarà un limite morbido. D'altra parte, se l'amministratore vuole imporre rigorosamente il limite, allora sarà un limite duro.
Usando l'ulimit
Ulimit è uno strumento di comando. Ecco la struttura di base del comando Ulimit.
$ Ulimit
Visualizza tutti i limiti
Il flag "-a" elencherà tutte le opzioni e le configurazioni per un determinato utente. Se non viene definito nessun utente, stamperà invece i limiti per l'utente corrente.
$ Ulimit -A
$ Ulimit -A
Per visualizzare i limiti soft di un utente, utilizzare il flag "-s".
$ Ulimit -sa
Per visualizzare i limiti difficili di un utente, utilizzare il flag "-h".
$ Ulimit -ha
È possibile vedere i limiti di un determinato processo. I dettagli si trovano nel seguente file. Si noti che è un file univoco per ciascuno dei processi che sono attualmente in esecuzione. Scambia il campo PID con il PID del processo target.
$ cat /proc //limiti
Limitare i parametri
Per cambiare l'ulimit, devi dichiarare quale tipo di limite desideri definire. Ecco una lista con tutti i parametri disponibili che puoi cambiare. Quasi tutti definiscono il valore massimo di ciascuno dei parametri.
Cambia temporaneamente il valore dell'ulimit
È possibile modificare temporaneamente il valore di Ulimit per un determinato utente. La modifica rimarrà efficace fino a quando l'utente non sarà disconnesso, la sessione scade o il sistema si riavvia. Qui, mostrerò un esempio di come impostare il numero di processo massimo per un utente.
Per modificare il numero di processi disponibili in 12345, eseguire il comando seguente. Imporrà un limite duro temporaneo all'utente.
$ Ulimit -u
$ Ulimit -u 12345
Dai un'occhiata al limite duro da verificare.
$ Ulimit -hu
Cambia il valore di ulimit in modo permanente
Come accennato in precedenza, Ulimit utilizza un file di configurazione del sistema che determina il valore di Ulimit predefinito. Apportando modifiche a questo file, è possibile modificare permanentemente il valore Ulimit per qualsiasi utente.
Apri il file nel tuo editor di testo preferito. Si noti che il file deve essere aperto con l'autorizzazione alla root per le modifiche da salvare.
$ sudo vim/etc/sicurezza/limiti.conf
Qui, le voci del file seguono la seguente struttura.
$
Facciamo una rapida rottura di ciascuno dei campi.
Ecco una lista di tutti gli articoli disponibili.
Per un elenco completo degli elementi disponibili, controlla la pagina dei limiti man.conf.
$ man limiti.conf
Ad esempio, la seguente voce limiterebbe il numero di core della CPU che l'utente "Viktor" può utilizzare fino a 2.
$ viktor hard nproc 2
Una volta modificato, salva il file. Per ottenere le modifiche in vigore, gli utenti interessati devono disconnettersi e re-login. A seconda di come è implementato, potrebbe anche richiedere al sistema di riavviare.
Pensieri finali
Lo strumento Ulimit offre un modo potente di gestire le risorse. È semplice ma potente in quello che fa. Qualunque cosa tu faccia, assicurati che il limite che stai per implementare sia inserito correttamente. Se stai provando queste cose per la prima volta, prova prima a provarle in una macchina virtuale.
C'è di più nel comando Ulimit di quello che ho discusso qui. Se vuoi saperne di più, dai un'occhiata al comando Linux Ulimit.
Felice calcolo!