ലിനക്സിൽ തുറന്ന ഫയലുകളുടെ എണ്ണം എങ്ങനെ വർദ്ധിപ്പിക്കാം


ലിനക്സിൽ, നിങ്ങൾക്ക് പരമാവധി തുറന്ന ഫയലുകൾ മാറ്റാൻ കഴിയും. ulimit കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഈ നമ്പർ പരിഷ്uക്കരിക്കാവുന്നതാണ്. ഇത് ആരംഭിച്ച ഷെല്ലിന് അല്ലെങ്കിൽ പ്രോസസ്സിനായി ലഭ്യമായ ഉറവിടങ്ങൾ നിയന്ത്രിക്കാനുള്ള കഴിവ് നിങ്ങൾക്ക് നൽകുന്നു.

ഈ ഹ്രസ്വ ട്യൂട്ടോറിയലിൽ, നിങ്ങളുടെ നിലവിലെ ഓപ്പൺ ഫയലുകളുടെയും ഫയലുകളുടെയും വിവരണങ്ങളുടെ പരിധി എങ്ങനെ പരിശോധിക്കാമെന്ന് ഞങ്ങൾ കാണിച്ചുതരാം, എന്നാൽ അങ്ങനെ ചെയ്യുന്നതിന്, നിങ്ങളുടെ സിസ്റ്റത്തിലേക്ക് റൂട്ട് ആക്സസ് ഉണ്ടായിരിക്കണം.

ആദ്യം, നിങ്ങളുടെ Linux സിസ്റ്റത്തിൽ തുറന്നിരിക്കുന്ന ഫയൽ ഡിസ്ക്രിപ്റ്ററുകളുടെ പരമാവധി എണ്ണം നമുക്ക് എങ്ങനെ കണ്ടെത്താം എന്ന് നോക്കാം.

Linux ഓപ്പൺ ഫയൽ പരിധി കണ്ടെത്തുക

മൂല്യം ഇതിൽ സംഭരിച്ചിരിക്കുന്നു:

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

818354

നിങ്ങൾ കാണുന്ന നമ്പർ, ഓരോ ലോഗിൻ സെഷനിലും ഒരു ഉപയോക്താവിന് തുറക്കാൻ കഴിയുന്ന ഫയലുകളുടെ എണ്ണം കാണിക്കുന്നു. നിങ്ങളുടെ സിസ്റ്റത്തെ ആശ്രയിച്ച് ഫലം വ്യത്യസ്തമായിരിക്കാം.

ഉദാഹരണത്തിന് എന്റെ ഒരു CentOS സെർവറിൽ, പരിധി 818354 ആയി സജ്ജീകരിച്ചു, അതേസമയം ഞാൻ വീട്ടിൽ പ്രവർത്തിപ്പിക്കുന്ന ഉബുണ്ടു സെർവറിൽ സ്ഥിരസ്ഥിതി പരിധി 176772 ആയി സജ്ജീകരിച്ചിരിക്കുന്നു.

നിങ്ങൾക്ക് കഠിനവും മൃദുവുമായ പരിധികൾ കാണണമെങ്കിൽ, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന കമാൻഡുകൾ ഉപയോഗിക്കാം:

# ulimit -Hn

4096
# ulimit -Sn

1024

വ്യത്യസ്uത ഉപയോക്താക്കൾക്കുള്ള കഠിനവും മൃദുവായതുമായ മൂല്യങ്ങൾ കാണുന്നതിന്, “su” ഉപയോഗിച്ച് നിങ്ങൾ പരിശോധിക്കാൻ ആഗ്രഹിക്കുന്ന ഉപയോക്താവിലേക്ക് ഉപയോക്താവിനെ മാറ്റാം.

ഉദാഹരണത്തിന്:

# su marin
$ ulimit -Sn

1024
$ ulimit -Hn

4096

ലിനക്സിൽ സിസ്റ്റം വൈഡ് ഫയൽ ഡിസ്ക്രിപ്റ്ററുകൾ എങ്ങനെ പരിശോധിക്കാം

നിങ്ങൾ ഒരു സെർവർ പ്രവർത്തിപ്പിക്കുകയാണെങ്കിൽ, നിങ്ങളുടെ ചില ആപ്ലിക്കേഷനുകൾക്ക് തുറന്ന ഫയൽ ഡിസ്ക്രിപ്റ്ററുകൾക്ക് ഉയർന്ന പരിധികൾ ആവശ്യമായി വന്നേക്കാം. MySQL/MariaDB സേവനങ്ങൾ അല്ലെങ്കിൽ അപ്പാച്ചെ വെബ് സെർവർ ഇവയാണ്.

കേർണൽ ഡയറക്uടീവ് fs.file-max എഡിറ്റ് ചെയ്uത് നിങ്ങൾക്ക് Linux-ൽ തുറന്ന ഫയലുകളുടെ പരിധി വർദ്ധിപ്പിക്കാം. അതിനായി, നിങ്ങൾക്ക് sysctl യൂട്ടിലിറ്റി ഉപയോഗിക്കാം.

റൺടൈമിൽ കേർണൽ പാരാമീറ്ററുകൾ ക്രമീകരിക്കുന്നതിന് Sysctl ഉപയോഗിക്കുന്നു.

ഉദാഹരണത്തിന്, ഓപ്പൺ ഫയൽ പരിധി 500000 ആയി വർദ്ധിപ്പിക്കുന്നതിന്, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന കമാൻഡ് റൂട്ടായി ഉപയോഗിക്കാം:

# sysctl -w fs.file-max=500000

ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് തുറന്ന ഫയലുകൾക്കായുള്ള നിലവിലെ മൂല്യം നിങ്ങൾക്ക് പരിശോധിക്കാം:

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

മുകളിലുള്ള കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾ വരുത്തിയ മാറ്റങ്ങൾ അടുത്ത റീബൂട്ട് വരെ മാത്രമേ സജീവമായി നിലനിൽക്കൂ. അവ ശാശ്വതമായി പ്രയോഗിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, ഇനിപ്പറയുന്ന ഫയൽ നിങ്ങൾ എഡിറ്റ് ചെയ്യേണ്ടതുണ്ട്:

# vi /etc/sysctl.conf

ഇനിപ്പറയുന്ന വരി ചേർക്കുക:

fs.file-max=500000

തീർച്ചയായും, നിങ്ങളുടെ ആവശ്യങ്ങൾക്കനുസരിച്ച് നമ്പർ മാറ്റാം. മാറ്റങ്ങൾ വീണ്ടും പരിശോധിക്കാൻ, ഉപയോഗിക്കുക:

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

മാറ്റങ്ങൾ പ്രാബല്യത്തിൽ വരുന്നതിന് ഉപയോക്താക്കൾ ലോഗ്ഔട്ട് ചെയ്ത് വീണ്ടും ലോഗിൻ ചെയ്യേണ്ടതുണ്ട്. നിങ്ങൾക്ക് ഉടൻ പരിധി പ്രയോഗിക്കണമെങ്കിൽ, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കാം:

# sysctl -p

ലിനക്സിൽ ഉപയോക്തൃ ലെവൽ ഓപ്പൺ ഫയൽ പരിധികൾ സജ്ജമാക്കുക

മുകളിലുള്ള ഉദാഹരണങ്ങൾ, ആഗോള പരിധികൾ എങ്ങനെ സജ്ജീകരിക്കാമെന്ന് കാണിച്ചുതന്നിട്ടുണ്ട്, എന്നാൽ ഓരോ ഉപയോക്തൃ അടിസ്ഥാനത്തിലും നിങ്ങൾക്ക് പരിധികൾ ബാധകമാക്കാം. അതിനായി, ഉപയോക്തൃ റൂട്ട് എന്ന നിലയിൽ, നിങ്ങൾ ഇനിപ്പറയുന്ന ഫയൽ എഡിറ്റ് ചെയ്യേണ്ടതുണ്ട്:

# vi /etc/security/limits.conf

നിങ്ങളൊരു ലിനക്uസ് അഡ്മിനിസ്ട്രേറ്ററാണെങ്കിൽ, ആ ഫയലുമായി നിങ്ങൾക്ക് വളരെ പരിചിതമാകാനും അതിനായി നിങ്ങൾക്ക് എന്തുചെയ്യാൻ കഴിയുമെന്നും ഞാൻ നിർദ്ദേശിക്കുന്നു. വ്യത്യസ്ത തലങ്ങളിൽ ഉപയോക്താക്കളെ/ഗ്രൂപ്പുകളെ പരിമിതപ്പെടുത്തി സിസ്റ്റം റിസോഴ്uസുകൾ കൈകാര്യം ചെയ്യുന്നതിൽ മികച്ച വഴക്കം നൽകുന്നതിനാൽ ഇതിലെ എല്ലാ അഭിപ്രായങ്ങളും വായിക്കുക.

നിങ്ങൾ ചേർക്കേണ്ട വരികൾ ഇനിപ്പറയുന്ന പാരാമീറ്ററുകൾ എടുക്കുന്നു:

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

ഉപയോക്തൃ മാരിന് മൃദുവും കഠിനവുമായ പരിധികൾ ക്രമീകരിക്കുന്നതിനുള്ള ഒരു ഉദാഹരണം ഇതാ:

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

അന്തിമ ചിന്തകൾ

തുറന്നിരിക്കുന്ന പരമാവധി എണ്ണം ഫയലുകൾക്കായി നിങ്ങൾക്ക് എങ്ങനെ ആഗോള, ഉപയോക്തൃ നില പരിധികൾ പരിശോധിക്കാനും കോൺഫിഗർ ചെയ്യാനും കഴിയുമെന്നതിന്റെ അടിസ്ഥാന ഉദാഹരണം ഈ ഹ്രസ്വ ലേഖനം കാണിച്ചുതന്നു.

ഞങ്ങൾ ഉപരിതലത്തിൽ മാന്തികുഴിയുണ്ടാക്കുമ്പോൾ, കൂടുതൽ വിശദമായി കാണാനും /etc/sysctl.conf, /etc/security/limits.conf എന്നിവയെക്കുറിച്ച് വായിക്കാനും അവ എങ്ങനെ ഉപയോഗിക്കാമെന്ന് മനസിലാക്കാനും ഞാൻ നിങ്ങളെ വളരെയധികം പ്രോത്സാഹിപ്പിക്കുന്നു. ഒരു ദിവസം അവർ നിങ്ങളെ സഹായിക്കും.