Maksimum filhåndtak i Linux
Filhåndtakene representerer det maksimale antallet individuelle Linux -brukere kan ha for åpne filer per økt. De/proc/sys/fs/fil-max definerer filgrensen. Hvis du trenger å angi en midlertidig grense før en omstart, er det filen for å redigere.
For å se gjeldende grense for antall åpne filer i en Linux -vert, bruk følgende kommando:
$ katt/proc/sys/fs/fil-max
Den maksimale verdien av de åpne filbeskrivelsene som er oppført i dette tilfellet er for Linux -verten. Ulike brukere kan ha forskjellige verdier enn verten.
Alternativt kan du bruke følgende kommando:
$ sysctl fs.File-Max
Verdien i utgangen ovenfor representerer den maksimale grensen for en normal bruker per påloggingsøkt. Du kan også få de myke og harde verdiene for beskrivelsene ved å bruke Ulimit Kommando, som tilbyr mer kontroll over skallressurser og prosesser startet av den.
For de harde verdiene, bruk følgende kommando:
$ ulimit -hn
På samme måte kan du bruke kommandoen nedenfor for myke verdier:
$ ulimit -sn
Endre/proc/sys/fs/fil-max-filen
Noen applikasjoner, for eksempel Oracle -databasen, krever et høyere løpsområde for filbeskrivelsene. I så fall må du endre den maksimale gjeldende grensen for de åpne filene for å øke kapasiteten. Endring av denne grensen betyr at du endrer kjernevariabelen/proc/sys/fs/fil-max, og du kan oppnå det på to måter.
For den første metoden, angir du verdien direkte fra kommandolinjen. For eksempel for å sette rekkevidden til 324567, Kommandoen ville være følgende:
$ sudo sysctl -w fs.File-Max = 324567
Merk at du må ha administratorprivilegium for at dette skal fungere. Kontroller den nye grensen som vi gjorde når vi sjekker maksimal grense.
For neste metode, bruk den bare hvis du vil sette en ny maksimal grense permanent for de åpne filene på systemet ditt. Den første metoden som tidligere er vist, vil tilbakestilles til standardverdiene etter en omstart.
For å fortsette med den permanente metoden, må du bruke en tekstredigerer som Nano eller vi og rediger /etc/sysctl.konf fil. For saken vår, la oss bruke VI -redigeringen. Kommandoen vil være følgende:
$ vi /etc /sysctl.konf
Legg til fs.File-Max = 324567 med den nye verdien av valget. Lagre og avslutte filen. De nye verdiene vil vedvare selv etter en omstart.
I tillegg må du logge ut av systemet ditt og logge inn for at endringene skal påvirke. Alternativt kan du kjøre følgende kommando:
$ sysctl -p
Til slutt må du bekrefte at den nye grensen er satt ved hjelp av den forrige kommandoen eller liste innholdet i /proc/sys/fs/fil-max Bruke CAT -kommandoen.
$ katt/proc/sys/fs/fil-max
Angi brukernivå FD -grenser
De tidligere kommandoene setter filbeskrivelsene (FD) for hele vertssystemet. Du trenger imidlertid ikke alltid å endre hele systemet. Noen ganger kan det hende du må spesifisere den spesifikke brukeren, som er mulig.
For å endre en bestemt bruker, vil du legge til grensen til /etc/sikkerhet/grenser.konf.
Bruk hvilken som helst redigeringsprogram for å åpne filen og gjøre redigeringene. For vårt eksempel bruker vi VI og setter de myke FD -grensene for en som er navngitt bruker Bruker1.
$ sudo vi/etc/sikkerhet/grenser.konf
Du kan bekrefte at de myke grensene vi la til for den spesifikke brukeren har jobbet ved å bytte til den brukerkontoen ved å bruke følgende kommandoer:
$ su user1
$ ulimit -sn
De -Sn er for de myke grensene. I den følgende utdata bemerker vi at verdien blir satt til den som er definert i konfigurasjonsfilen. Anligner at vi vellykket endret filbeskrivelsene for en bestemt bruker.
Konklusjon
Det er det! Vi har sett hvordan vi kan endre /proc/sys/fs/fil-max For å se og redigere den maksimale grensen for de åpne filene i en Linux -vert. Videre har vi sett hvordan vi kan endre FD for en bestemt bruker og angi en permanent eller midlertidig grense for de åpne filene i Linux.