Cosa sono il soft limit e l'hard limit in Linux?
Sono numeri usati per identificare i limiti a cui certe risorse possono essere assegnate a diversi utenti. Queste risorse includono il processore, la memoria e le risorse del disco, ad esempio il numero di processi figli che un utente può avere, la percentuale di quota del disco consentita all'utente, il numero di terminali aperti, ecc.
Un limite rigido è il limite superiore che l'utente non può mai, mai andare oltre. Diciamo che avete impostato un limite rigido di 255 processi per utente. Nessuno degli utenti può superare quel limite, mai.
Il limite soft, d'altra parte, è un limite di "avvertimento". Dice all'utente e all'amministratore di sistema che si è vicini a raggiungere il livello di pericolo, che è il limite rigido. Gli utenti sono autorizzati a superare il limite soft, a differenza del limite hard (è un no-no assoluto superare i limiti hard).
Questi numeri possono essere impostati a qualsiasi cosa, ma normalmente, e per dare loro un senso, i limiti soft sono impostati su un valore che è un po' più piccolo del corrispondente limite hard. Nel nostro esempio sopra, si dovrebbe impostare il limite soft dei processi utente a 230 o qualcosa del genere, per un limite hard di 255.
Gli utenti regolari possono aumentare i loro limiti soft fino al limite hard corrente, ma non possono superarlo. Possono diminuire i loro limiti soft fino a zero.
Gli utenti regolari possono anche diminuire i loro limiti hard fino a zero, ma non possono aumentarli.
Il root è, come sempre, Dio del sistema, e quindi può fare quello che vuole con i limiti soft e hard.