Jinsi ya Kuongeza Idadi ya Kikomo cha Faili wazi katika Linux


Katika Linux, unaweza kubadilisha kiwango cha juu cha faili zilizo wazi. Unaweza kurekebisha nambari hii kwa kutumia ulimit amri. Inakupa uwezo wa kudhibiti rasilimali zinazopatikana kwa ganda au mchakato ulioanzishwa nayo.

Katika somo hili fupi tutakuonyesha jinsi ya kuangalia kikomo chako cha sasa cha faili wazi na maelezo ya faili, lakini ili kufanya hivyo, utahitaji kuwa na ufikiaji wa mizizi kwenye mfumo wako.

Kwanza, Hebu tuone jinsi tunavyoweza kujua idadi ya juu zaidi ya maelezo ya faili yaliyofunguliwa kwenye mfumo wako wa Linux.

Pata Kikomo cha faili cha Linux Open

Thamani imehifadhiwa katika:

# cat /proc/sys/fs/file-max

818354

Nambari utakayoona, inaonyesha idadi ya faili ambazo mtumiaji anaweza kuwa amefungua kwa kila kipindi cha kuingia. Matokeo yanaweza kuwa tofauti kulingana na mfumo wako.

Kwa mfano kwenye seva yangu ya CentOS, kikomo kiliwekwa 818354, wakati kwenye seva ya Ubuntu ambayo ninaendesha nyumbani kikomo cha msingi kiliwekwa 176772.

Ikiwa unataka kuona mipaka ngumu na laini, unaweza kutumia amri zifuatazo:

# ulimit -Hn

4096
# ulimit -Sn

1024

Ili kuona thamani ngumu na laini za watumiaji tofauti, unaweza kubadilisha tu mtumiaji na su hadi kwa mtumiaji ambayo inaweka mipaka unayotaka kuangalia.

Kwa mfano:

# su marin
$ ulimit -Sn

1024
$ ulimit -Hn

4096

Jinsi ya Kuangalia Mipaka ya Maelezo ya Faili ya Mfumo katika Linux

Ikiwa unatumia seva, baadhi ya programu zako zinaweza kuhitaji vikomo vya juu zaidi kwa vifafanuzi vya faili vilivyofunguliwa. Mfano mzuri kwa hizo ni huduma za MySQL/MariaDB au seva ya wavuti ya Apache.

Unaweza kuongeza kikomo cha faili zilizofunguliwa katika Linux kwa kuhariri maagizo ya kernel fs.file-max. Kwa kusudi hilo, unaweza kutumia matumizi ya sysctl.

Sysctl inatumika kusanidi vigezo vya kernel wakati wa kukimbia.

Kwa mfano, ili kuongeza kikomo cha faili wazi hadi 500000, unaweza kutumia amri ifuatayo kama mzizi:

# sysctl -w fs.file-max=500000

Unaweza kuangalia thamani ya sasa ya faili zilizofunguliwa kwa amri ifuatayo:

$ cat /proc/sys/fs/file-max

Kwa amri iliyo hapo juu mabadiliko uliyofanya yatasalia tu hadi uwashe tena. Ikiwa ungependa kuzitumia kabisa, itabidi uhariri faili ifuatayo:

# vi /etc/sysctl.conf

Ongeza mstari ufuatao:

fs.file-max=500000

Kwa kweli, unaweza kubadilisha nambari kulingana na mahitaji yako. Ili kuthibitisha mabadiliko tena tumia:

# cat /proc/sys/fs/file-max

Watumiaji watahitaji kuondoka na kuingia tena ili mabadiliko yaanze kutekelezwa. Ikiwa unataka kutumia kikomo mara moja, unaweza kutumia amri ifuatayo:

# sysctl -p

Weka Vikomo vya Faili ya Kiwango cha Mtumiaji katika Linux

Mifano iliyo hapo juu, ilionyesha jinsi ya kuweka mipaka ya kimataifa, lakini unaweza kutaka kuweka mipaka kwa kila msingi wa mtumiaji. Kwa kusudi hilo, kama mzizi wa mtumiaji, utahitaji kuhariri faili ifuatayo:

# vi /etc/security/limits.conf

Ikiwa wewe ni msimamizi wa Linux, ninakupendekeza uifahamu sana faili hiyo na unachoweza kuifanyia. Soma maoni yote ndani yake kwani hutoa unyumbufu mkubwa katika suala la kudhibiti rasilimali za mfumo kwa kuwawekea kikomo watumiaji/vikundi kwenye viwango tofauti.

Mistari ambayo unapaswa kuongeza inachukua vigezo vifuatavyo:

<domain>        <type>  <item>  <value>

Hapa kuna mfano wa kuweka mipaka laini na ngumu kwa marin ya mtumiaji:

## Example hard limit for max opened files
marin        hard nofile 4096
## Example soft limit for max opened files
marin        soft nofile 1024

Mawazo ya mwisho

Makala haya mafupi yalikuonyesha mfano msingi wa jinsi unavyoweza kuangalia na kusanidi vikomo vya viwango vya kimataifa na vya watumiaji ili kupata idadi ya juu zaidi ya faili zilizofunguliwa.

Wakati tumekuna tu, ninakuhimiza sana kuwa na mwonekano wa kina zaidi na usome kuhusu /etc/sysctl.conf na /etc/security/limits.conf na ujifunze jinsi ya kuzitumia. Watakusaidia sana siku moja.