ലിനക്സ് സിസ്റ്റത്തിൽ നിന്ന് ആവശ്യമില്ലാത്ത സേവനങ്ങൾ എങ്ങനെ നിർത്താം, അപ്രാപ്തമാക്കാം


ഞങ്ങളുടെ പ്ലാനും ആവശ്യകതകളും അനുസരിച്ച് ഞങ്ങൾ ഒരു സെർവർ നിർമ്മിക്കുന്നു, എന്നാൽ അത് വേഗത്തിലും കാര്യക്ഷമമായും പ്രവർത്തിക്കുന്നതിന് ഒരു സെർവർ നിർമ്മിക്കുമ്പോൾ ഉദ്ദേശിക്കുന്ന പ്രവർത്തനങ്ങൾ എന്തൊക്കെയാണ്. ഒരു Linux OS ഇൻസ്റ്റാൾ ചെയ്യുമ്പോൾ, ചില അനാവശ്യ പാക്കേജുകളും ആപ്ലിക്കേഷനുകളും ഒരു ഉപയോക്താവിന്റെ അറിവില്ലാതെ യാന്ത്രികമായി ഇൻസ്റ്റാൾ ചെയ്യപ്പെടുമെന്ന് നമുക്കെല്ലാവർക്കും അറിയാം.

ഒരു സെർവർ നിർമ്മിക്കുമ്പോൾ ബോക്സിൽ നിന്ന് യഥാർത്ഥത്തിൽ എന്താണ് വേണ്ടത് എന്ന് നമ്മൾ സ്വയം ചോദിക്കേണ്ടതുണ്ട്. എനിക്ക് ഒരു വെബ് സെർവർ അല്ലെങ്കിൽ ഒരു FTP സെർവർ, ഒരു NFS സെർവർ അല്ലെങ്കിൽ ഒരു DNS സെർവർ, ഒരു ഡാറ്റാബേസ് സെർവർ അല്ലെങ്കിൽ മറ്റെന്തെങ്കിലും ആവശ്യമുണ്ടോ?

ഈ ലേഖനത്തിൽ, നിങ്ങൾക്ക് ആവശ്യമില്ലാത്ത ചില അനാവശ്യ ആപ്ലിക്കേഷനുകളും സേവനങ്ങളും ഞങ്ങൾ ചർച്ച ചെയ്യും, എന്നാൽ OS ഇൻസ്റ്റാളേഷൻ സമയത്ത് അവ സ്ഥിരസ്ഥിതിയായി ഇൻസ്റ്റാൾ ചെയ്യുകയും അറിയാതെ നിങ്ങളുടെ സിസ്റ്റം ഉറവിടങ്ങൾ കഴിക്കാൻ തുടങ്ങുകയും ചെയ്യും.

താഴെ പറയുന്ന കമാൻഡുകൾ ഉപയോഗിച്ച് ഏത് തരത്തിലുള്ള സേവനങ്ങളാണ് സിസ്റ്റത്തിൽ പ്രവർത്തിക്കുന്നതെന്ന് ആദ്യം മനസ്സിലാക്കാം.

 ps ax
  PID TTY      STAT   TIME COMMAND
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00  \_ [migration/0]
    4 ?        S      0:09  \_ [ksoftirqd/0]
    5 ?        S      0:00  \_ [migration/0]
    6 ?        S      0:24  \_ [watchdog/0]
    7 ?        S      2:20  \_ [events/0]
    8 ?        S      0:00  \_ [cgroup]
    9 ?        S      0:00  \_ [khelper]
   10 ?        S      0:00  \_ [netns]
   11 ?        S      0:00  \_ [async/mgr]
   12 ?        S      0:00  \_ [pm]
   13 ?        S      0:16  \_ [sync_supers]
   14 ?        S      0:15  \_ [bdi-default]
   15 ?        S      0:00  \_ [kintegrityd/0]
   16 ?        S      0:49  \_ [kblockd/0]
   17 ?        S      0:00  \_ [kacpid]
   18 ?        S      0:00  \_ [kacpi_notify]
   19 ?        S      0:00  \_ [kacpi_hotplug]
   20 ?        S      0:00  \_ [ata_aux]
   21 ?        S     58:46  \_ [ata_sff/0]
   22 ?        S      0:00  \_ [ksuspend_usbd]
   23 ?        S      0:00  \_ [khubd]
   24 ?        S      0:00  \_ [kseriod]
   .....

ഇപ്പോൾ, താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ netstat കമാൻഡ് ഉപയോഗിച്ച് കണക്ഷൻ (പോർട്ടുകൾ) സ്വീകരിക്കുന്ന പ്രക്രിയകൾ നമുക്ക് പെട്ടെന്ന് നോക്കാം.

 netstat -lp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 *:31138                     *:*                         LISTEN      1485/rpc.statd      
tcp        0      0 *:mysql                     *:*                         LISTEN      1882/mysqld         
tcp        0      0 *:sunrpc                    *:*                         LISTEN      1276/rpcbind        
tcp        0      0 *:ndmp                      *:*                         LISTEN      2375/perl           
tcp        0      0 *:webcache                  *:*                         LISTEN      2312/monitorix-http 
tcp        0      0 *:ftp                       *:*                         LISTEN      2174/vsftpd         
tcp        0      0 *:ssh                       *:*                         LISTEN      1623/sshd           
tcp        0      0 localhost:ipp               *:*                         LISTEN      1511/cupsd          
tcp        0      0 localhost:smtp              *:*                         LISTEN      2189/sendmail       
tcp        0      0 *:cbt                       *:*                         LISTEN      2243/java           
tcp        0      0 *:websm                     *:*                         LISTEN      2243/java           
tcp        0      0 *:nrpe                      *:*                         LISTEN      1631/xinetd         
tcp        0      0 *:xmltec-xmlmail            *:*                         LISTEN      2243/java           
tcp        0      0 *:xmpp-client               *:*                         LISTEN      2243/java           
tcp        0      0 *:hpvirtgrp                 *:*                         LISTEN      2243/java           
tcp        0      0 *:5229                      *:*                         LISTEN      2243/java           
tcp        0      0 *:sunrpc                    *:*                         LISTEN      1276/rpcbind        
tcp        0      0 *:http                      *:*                         LISTEN      6439/httpd          
tcp        0      0 *:oracleas-https            *:*                         LISTEN      2243/java         
....

മുകളിലെ ഔട്ട്uപുട്ടിൽ, നിങ്ങളുടെ സെർവറിൽ നിങ്ങൾക്ക് ആവശ്യമില്ലാത്ത ചില ആപ്ലിക്കേഷനുകൾ നിങ്ങൾ ശ്രദ്ധിക്കുന്നു, പക്ഷേ അവ ഇപ്പോഴും ഇനിപ്പറയുന്ന രീതിയിൽ പ്രവർത്തിക്കുന്നു:

smbd, nmbd എന്നിവ സാംബ പ്രക്രിയയുടെ ഡെമൺ ആണ്. നിങ്ങൾ ശരിക്കും വിൻഡോകളിലോ മറ്റ് മെഷീനുകളിലോ smb ഷെയർ കയറ്റുമതി ചെയ്യേണ്ടതുണ്ടോ. അല്ലെങ്കിൽ! എന്തുകൊണ്ടാണ് ഈ പ്രക്രിയകൾ പ്രവർത്തിക്കുന്നത്? നിങ്ങൾക്ക് ഈ പ്രക്രിയകൾ സുരക്ഷിതമായി ഇല്ലാതാക്കാനും അടുത്ത തവണ മെഷീൻ ബൂട്ട് ചെയ്യുമ്പോൾ യാന്ത്രികമായി ആരംഭിക്കുന്നത് അപ്രാപ്തമാക്കാനും കഴിയും.

ഇന്റർനെറ്റിലൂടെയോ ലോക്കൽ ഏരിയ നെറ്റ്uവർക്കിലൂടെയോ നിങ്ങൾക്ക് ദ്വിദിശ സംവേദനാത്മക ടെക്uസ്uറ്റ് അധിഷ്uഠിത ആശയവിനിമയം ആവശ്യമുണ്ടോ? അല്ലെങ്കിൽ! ഈ പ്രക്രിയ ഇല്ലാതാക്കി ബൂട്ട് ചെയ്യുന്നതിൽ നിന്ന് അത് ഓഫ് ചെയ്യുക.

നെറ്റ്uവർക്കിലൂടെ മറ്റൊരു ഹോസ്റ്റിലേക്ക് നിങ്ങൾ ലോഗിൻ ചെയ്യേണ്ടതുണ്ടോ. അല്ലെങ്കിൽ! ഈ പ്രക്രിയ ഇല്ലാതാക്കി ബൂട്ടിൽ യാന്ത്രികമായി ആരംഭിക്കുന്നത് അപ്രാപ്തമാക്കുക.

ഒരു റിമോട്ട് കമ്പ്യൂട്ടറിൽ ഷെൽ കമാൻഡുകൾ എക്സിക്യൂട്ട് ചെയ്യാൻ റിമോട്ട് പ്രോസസ് എക്സിക്യൂഷൻ അല്ലെങ്കിൽ rexec നിങ്ങളെ അനുവദിക്കുന്നു. നിങ്ങൾക്ക് ഒരു റിമോട്ട് മെഷീനിൽ ഷെൽ കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യേണ്ട ആവശ്യമില്ലെങ്കിൽ, പ്രോസസ്സ് ഇല്ലാതാക്കുക.

ഇന്റർനെറ്റിലൂടെ ഒരു ഹോസ്റ്റിൽ നിന്ന് മറ്റൊരു ഹോസ്റ്റിലേക്ക് ഫയലുകൾ കൈമാറേണ്ടതുണ്ടോ? ഇല്ലെങ്കിൽ നിങ്ങൾക്ക് സുരക്ഷിതമായി സേവനം നിർത്താം.

നെറ്റ്uവർക്ക് ഫയൽ സിസ്റ്റം കൊണ്ടുവരാൻ നിങ്ങൾ വ്യത്യസ്ത ഫയൽ സിസ്റ്റങ്ങൾ സ്വയമേവ മൗണ്ട് ചെയ്യേണ്ടതുണ്ടോ? അല്ലെങ്കിൽ! എന്തുകൊണ്ടാണ് ഈ പ്രക്രിയ നടക്കുന്നത്? നിങ്ങളുടെ റിസോഴ്uസ് ഉപയോഗിക്കാൻ ഈ ആപ്പിനെ അനുവദിക്കുന്നത് എന്തുകൊണ്ടാണ്? പ്രക്രിയ ഇല്ലാതാക്കി യാന്ത്രികമായി ആരംഭിക്കുന്നത് അപ്രാപ്തമാക്കുക.

നിങ്ങൾക്ക് നെയിംസെർവർ (ഡിഎൻഎസ്) പ്രവർത്തിപ്പിക്കേണ്ടതുണ്ടോ? ഇല്ലെങ്കിൽ, ഈ പ്രക്രിയ പ്രവർത്തിപ്പിക്കാനും നിങ്ങളുടെ വിഭവങ്ങൾ ഭക്ഷിക്കാൻ അനുവദിക്കാനും നിങ്ങളെ പ്രേരിപ്പിക്കുന്നതെന്താണ്. ആദ്യം റണ്ണിംഗ് പ്രോസസ്സ് ഇല്ലാതാക്കുക, തുടർന്ന് അത് ബൂട്ടിൽ പ്രവർത്തിപ്പിക്കുന്നതിൽ നിന്ന് ഓഫാക്കുക.

ആ സെർവറിലേക്ക് പ്രിന്റ് ചെയ്യുന്നത് സാധ്യമാക്കുന്ന പ്രിന്റർ ഡെമൺ ആണ് lpd. നിങ്ങൾക്ക് സെർവറിൽ നിന്ന് പ്രിന്റ് ചെയ്യേണ്ട ആവശ്യമില്ലെങ്കിൽ, നിങ്ങളുടെ സിസ്റ്റം ഉറവിടങ്ങൾ നശിപ്പിക്കപ്പെടാനുള്ള സാധ്യതയുണ്ട്.

നിങ്ങൾ എന്തെങ്കിലും inetd സേവനങ്ങൾ നടത്തുന്നുണ്ടോ? Mysql, Apache മുതലായ മറ്റ് സ്റ്റാൻഡ് എലോൺ ആപ്ലിക്കേഷനുകൾ ഉപയോഗിക്കുന്ന ssh പോലുള്ള സ്റ്റാൻഡ് എലോൺ ആപ്ലിക്കേഷനാണ് നിങ്ങൾ പ്രവർത്തിപ്പിക്കുന്നതെങ്കിൽ, നിങ്ങൾക്ക് inetd ആവശ്യമില്ല. പ്രോസസ്സ് ഇല്ലാതാക്കി അടുത്ത തവണ യാന്ത്രികമായി അത് പ്രവർത്തനരഹിതമാക്കുന്നതാണ് നല്ലത്.

ഒരു ഓപ്പൺ നെറ്റ്uവർക്ക് കമ്പ്യൂട്ടിംഗ് റിമോട്ട് പ്രൊസീജർ കോൾ (ONC RPC) ആയ പോർട്ട്മാപ്പ്, ഡെമൺ rpc.portmap, rpcbind എന്നിവ ഉപയോഗിക്കുന്നു. ഈ പ്രക്രിയകൾ പ്രവർത്തിക്കുന്നുണ്ടെങ്കിൽ, നിങ്ങൾ NFS സെർവർ പ്രവർത്തിപ്പിക്കുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത്. NFS സെർവർ ശ്രദ്ധിക്കപ്പെടാതെ പ്രവർത്തിക്കുന്നുണ്ടെങ്കിൽ, നിങ്ങളുടെ സിസ്റ്റം റിസോഴ്uസുകൾ അനാവശ്യമായി ഉപയോഗിക്കപ്പെടുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത്.

ലിനക്സിൽ ഒരു പ്രക്രിയ എങ്ങനെ ഇല്ലാതാക്കാം

Linux-ൽ പ്രവർത്തിക്കുന്ന ഒരു പ്രോസസ്സ് ഇല്ലാതാക്കാൻ, 'Kill PID' കമാൻഡ് ഉപയോഗിക്കുക. പക്ഷേ, കിൽ കമാൻഡ് പ്രവർത്തിപ്പിക്കുന്നതിന് മുമ്പ്, പ്രക്രിയയുടെ PID നമ്മൾ അറിഞ്ഞിരിക്കണം. ഉദാഹരണത്തിന്, ഇവിടെ എനിക്ക് 'cupsd' പ്രക്രിയയുടെ ഒരു PID കണ്ടെത്തണം.

 ps ax | grep cupsd

1511 ?        Ss     0:00 cupsd -C /etc/cups/cupsd.conf

അതിനാൽ, 'cupsd' പ്രക്രിയയുടെ PID '1511' ആണ്. ആ PID ഇല്ലാതാക്കാൻ, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

 kill -9 1511

അവരുടെ ഉദാഹരണങ്ങൾക്കൊപ്പം കിൽ കമാൻഡിനെക്കുറിച്ച് കൂടുതലറിയാൻ, എ ഗൈഡ് ടു കിൽ കമാൻഡ് ടു ടെർമിനേറ്റ് എ പ്രോസസ് ലിനക്സിൽ എന്ന ലേഖനം വായിക്കുക

ലിനക്സിൽ ഒരു സേവനങ്ങൾ എങ്ങനെ പ്രവർത്തനരഹിതമാക്കാം

Red Hat അധിഷ്ഠിത വിതരണങ്ങളായ Fedora, CentOS എന്നിവയിൽ, Linux-ൽ പ്രവർത്തിക്കുന്ന സേവനങ്ങൾ പ്രവർത്തനക്ഷമമാക്കുന്നതിനും പ്രവർത്തനരഹിതമാക്കുന്നതിനും 'chkconfig' എന്ന സ്ക്രിപ്റ്റ് ഉപയോഗിക്കുക.

ഉദാഹരണത്തിന്, സിസ്റ്റം സ്റ്റാർട്ടപ്പിൽ അപ്പാച്ചെ വെബ് സെർവർ പ്രവർത്തനരഹിതമാക്കാം.

 chkconfig httpd off
 chkconfig httpd --del

ഡെബിയൻ അധിഷ്uഠിത വിതരണങ്ങളായ ഉബുണ്ടു, ലിനക്uസ് മിന്റ്, മറ്റ് ഡെബിയൻ അധിഷ്uഠിത വിതരണങ്ങളിൽ update-rc.d എന്ന സ്uക്രിപ്റ്റ് ഉപയോഗിക്കുന്നു.

ഉദാഹരണത്തിന്, സിസ്റ്റം സ്റ്റാർട്ടപ്പിൽ അപ്പാച്ചെ സേവനം പ്രവർത്തനരഹിതമാക്കുന്നതിന് ഇനിപ്പറയുന്ന കമാൻഡ് എക്സിക്യൂട്ട് ചെയ്യുക. ഇവിടെ '-f' ഓപ്ഷൻ ബലം നിർബന്ധമാണ്.

 update-rc.d -f apache2 remove

ഈ മാറ്റങ്ങൾ വരുത്തിയ ശേഷം, ഈ യുഎൻ-ആവശ്യമായ പ്രക്രിയയില്ലാതെ സിസ്റ്റം അടുത്ത തവണ ബൂട്ട് ചെയ്യും, ഇത് യഥാർത്ഥത്തിൽ ഞങ്ങളുടെ സിസ്റ്റം റിസോഴ്uസ് സംരക്ഷിക്കുകയും സെർവർ കൂടുതൽ പ്രായോഗികവും വേഗതയേറിയതും സുരക്ഷിതവും സുരക്ഷിതവുമായിരിക്കും.

ഇപ്പോഴത്തേക്ക് ഇത്രമാത്രം. രസകരമായ മറ്റൊരു ലേഖനവുമായി ഞാൻ ഇവിടെ എത്തുന്നു. അതുവരെ തുടരുക, Tecmint-ലേക്ക് കണക്റ്റ് ചെയ്യുക. അഭിപ്രായ വിഭാഗത്തിൽ നിങ്ങളുടെ വിലയേറിയ ഫീഡ്uബാക്ക് ഞങ്ങൾക്ക് നൽകാൻ മറക്കരുത്.