RHEL/CentOS/Fedora, Debian/Ubuntu എന്നിവയിൽ NFS (നെറ്റ്uവർക്ക് ഫയൽ സിസ്റ്റം) എങ്ങനെ സജ്ജീകരിക്കാം


1980-ൽ സൺ മൈക്രോസിസ്റ്റംസ് ലിനക്സ്/യുനിക്സ് സിസ്റ്റങ്ങൾക്കിടയിൽ ഫയലുകളും ഫോൾഡറുകളും പങ്കിടുന്നതിനായി NFS (നെറ്റ്uവർക്ക് ഫയൽ സിസ്റ്റം) അടിസ്ഥാനപരമായി വികസിപ്പിച്ചെടുത്തതാണ്. നിങ്ങളുടെ ലോക്കൽ ഫയൽ സിസ്റ്റങ്ങളെ നെറ്റ്uവർക്കിലൂടെ മൗണ്ട് ചെയ്യാനും റിമോട്ട് ഹോസ്റ്റുകൾ പ്രാദേശികമായി മൌണ്ട് ചെയ്യുമ്പോൾ അവയുമായി സംവദിക്കാനും ഇത് നിങ്ങളെ അനുവദിക്കുന്നു. ഒരേ സിസ്റ്റത്തിൽ. NFS-ന്റെ സഹായത്തോടെ നമുക്ക് Unix to Linux സിസ്റ്റത്തിനും Linux to Unix സിസ്റ്റത്തിനും ഇടയിൽ ഫയൽ പങ്കിടൽ സജ്ജീകരിക്കാം.

  1. വിദൂര ഫയലുകളിലേക്ക് ലോക്കൽ ആക്uസസ്സ് എൻഎഫ്എസ് അനുവദിക്കുന്നു.
  2. എല്ലാ *nix അടിസ്ഥാനമാക്കിയുള്ള മെഷീനുകൾക്കിടയിലും ഫയൽ പങ്കിടലിനായി ഇത് സ്റ്റാൻഡേർഡ് ക്ലയന്റ്/സെർവർ ആർക്കിടെക്ചർ ഉപയോഗിക്കുന്നു.
  3. NFS-നൊപ്പം രണ്ട് മെഷീനുകളും ഒരേ OS-ൽ പ്രവർത്തിക്കണമെന്നില്ല.
  4. NFS-ന്റെ സഹായത്തോടെ നമുക്ക് കേന്ദ്രീകൃത സ്റ്റോറേജ് സൊല്യൂഷനുകൾ കോൺഫിഗർ ചെയ്യാം.
  5. ഭൗതിക സ്ഥാനം പരിഗണിക്കാതെ ഉപയോക്താക്കൾക്ക് അവരുടെ ഡാറ്റ ലഭിക്കും.
  6. പുതിയ ഫയലുകൾക്കായി സ്വമേധയാ പുതുക്കേണ്ട ആവശ്യമില്ല.
  7. NFS-ന്റെ പുതിയ പതിപ്പ് acl, pseudo root മൗണ്ടുകളും പിന്തുണയ്ക്കുന്നു.
  8. ഫയർവാളുകളും കെർബറോസും ഉപയോഗിച്ച് സുരക്ഷിതമാക്കാം.

ഇത് ഒരു സിസ്റ്റം വി-ലോഞ്ച് ചെയ്ത സേവനമാണ്. NFS സെർവർ പാക്കേജിൽ മൂന്ന് സൗകര്യങ്ങൾ ഉൾപ്പെടുന്നു, പോർട്ട്മാപ്പിലും nfs-utils പാക്കേജുകളിലും ഉൾപ്പെടുത്തിയിട്ടുണ്ട്.

  1. portmap : ഇത് മറ്റ് മെഷീനുകളിൽ നിന്നുള്ള കോളുകൾ ശരിയായ RPC സേവനത്തിലേക്ക് മാപ്പ് ചെയ്യുന്നു (NFSv4-നൊപ്പം ആവശ്യമില്ല).
  2. nfs: ഇത് റിമോട്ട് ഫയൽ പങ്കിടൽ അഭ്യർത്ഥനകളെ പ്രാദേശിക ഫയൽ സിസ്റ്റത്തിലെ അഭ്യർത്ഥനകളാക്കി വിവർത്തനം ചെയ്യുന്നു.
  3. rpc.mountd: ഫയൽ സിസ്റ്റങ്ങൾ മൗണ്ടുചെയ്യുന്നതിനും അൺമൗണ്ട് ചെയ്യുന്നതിനും ഈ സേവനം ഉത്തരവാദിയാണ്.

  1. /etc/exports : ഇത് NFS-ന്റെ ഒരു പ്രധാന കോൺഫിഗറേഷൻ ഫയലാണ്, എക്uസ്uപോർട്ട് ചെയ്uത എല്ലാ ഫയലുകളും ഡയറക്uടറികളും ഈ ഫയലിൽ NFS സെർവർ അറ്റത്തുള്ള നിർവചിച്ചിരിക്കുന്നു.
  2. /etc/fstab : റീബൂട്ടുകളിലുടനീളം നിങ്ങളുടെ സിസ്റ്റത്തിൽ ഒരു NFS ഡയറക്uടറി മൌണ്ട് ചെയ്യുന്നതിന്, ഞങ്ങൾ /etc/fstab-ൽ ഒരു എൻട്രി നടത്തേണ്ടതുണ്ട്.
  3. /etc/sysconfig/nfs : ഏത് പോർട്ടിലാണ് ആർപിസിയും മറ്റ് സേവനങ്ങളും കേൾക്കുന്നതെന്ന് നിയന്ത്രിക്കാൻ എൻഎഫ്എസിന്റെ കോൺഫിഗറേഷൻ ഫയൽ.

Linux സെർവറിൽ NFS മൗണ്ടുകൾ സജ്ജീകരിക്കുകയും ക്രമീകരിക്കുകയും ചെയ്യുക

NFS മൗണ്ടുകൾ സജ്ജീകരിക്കാൻ, ഞങ്ങൾക്ക് കുറഞ്ഞത് രണ്ട് Linux/Unix മെഷീനുകൾ ആവശ്യമാണ്. ഇവിടെ ഈ ട്യൂട്ടോറിയലിൽ, ഞാൻ രണ്ട് സെർവറുകൾ ഉപയോഗിക്കും.

  1. NFS സെർവർ: nfsserver.example.com കൂടെ IP-192.168.0.100
  2. NFS ക്ലയന്റ് : nfsclient.example.com IP-192.168.0.101 ഉള്ളത്

ഞങ്ങളുടെ NFS സെർവറിലും NFS ക്ലയന്റ് മെഷീനിലും NFS പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യേണ്ടതുണ്ട്. yum (Red Hat Linux), apt-get (Debian, Ubuntu) പാക്കേജ് ഇൻസ്റ്റാളറുകൾ വഴി നമുക്ക് ഇത് ഇൻസ്റ്റാൾ ചെയ്യാം.

 yum install nfs-utils nfs-utils-lib
 yum install portmap (not required with NFSv4)
 apt-get install nfs-utils nfs-utils-lib

ഇപ്പോൾ രണ്ട് മെഷീനുകളിലും സേവനങ്ങൾ ആരംഭിക്കുക.

 /etc/init.d/portmap start
 /etc/init.d/nfs start
 chkconfig --level 35 portmap on
 chkconfig --level 35 nfs on

രണ്ട് മെഷീനുകളിലും പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യുകയും സേവനങ്ങൾ ആരംഭിക്കുകയും ചെയ്ത ശേഷം, ഫയൽ പങ്കിടലിനായി ഞങ്ങൾ രണ്ട് മെഷീനുകളും കോൺഫിഗർ ചെയ്യേണ്ടതുണ്ട്.

NFS സെർവർ സജ്ജീകരിക്കുന്നു

ആദ്യം നമ്മൾ NFS സെർവർ കോൺഫിഗർ ചെയ്യും.

NFS-മായി ഒരു ഡയറക്uടറി പങ്കിടുന്നതിന്, “/etc/exports” കോൺഫിഗറേഷൻ ഫയലിൽ നമ്മൾ ഒരു എൻട്രി നടത്തേണ്ടതുണ്ട്. ക്ലയന്റ് സെർവറുമായി പങ്കിടാൻ/പാർട്ടീഷനിൽ ഞാൻ \nfsshare എന്ന പേരിൽ ഒരു പുതിയ ഡയറക്ടറി ഇവിടെ സൃഷ്ടിക്കും, നിങ്ങൾക്ക് ഇതിനകം നിലവിലുള്ള ഒരു ഡയറക്ടറി NFS-മായി പങ്കിടാനും കഴിയും.

 mkdir /nfsshare

ഇപ്പോൾ നമുക്ക് /etc/exports എന്നതിൽ ഒരു എൻട്രി നടത്തുകയും നെറ്റ്uവർക്കിൽ ഞങ്ങളുടെ ഡയറക്ടറി പങ്കിടാൻ കഴിയുന്ന തരത്തിൽ സേവനങ്ങൾ പുനരാരംഭിക്കുകയും വേണം.

 vi /etc/exports

/nfsshare 192.168.0.101(rw,sync,no_root_squash)

മുകളിലുള്ള ഉദാഹരണത്തിൽ, \nfsshare എന്ന പേരിൽ/പാർട്ടീഷനിൽ ഒരു ഡയറക്uടറി ഉണ്ട് ക്ലയന്റ് ഐപി “192.168.0.101” മായി റീഡ് ആൻഡ് റൈറ്റ് (rw) പ്രത്യേകാവകാശത്തോടെ പങ്കിടുന്നു, നിങ്ങൾക്ക് IP യുടെ സ്ഥാനത്ത് ക്ലയന്റിൻറെ ഹോസ്റ്റ്നാമവും ഉപയോഗിക്കാം. മുകളിലെ ഉദാഹരണത്തിൽ.

ഫയൽ പങ്കിടലിനായി “/etc/exports” ഫയലിൽ നമുക്ക് ഉപയോഗിക്കാവുന്ന മറ്റ് ചില ഓപ്ഷനുകൾ ഇനിപ്പറയുന്നതാണ്.

  1. ro: ഈ ഓപ്uഷന്റെ സഹായത്തോടെ, പങ്കിട്ട ഫയലുകളിലേക്ക് നമുക്ക് വായിക്കാൻ മാത്രം ആക്uസസ് നൽകാൻ കഴിയും, അതായത് ക്ലയന്റിന് മാത്രമേ വായിക്കാൻ കഴിയൂ.
  2. rw: പങ്കിട്ട ഡയറക്uടറിയിൽ വായിക്കാനും എഴുതാനും ആക്uസസ് ചെയ്യാൻ ക്ലയന്റ് സെർവറിനെ ഈ ഓപ്uഷൻ അനുവദിക്കുന്നു.
  3. സമന്വയം: മാറ്റങ്ങൾ വരുത്തിക്കഴിഞ്ഞാൽ മാത്രമേ, പങ്കിട്ട ഡയറക്ടറിയിലേക്കുള്ള അഭ്യർത്ഥനകൾ സമന്വയം സ്ഥിരീകരിക്കുകയുള്ളൂ.
  4. no_subtree_check: ഈ ഓപ്ഷൻ സബ്ട്രീ പരിശോധിക്കുന്നത് തടയുന്നു. ഒരു പങ്കിട്ട ഡയറക്uടറി ഒരു വലിയ ഫയൽ സിസ്റ്റത്തിന്റെ ഉപഡയറക്uടറി ആയിരിക്കുമ്പോൾ, അതിന്റെ അനുമതികളും വിശദാംശങ്ങളും പരിശോധിക്കുന്നതിനായി nfs അതിന് മുകളിലുള്ള എല്ലാ ഡയറക്uടറികളുടെയും സ്കാൻ ചെയ്യുന്നു. സബ്ട്രീ പരിശോധന പ്രവർത്തനരഹിതമാക്കുന്നത് NFS-ന്റെ വിശ്വാസ്യത വർദ്ധിപ്പിക്കും, പക്ഷേ സുരക്ഷ കുറയ്ക്കും.
  5. no_root_squash: ഈ വാചകം നിയുക്ത ഡയറക്uടറിയിലേക്ക് കണക്റ്റ് ചെയ്യാൻ റൂട്ടിനെ അനുവദിക്കുന്നു.

“/etc/exports” ഉള്ള കൂടുതൽ ഓപ്uഷനുകൾക്കായി, കയറ്റുമതിക്കായി മാൻ പേജുകൾ വായിക്കാൻ നിങ്ങളോട് ശുപാർശ ചെയ്യുന്നു.

NFS ക്ലയന്റ് സജ്ജീകരിക്കുന്നു

NFS സെർവർ ക്രമീകരിച്ചതിന് ശേഷം, നമുക്ക് ആ പങ്കിട്ട ഡയറക്ടറി അല്ലെങ്കിൽ ക്ലയന്റ് സെർവറിൽ പാർട്ടീഷൻ മൗണ്ട് ചെയ്യേണ്ടതുണ്ട്.

ഇപ്പോൾ NFS ക്ലയന്റ് അവസാനം, പ്രാദേശികമായി ആക്uസസ് ചെയ്യുന്നതിന് ആ ഡയറക്ടറി ഞങ്ങളുടെ സെർവറിൽ മൗണ്ട് ചെയ്യേണ്ടതുണ്ട്. അങ്ങനെ ചെയ്യുന്നതിന്, റിമോട്ട് സെർവറിലോ NFS സെർവറിലോ ഷെയറുകൾ ലഭ്യമാണെന്ന് ആദ്യം കണ്ടെത്തേണ്ടതുണ്ട്.

 showmount -e 192.168.0.100

Export list for 192.168.0.100:
/nfsshare 192.168.0.101

നിങ്ങളുടെ സെർവറുമായി പങ്കിടുന്നതിന് \nfsshare എന്ന് പേരുള്ള ഒരു ഡയറക്uടറി “192.168.0.100” ൽ ലഭ്യമാണെന്ന് മുകളിലുള്ള കമാൻഡ് കാണിക്കുന്നു.

ആ പങ്കിട്ട NFS ഡയറക്uടറി മൌണ്ട് ചെയ്യുന്നതിന് നമുക്ക് ഇനിപ്പറയുന്ന മൗണ്ട് കമാൻഡ് ഉപയോഗിക്കാം.

 mount -t nfs 192.168.0.100:/nfsshare /mnt/nfsshare

മുകളിലെ കമാൻഡ് ക്ലയന്റ് സെർവറിൽ /mnt/nfsshare എന്നതിൽ പങ്കിട്ട ഡയറക്ടറി മൗണ്ട് ചെയ്യും. താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇത് പരിശോധിക്കാവുന്നതാണ്.

 mount | grep nfs

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)
192.168.0.100:/nfsshare on /mnt type nfs (rw,addr=192.168.0.100)

മുകളിലുള്ള മൗണ്ട് കമാൻഡ് nfs പങ്കിട്ട ഡയറക്ടറി nfs ക്ലയന്റിലേക്ക് താൽക്കാലികമായി മൌണ്ട് ചെയ്തു, റീബൂട്ടുകളിൽ ഉടനീളം നിങ്ങളുടെ സിസ്റ്റത്തിൽ ഒരു NFS ഡയറക്uടറി ശാശ്വതമായി മൌണ്ട് ചെയ്യുന്നതിന്, ഞങ്ങൾ “/etc/fstab“-ൽ ഒരു എൻട്രി നടത്തേണ്ടതുണ്ട്.

 vi /etc/fstab

ചുവടെ കാണിച്ചിരിക്കുന്നതുപോലെ ഇനിപ്പറയുന്ന പുതിയ വരി ചേർക്കുക.

192.168.0.100:/nfsshare /mnt  nfs defaults 0 0

NFS സെറ്റപ്പിന്റെ പ്രവർത്തനം പരിശോധിക്കുക

സെർവർ അറ്റത്ത് ഒരു ടെസ്റ്റ് ഫയൽ സൃഷ്ടിച്ച് നമുക്ക് NFS സെർവർ സജ്ജീകരണം പരിശോധിക്കാം, കൂടാതെ nfs ക്ലയന്റ് സൈഡിൽ അല്ലെങ്കിൽ തിരിച്ചും അതിന്റെ ലഭ്യത പരിശോധിക്കുക.

ആ പങ്കിട്ട ഡയറക്uടറിയിൽ \nfstest.txt' എന്ന പേരിൽ ഞാൻ ഒരു പുതിയ ടെക്സ്റ്റ് ഫയൽ സൃഷ്ടിച്ചു.

 cat > /nfsshare/nfstest.txt

This is a test file to test the working of NFS server setup.

ക്ലയന്റ് സെർവറിലെ പങ്കിട്ട ഡയറക്uടറിയിലേക്ക് പോകുക, സ്വമേധയാലുള്ള പുതുക്കൽ അല്ലെങ്കിൽ സേവനം പുനരാരംഭിക്കാതെ പങ്കിട്ട ഫയൽ നിങ്ങൾ കണ്ടെത്തും.

 ll /mnt/nfsshare
total 4
-rw-r--r-- 1 root root 61 Sep 21 21:44 nfstest.txt
[email  ~]# cat /mnt/nfsshare/nfstest.txt
This is a test file to test the working of NFS server setup.

NFS മൗണ്ട് നീക്കം ചെയ്യുന്നു

ഫയൽ പങ്കിടൽ പൂർത്തിയാക്കിയ ശേഷം നിങ്ങളുടെ സെർവറിൽ നിന്ന് ആ പങ്കിട്ട ഡയറക്ടറി അൺമൗണ്ട് ചെയ്യണമെങ്കിൽ, \umount കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ആ പ്രത്യേക ഡയറക്ടറി അൺമൗണ്ട് ചെയ്യാം. ചുവടെയുള്ള ഈ ഉദാഹരണം കാണുക.

[email  ~]# umount /mnt/nfsshare

ഫയൽസിസ്റ്റം വീണ്ടും നോക്കുമ്പോൾ മൗണ്ടുകൾ നീക്കം ചെയ്തതായി നിങ്ങൾക്ക് കാണാൻ കഴിയും.

 df -h -F nfs

ആ പങ്കിട്ട ഡയറക്uടറികൾ ഇനി ലഭ്യമല്ലെന്ന് നിങ്ങൾ കാണും.

NFS-നുള്ള ചില പ്രധാനപ്പെട്ട കമാൻഡുകൾ.

  1. showmount -e : നിങ്ങളുടെ ലോക്കൽ മെഷീനിൽ ലഭ്യമായ ഷെയറുകൾ കാണിക്കുന്നു
  2. showmount -e : റിമോട്ട് സെർവറിൽ ലഭ്യമായ ഷെയറുകൾ ലിസ്റ്റുചെയ്യുന്നു
  3. showmount -d : എല്ലാ ഉപ ഡയറക്ടറികളും ലിസ്റ്റുചെയ്യുന്നു
  4. exportfs -v : ഒരു സെർവറിൽ പങ്കിടൽ ഫയലുകളുടെയും ഓപ്ഷനുകളുടെയും ഒരു ലിസ്റ്റ് പ്രദർശിപ്പിക്കുന്നു
  5. exportfs -a : /etc/exports-ൽ ലിസ്റ്റ് ചെയ്തിരിക്കുന്ന എല്ലാ ഷെയറുകളും കയറ്റുമതി ചെയ്യുന്നു, അല്ലെങ്കിൽ നൽകിയിരിക്കുന്ന പേര്
  6. exportfs -u : /etc/exports-ൽ ലിസ്uറ്റ് ചെയ്uതിരിക്കുന്ന എല്ലാ ഷെയറുകളും കയറ്റുമതി ചെയ്യാതിരിക്കുന്നു, അല്ലെങ്കിൽ നൽകിയിരിക്കുന്ന പേര്
  7. exportfs -r : /etc/exports പരിഷ്കരിച്ചതിന് ശേഷം സെർവറിന്റെ ലിസ്റ്റ് പുതുക്കുക

ഇപ്പോൾ NFS മൗണ്ടുകളിൽ ഇതാണ്, ഇതൊരു തുടക്കം മാത്രമായിരുന്നു, ഞങ്ങളുടെ ഭാവി ലേഖനങ്ങളിൽ NFS-ന്റെ കൂടുതൽ ഓപ്ഷനുകളും സവിശേഷതകളും ഞാൻ കൊണ്ടുവരും. അതുവരെ, ഭാവിയിൽ കൂടുതൽ ആവേശകരവും രസകരവുമായ ട്യൂട്ടോറിയലുകൾക്കായി linux-console.net-മായി ബന്ധം നിലനിർത്തുക. നിങ്ങളുടെ അഭിപ്രായങ്ങളും നിർദ്ദേശങ്ങളും താഴെ കമന്റ് ബോക്സിൽ രേഖപ്പെടുത്തുക.