CentOS 8-ൽ NFS സെർവറും ക്ലയന്റും എങ്ങനെ സജ്ജീകരിക്കാം


ക്ലയന്റ്/സെർവർ ഫയൽ സിസ്റ്റം എന്നും അറിയപ്പെടുന്ന നെറ്റ്uവർക്ക് ഫയൽ സിസ്റ്റം (NFS) നെറ്റ്uവർക്കിലൂടെ ലോക്കൽ ഫയൽ സിസ്റ്റങ്ങൾ എക്uസ്uപോർട്ടുചെയ്യാൻ ഉപയോഗിക്കുന്ന ജനപ്രിയവും ക്രോസ്-പ്ലാറ്റ്uഫോമും വിതരണവുമായ ഫയൽ സിസ്റ്റം പ്രോട്ടോക്കോളാണ്, അതുവഴി ക്ലയന്റുകൾക്ക് ഒരു നെറ്റ്uവർക്കിലൂടെ മറ്റുള്ളവരുമായി ഡയറക്ടറികളും ഫയലുകളും പങ്കിടാനും സംവദിക്കാനും കഴിയും. അവ പ്രാദേശികമായി ഘടിപ്പിച്ചിരിക്കുന്നതുപോലെ.

CentOS/RHEL 8-ൽ, പിന്തുണയ്uക്കുന്ന NFS പതിപ്പ് NFSv3, NFSv4 എന്നിവയാണ്, ഡിഫോൾട്ട് NFS പതിപ്പ് 4.2 ആണ്, ഇത് ആക്uസസ് കൺട്രോൾ ലിസ്റ്റുകൾ (ACL-കൾ), സെർവർ-സൈഡ് കോപ്പി, സ്uപേസ് ഫയലുകൾ, സ്uപേസ് റിസർവേഷൻ, ലേബൽ ചെയ്uത NFS, ലേഔട്ട് മെച്ചപ്പെടുത്തലുകൾ, കൂടാതെ വളരെ കൂടുതൽ.

ഈ ലേഖനത്തിൽ, CentOS/RHEL 8 Linux വിതരണങ്ങളിൽ NFS സെർവറും NFS ക്ലയന്റും എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്നും കോൺഫിഗർ ചെയ്യാമെന്നും നിങ്ങൾ പഠിക്കും.

  1. CentOS 8 ഇൻസ്റ്റലേഷൻ ഗൈഡ്
  2. RHEL 8 മിനിമൽ ഇൻസ്റ്റലേഷൻ
  3. RHEL 8-ൽ RHEL സബ്uസ്uക്രിപ്uഷൻ പ്രവർത്തനക്ഷമമാക്കുക
  4. CentOS/RHEL 8-ൽ ഒരു സ്റ്റാറ്റിക് IP വിലാസം സജ്ജമാക്കുക

NFS Server IP:	10.20.20.8
NFS Client IP:	10.20.20.9	

CentOS 8-ൽ NFS സെർവർ സജ്ജീകരിക്കുന്നു

1. ആദ്യം, NFS സെർവറിൽ ആവശ്യമായ പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്തുകൊണ്ട് ആരംഭിക്കുക. കെർണൽ NFS സെർവറിന് ഒരു ഡെമൺ നൽകുന്ന nfs-utils ആണ് പാക്കേജുകൾ.

NFS സെർവറിൽ പാക്കേജ് ഇൻസ്റ്റോൾ ചെയ്യുന്നതിനായി താഴെ പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക (നിങ്ങൾ ഒരു റൂട്ട് അല്ലാത്ത ഉപയോക്താവായി സിസ്റ്റം അഡ്മിനിസ്ട്രേഷൻ നടത്തുകയാണെങ്കിൽ sudo ഉപയോഗിക്കുക).

# dnf install nfs-utils

2. ഇൻസ്റ്റലേഷൻ പൂർത്തിയായിക്കഴിഞ്ഞാൽ, nfs-server സേവനം ആരംഭിക്കുക, സിസ്റ്റം ബൂട്ടിൽ സ്വയമേവ ആരംഭിക്കുന്നതിന് അത് പ്രവർത്തനക്ഷമമാക്കുക, തുടർന്ന് systemctl കമാൻഡുകൾ ഉപയോഗിച്ച് അതിന്റെ നില പരിശോധിക്കുക.

# systemctl start nfs-server.service
# systemctl enable nfs-server.service
# systemctl status nfs-server.service

NFS സെർവർ പ്രവർത്തിപ്പിക്കുന്നതിനോ NFS ഷെയറുകൾ മൗണ്ടുചെയ്യുന്നതിനോ ആവശ്യമായ മറ്റ് സേവനങ്ങളായ nfsd, nfs-idmapd, rpcbind, rpc.mountd, lockd, rpc.statd, rpc.rquotad, rpc.idmapd എന്നിവ സ്വയമേവ ആരംഭിക്കുമെന്നത് ശ്രദ്ധിക്കുക.

NFS സെർവറിനുള്ള കോൺഫിഗറേഷൻ ഫയലുകൾ ഇവയാണ്:

  • /etc/nfs.conf – NFS ഡെമണുകൾക്കും ടൂളുകൾക്കുമുള്ള പ്രധാന കോൺഫിഗറേഷൻ ഫയൽ.
  • /etc/nfsmount.conf – ഒരു NFS മൗണ്ട് കോൺഫിഗറേഷൻ ഫയൽ.

3. അടുത്തതായി, NFS സെർവറിൽ കയറ്റുമതി ചെയ്യാനോ പങ്കിടാനോ ഫയൽ സിസ്റ്റങ്ങൾ സൃഷ്ടിക്കുക. ഈ ഗൈഡിനായി, ഞങ്ങൾ നാല് ഫയൽ സിസ്റ്റങ്ങൾ സൃഷ്ടിക്കും, അവയിൽ മൂന്നെണ്ണം മൂന്ന് ഡിപ്പാർട്ട്uമെന്റുകളിൽ നിന്നുള്ള ജീവനക്കാർ ഉപയോഗിക്കുന്നു: ഹ്യൂമൻ റിസോഴ്uസ്, ഫിനാൻസ്, മാർക്കറ്റിംഗ് ഫയലുകൾ പങ്കിടാൻ, ഒന്ന് റൂട്ട് യൂസർ ബാക്കപ്പുകൾക്കുള്ളതാണ്.

# mkdir -p  /mnt/nfs_shares/{Human_Resource,Finance,Marketing}
# mkdir  -p /mnt/backups
# ls -l /mnt/nfs_shares/

4. NFS ക്ലയന്റുകൾക്ക് ആക്സസ് ചെയ്യാവുന്ന ലോക്കൽ ഫിസിക്കൽ ഫയൽ സിസ്റ്റങ്ങൾ നിർണ്ണയിക്കാൻ NFS സെർവർ /etc/exports കോൺഫിഗറേഷൻ ഫയലിൽ മുകളിലുള്ള ഫയൽ സിസ്റ്റങ്ങൾ എക്സ്പോർട്ട് ചെയ്യുക.

/mnt/nfs_shares/Human_Resource  	10.20.20.0/24(rw,sync)
/mnt/nfs_shares/Finance			10.20.10.0/24(rw,sync)
/mnt/nfs_shares/Marketing		10.20.30.0/24(rw,sync)
/mnt/backups				10.20.20.9/24(rw,sync,no_all_squash,root_squash)

ചില കയറ്റുമതി ഓപ്ഷനുകൾ ഇതാ (കൂടുതൽ വിവരങ്ങൾക്കും കയറ്റുമതി ഓപ്ഷനുകൾക്കും മാൻ എക്uസ്uപോർട്ടുകൾ വായിക്കുക):

  • rw – ഫയൽ സിസ്റ്റത്തിൽ വായിക്കാനും എഴുതാനുമുള്ള ആക്uസസ്സ് അനുവദിക്കുന്നു.
  • സമന്വയം - ആവശ്യപ്പെടുമ്പോൾ (ഡിഫോൾട്ടായി ബാധകമാണ്) പ്രവർത്തനങ്ങൾ (ഡിസ്കിലേക്ക് വിവരങ്ങൾ എഴുതുന്നത്) എഴുതാൻ NFS സെർവറിനോട് പറയുന്നു.
  • all_squash - ക്ലയന്റ് അഭ്യർത്ഥനകളിൽ നിന്ന് അജ്ഞാത ഉപയോക്താവിലേക്ക് എല്ലാ UID-കളും GID-കളും മാപ്പ് ചെയ്യുന്നു.
  • no_all_squash – ക്ലയന്റ് അഭ്യർത്ഥനകളിൽ നിന്ന് NFS സെർവറിലെ സമാന UID-കളിലേക്കും GID-കളിലേക്കും എല്ലാ UID-കളും GID-കളും മാപ്പ് ചെയ്യാൻ ഉപയോഗിക്കുന്നു.
  • root_squash – റൂട്ട് ഉപയോക്താവിൽ നിന്നുള്ള അഭ്യർത്ഥനകൾ അല്ലെങ്കിൽ UID/GID 0 ക്ലയന്റിൽനിന്നുള്ള അജ്ഞാത യുഐഡി/ജിഐഡിയിലേക്ക്.

5. മുകളിലുള്ള ഫയൽ സിസ്റ്റം കയറ്റുമതി ചെയ്യുന്നതിന്, -a ഫ്ലാഗ് ഉപയോഗിച്ച് exportfs കമാൻഡ് പ്രവർത്തിപ്പിക്കുക എന്നാൽ എല്ലാ ഡയറക്ടറികളും കയറ്റുമതി ചെയ്യുക അല്ലെങ്കിൽ കയറ്റുമതി ചെയ്യാതിരിക്കുക എന്നാണ് അർത്ഥമാക്കുന്നത്, -r എന്നാൽ എല്ലാ ഡയറക്ടറികളും വീണ്ടും കയറ്റുമതി ചെയ്യുക, /var/ സമന്വയിപ്പിക്കുക എന്നാണ്. /etc/exports ഉള്ള lib/nfs/etab, /etc/exports.d എന്നിവയ്ക്ക് കീഴിലുള്ള ഫയലുകളും, -v വെർബോസ് ഔട്ട്പുട്ട് പ്രവർത്തനക്ഷമമാക്കുന്നു.

# exportfs -arv

6. നിലവിലെ കയറ്റുമതി ലിസ്റ്റ് പ്രദർശിപ്പിക്കുന്നതിന്, ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക. ഇനിപ്പറയുന്ന സ്ക്രീൻഷോട്ടിൽ കാണിച്ചിരിക്കുന്നതുപോലെ വ്യക്തമായി നിർവചിച്ചിട്ടില്ലാത്ത ചില ഡിഫോൾട്ട് എക്uസ്uപോർട്ട് ഓപ്uഷനുകളും എക്uസ്uപോർട്ട് ടേബിൾ ബാധകമാക്കുന്നു എന്നത് ശ്രദ്ധിക്കുക.

# exportfs  -s

7. അടുത്തതായി, നിങ്ങൾക്ക് ഫയർവാൾഡ് സേവനം പ്രവർത്തിക്കുന്നുണ്ടെങ്കിൽ, ഫയർവാൾ വഴി ആവശ്യമായ NFS സേവനങ്ങളിലേക്ക് (മൌണ്ട്, nfs, rpc-bind) ട്രാഫിക് അനുവദിക്കേണ്ടതുണ്ട്, തുടർന്ന് മാറ്റങ്ങൾ പ്രയോഗിക്കുന്നതിന് ഫയർവാൾ നിയമങ്ങൾ വീണ്ടും ലോഡുചെയ്യുക, ഇനിപ്പറയുന്ന രീതിയിൽ.

# firewall-cmd --permanent --add-service=nfs
# firewall-cmd --permanent --add-service=rpc-bind
# firewall-cmd --permanent --add-service=mountd
# firewall-cmd --reload

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

8. ഇപ്പോൾ ക്ലയന്റ് നോഡിൽ(കളിൽ), ക്ലയന്റ് സിസ്റ്റങ്ങളിൽ NFS ഷെയറുകൾ ആക്സസ് ചെയ്യുന്നതിന് ആവശ്യമായ പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യുക. നിങ്ങളുടെ വിതരണത്തിന് ഉചിതമായ കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

# dnf install nfs-utils nfs4-acl-tools         [On CentOS/RHEL]
$ sudo apt install nfs-common nfs4-acl-tools   [On Debian/Ubuntu]

9. തുടർന്ന് NFS സെർവറിനുള്ള മൗണ്ട് വിവരങ്ങൾ കാണിക്കാൻ showmount കമാൻഡ് പ്രവർത്തിപ്പിക്കുക. സ്ക്രീൻഷോട്ടിൽ കാണിച്ചിരിക്കുന്നതുപോലെ കമാൻഡ് ക്ലയന്റിലുള്ള എക്uസ്uപോർട്ട് ചെയ്ത ഫയൽ സിസ്റ്റം ഔട്ട്uപുട്ട് ചെയ്യണം.

# showmount -e 10.20.20.8

9. അടുത്തതായി, റിമോട്ട് എൻഎഫ്എസ് ഫയൽ സിസ്റ്റം മൌണ്ട് ചെയ്യുന്നതിനായി ഒരു ലോക്കൽ ഫയൽ സിസ്റ്റം/ഡയറക്uടറി ഉണ്ടാക്കി ഒരു ntf ഫയൽ സിസ്റ്റമായി മൌണ്ട് ചെയ്യുക.

# mkdir -p /mnt/backups
# mount -t nfs  10.20.20.8:/mnt/backups /mnt/backups

10. തുടർന്ന് മൗണ്ട് കമാൻഡ് പ്രവർത്തിപ്പിച്ച് റിമോട്ട് ഫയൽ സിസ്റ്റം മൌണ്ട് ചെയ്തിട്ടുണ്ടെന്ന് സ്ഥിരീകരിക്കുക, കൂടാതെ nfs മൗണ്ടുകൾ ഫിൽട്ടർ ചെയ്യുക.

# mount | grep nfs

11. സിസ്റ്റം റീബൂട്ട് ചെയ്തതിനു ശേഷവും സ്ഥിരമായി മൗണ്ട് പ്രവർത്തനക്ഷമമാക്കുന്നതിന്, /etc/fstab-ൽ ഉചിതമായ എൻട്രി നൽകുന്നതിന് ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# echo "10.20.20.8:/mnt/backups     /mnt/backups  nfs     defaults 0 0">>/etc/fstab
# cat /etc/fstab

12. അവസാനമായി, സെർവറിൽ ഒരു ഫയൽ സൃഷ്uടിച്ച് എൻഎഫ്എസ് സജ്ജീകരണം നന്നായി പ്രവർത്തിക്കുന്നുണ്ടോയെന്ന് പരിശോധിക്കുകയും ക്ലയന്റിൽ ഫയൽ കാണാൻ കഴിയുമോയെന്ന് പരിശോധിക്കുകയും ചെയ്യുക.

# touch /mnt/backups/file_created_on_server.text     [On NFS Server]
# ls -l /mnt/backups/file_created_on_server.text     [On NFS client]

എന്നിട്ട് റിവേഴ്സ് ചെയ്യുക.

# touch /mnt/backups/file_created_on_client.text     [On NFS Client]
# ls -l /mnt/backups/file_created_on_client.text     [On NFS Server]

13. ക്ലയന്റ് സൈഡിൽ റിമോട്ട് ഫയൽ സിസ്റ്റം അൺമൗണ്ട് ചെയ്യാൻ.

# umount /mnt/backups

ഇനിപ്പറയുന്ന സ്ക്രീൻഷോട്ടിൽ കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങൾ റിമോട്ട് ഫയൽ സിസ്റ്റത്തിനുള്ളിൽ പ്രവർത്തിക്കുന്നുണ്ടെങ്കിൽ അത് അൺമൗണ്ട് ചെയ്യാൻ കഴിയില്ല എന്നത് ശ്രദ്ധിക്കുക.

അത്രയേയുള്ളൂ! ഈ ഗൈഡിൽ, CentOS/RHEL 8-ൽ ഒരു NFS സെർവറും ക്ലയന്റും എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്നും കോൺഫിഗർ ചെയ്യാമെന്നും ഞങ്ങൾ കാണിച്ചുതന്നു. പങ്കിടാൻ നിങ്ങൾക്ക് എന്തെങ്കിലും ചിന്തകളോ ചോദ്യങ്ങളോ ഉണ്ടെങ്കിൽ, ഞങ്ങളെ ബന്ധപ്പെടാൻ ചുവടെയുള്ള കമന്റ് ഫോം ഉപയോഗിക്കുക.