ലിനക്സിലെ പാർട്ടീഷനിലേക്ക് /ഹോം ഡയറക്ടറി എങ്ങനെ പരിവർത്തനം ചെയ്യാം


ഈ വിഷയം അൽപ്പം വിചിത്രമായി തോന്നിയേക്കാം. ഞാൻ ഉദ്ദേശിക്കുന്നത്, നിങ്ങളുടെ ഹോം ഡയറക്ടറിയെ ഒരു പ്രത്യേക പാർട്ടീഷനാക്കി മാറ്റേണ്ടത് എന്തുകൊണ്ട്?

നിങ്ങൾ ലിനക്സ് ഇൻസ്റ്റാൾ ചെയ്യുമ്പോഴെല്ലാം, ഇൻസ്റ്റാളർ ഇതിനകം തന്നെ സ്ഥിരസ്ഥിതിയായി 'ഗൈഡഡ്' പാർട്ടീഷനിംഗ് തിരഞ്ഞെടുക്കുന്നു. നിങ്ങൾ ഈ ഓപ്uഷനുമായി പോകുമ്പോൾ, ഇൻസ്റ്റാളർ ഹോം ഡയറക്ടറിയും മറ്റ് എല്ലാ സിസ്റ്റം ഡയറക്uടറികളും റൂട്ട് (/) പാർട്ടീഷനു കീഴിൽ സ്ഥാപിക്കുന്നു.

ഈ സജ്ജീകരണം വളരെ നന്നായി പ്രവർത്തിക്കുന്നുണ്ടെങ്കിലും, ഇത് ഒരു വലിയ അപകടസാധ്യത നൽകുന്നു. നിങ്ങളുടെ സിസ്റ്റം ക്രാഷാകുകയോ അല്ലെങ്കിൽ റൂട്ട് പാർട്ടീഷൻ എന്തെങ്കിലും കേടാകുകയോ ചെയ്താൽ, ഹോം ഡയറക്ടറിയിലുള്ള നിങ്ങളുടെ എല്ലാ സ്വകാര്യ ഫയലുകളും നഷ്uടപ്പെടും.

ഇക്കാരണത്താൽ, ഇൻസ്റ്റലേഷൻ സമയത്ത് ഒരു പ്രത്യേക ഹോം പാർട്ടീഷൻ ഉണ്ടാക്കേണ്ടത് പ്രധാനമാണ്. ഒരു ഓപ്പറേറ്റിംഗ് സിസ്റ്റം പുനഃസ്ഥാപിക്കുമ്പോഴോ റൂട്ട് പാർട്ടീഷൻ ക്രാഷ് ആകുമ്പോഴോ ഇത് നിങ്ങളുടെ സ്വകാര്യ ഫയലുകളുടെ സുരക്ഷ ഉറപ്പുനൽകുന്നു.

നിങ്ങളുടെ ഹാർഡ് ഡ്രൈവ് പാർട്ടീഷൻ ചെയ്യുമ്പോൾ ഡിഫോൾട്ട് ഓപ്uഷൻ നിങ്ങൾ സ്വീകരിച്ചിട്ടുണ്ടെങ്കിൽ, ഞങ്ങളുടെ എല്ലാ ഡയറക്uടറികളും റൂട്ട് പാർട്ടീഷന്റെ കീഴിൽ വരും, ഈ ഗൈഡ് നിങ്ങൾക്കുള്ളതാണ്.

ഈ ഗൈഡിൽ, നിങ്ങൾ ഹോം പാർട്ടീഷൻ ആകാൻ ആഗ്രഹിക്കുന്ന അധിക HDD ഞങ്ങൾ കൈമാറും.

നമുക്ക് തുടങ്ങാം!

ഘട്ടം 1: ചേർത്ത പുതിയ ഡ്രൈവ് തിരിച്ചറിയുക

നീക്കം ചെയ്യാവുന്ന ഡ്രൈവിൽ പ്ലഗ് ഇൻ ചെയ്യുന്നതിനുമുമ്പ്, ഞങ്ങൾക്ക് ഒരു ഹോം ഫോൾഡറുള്ള ഒരൊറ്റ ഹാർഡ് ഡ്രൈവ് (/dev/sda) മാത്രമേ ഉള്ളൂ, കൂടാതെ / അല്ലെങ്കിൽ റൂട്ട് പാർട്ടീഷനിൽ മൌണ്ട് ചെയ്തിരിക്കുന്ന എല്ലാ സിസ്റ്റം പാർട്ടീഷനുകളും.

df കമാൻഡ് ഉപയോഗിച്ചുള്ള നിങ്ങളുടെ ഹാർഡ് ഡ്രൈവ് കോൺഫിഗറേഷന്റെ ഒരു നോട്ടം ഇതാ.

$ df -Th

അടുത്തതായി, ഞങ്ങൾ 8GB നീക്കം ചെയ്യാവുന്ന USB ഡ്രൈവ് പ്ലഗ് ഇൻ ചെയ്യും. ഇത് /dev/sdb ആയി തിരിച്ചറിയുകയും /media/tecmint/USB മൗണ്ട് പോയിന്റിൽ മൗണ്ട് ചെയ്യുകയും ചെയ്യുന്നു.

ഇത് സ്ഥിരീകരിക്കുന്നതിന്, ഞങ്ങൾ lsblk കമാൻഡ് പ്രവർത്തിപ്പിക്കും.

$ lsblk

നിങ്ങളുടെ സജ്ജീകരണമനുസരിച്ച് പാർട്ടീഷനും മൗണ്ട് പോയിന്റും വ്യത്യാസപ്പെടാം. ഉദാഹരണത്തിന്, മൂന്നാമത്തെ ഡ്രൈവ് /dev/sdc, നാലാമത്തേത് /dev/sdd എന്നിങ്ങനെ സൂചിപ്പിക്കും.

ഘട്ടം 2: Linux-ൽ ഒരു പുതിയ പാർട്ടീഷൻ ഉണ്ടാക്കുക

ഞങ്ങളുടെ സിസ്റ്റത്തിലേക്ക് ഞങ്ങളുടെ രണ്ടാമത്തെ ഡ്രൈവ് പുതുതായി ചേർത്തിട്ടുണ്ട്, എന്നാൽ ഇത് ഞങ്ങളുടെ ഹോം ഡയറക്ടറിക്ക് ഒരു പ്രത്യേക പാർട്ടീഷനായി ഉപയോഗിക്കുന്നതിന്, അതിൽ ഒരു പാർട്ടീഷൻ സൃഷ്ടിക്കേണ്ടതുണ്ട്. ഒരു പുതിയ ഡ്രൈവ് ആയതിനാൽ ഇപ്പോൾ അതിന് ഒന്നുമില്ല.

കാണിച്ചിരിക്കുന്നതുപോലെ fdisk കമാൻഡ് ഇത് സ്ഥിരീകരിക്കുന്നു.

$ sudo fdisk -l

ഹൈലൈറ്റ് ചെയ്uത വിഭാഗത്തിൽ, /dev/sda1, /dev/sda2, ഉള്ള ആദ്യ ഡ്രൈവിൽ നിന്ന് വ്യത്യസ്തമായി പുതിയ ഡ്രൈവിന് പാർട്ടീഷനൊന്നും ബന്ധപ്പെടുത്തിയിട്ടില്ലെന്ന് നിങ്ങൾക്ക് കാണാൻ കഴിയും. കൂടാതെ /dev/sda5.

ഇപ്പോൾ, കമാൻഡ് ഉപയോഗിച്ച് നമ്മൾ ഒരു പാർട്ടീഷൻ ഉണ്ടാക്കും:

$ sudo fdisk /dev/sdb

ആവശ്യപ്പെടുമ്പോൾ, ഒരു പുതിയ പാർട്ടീഷൻ സൃഷ്ടിക്കാൻ n അമർത്തുക. തുടർന്ന് ഒരു പ്രാഥമിക പാർട്ടീഷന്റെ സൃഷ്ടി വ്യക്തമാക്കുന്നതിന് p അമർത്തുക, പാർട്ടീഷൻ നമ്പർ വ്യക്തമാക്കുന്നതിന് 1 അമർത്തുക. അടുത്ത രണ്ട് നിർദ്ദേശങ്ങൾക്കായി, ആദ്യത്തേയും അവസാനത്തേയും സെക്ടറുകൾ വ്യക്തമാക്കുന്നതിൽ സ്ഥിരസ്ഥിതികൾ സ്വീകരിക്കുന്നതിന് 'ENTER' അമർത്തുക.

എന്റെ നീക്കം ചെയ്യാവുന്ന ഡ്രൈവ് NTFS ഫയൽ സിസ്റ്റത്തിനൊപ്പം വരുന്നതിനാൽ, Y അമർത്തി ഞാനത് നീക്കം ചെയ്യും. വരുത്തിയ എല്ലാ മാറ്റങ്ങളും സംരക്ഷിക്കുന്നതിന്, പാർട്ടീഷനിൽ വരുത്തിയ എല്ലാ മാറ്റങ്ങളും ഇത് എഴുതുന്നതിനാൽ, w അമർത്തുക.

വരുത്തിയ മാറ്റങ്ങൾ സ്ഥിരീകരിക്കുന്നതിന്, ഒരിക്കൽ കൂടി, കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

$ sudo fdisk /dev/sdb

ആവശ്യപ്പെടുമ്പോൾ, പ്രിന്റിനായി p അമർത്തുക. ഇത് പാർട്ടീഷന്റെ വിവരങ്ങൾ പ്രിന്റ് ചെയ്യുന്നു. ഔട്ട്uപുട്ടിൽ നിന്ന്, ഫയൽസിസ്റ്റം തരമായി Linux ഉപയോഗിച്ച് ഒരു പുതിയ പാർട്ടീഷൻ /dev/sdb1 സൃഷ്uടിച്ചതായി നിങ്ങൾക്ക് കാണാൻ കഴിയും. നമുക്ക് അത് ext4 ഫയൽസിസ്റ്റം തരത്തിലേക്ക് ഫോർമാറ്റ് ചെയ്യേണ്ടതുണ്ട്, അത് അടുത്ത വിഭാഗത്തിൽ ചെയ്യും.

ഘട്ടം 3: Linux-ൽ ഒരു പുതിയ പാർട്ടീഷൻ ഫോർമാറ്റ് ചെയ്യുക

ext4 ഫയൽസിസ്റ്റം ഫോർമാറ്റ് ഉപയോഗിച്ച് /dev/sdb1 പാർട്ടീഷൻ ഫോർമാറ്റ് ചെയ്യുക എന്നതാണ് അടുത്ത ഘട്ടം. ഞങ്ങൾ ഫോർമാറ്റ് ചെയ്യുന്നത് /dev/sdb1 (പാർട്ടീഷൻ) അല്ലാതെ നീക്കം ചെയ്യാവുന്ന ഡ്രൈവായ /dev/sdb അല്ല.

$ sudo mkfs.ext4 /dev/sdb1

ഘട്ടം 4: ലിനക്സിൽ പുതിയ പാർട്ടീഷൻ മൌണ്ട് ചെയ്യുക

ഡ്രൈവ് സിസ്റ്റത്തിലേക്ക് ആക്സസ് ചെയ്യാൻ, ഞങ്ങൾ അത് സിസ്റ്റത്തിന്റെ ഫയൽസിസ്റ്റത്തിൽ മൌണ്ട് ചെയ്യേണ്ടതുണ്ട്. എന്നാൽ ആദ്യം, നമ്മൾ പാർട്ടീഷൻ മൌണ്ട് ചെയ്യുന്ന ഒരു മൌണ്ട് പോയിന്റ് ഉണ്ടാക്കും.

$ sudo mkdir -p /srv/home

അടുത്തതായി, ഞങ്ങൾ മൌണ്ട് പോയിന്റിൽ പാർട്ടീഷൻ ഇനിപ്പറയുന്ന രീതിയിൽ മൌണ്ട് ചെയ്യും. ഇത് ഫലത്തിൽ, സിസ്റ്റത്തിന് ഡ്രൈവ് ലഭ്യമാക്കുന്നു.

$ sudo mount /dev/sdb1 /srv/home

ഇത് സ്ഥിരീകരിക്കുന്നതിന്, കാണിച്ചിരിക്കുന്നതുപോലെ df കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

$ sudo df -Th

ഘട്ടം 5: ഹോം ഡയറക്ടറി ഫയലുകൾ പുതിയ പാർട്ടീഷനിലേക്ക് പകർത്തുക

ഹോം ഡയറക്uടറിയിലെ ഉള്ളടക്കങ്ങൾ ഇപ്പോൾ ഡ്രൈവിൽ സ്ഥിതി ചെയ്യുന്ന മൗണ്ട് പോയിന്റിലേക്ക് പകർത്തേണ്ടതുണ്ട്. അതിനാൽ, ഞങ്ങൾ കമാൻഡ് പ്രവർത്തിപ്പിക്കും:

$ sudo cp -aR /home/* /srv/home/

എല്ലാം പോയി എന്ന് സ്ഥിരീകരിക്കാൻ ഞങ്ങൾ ഹോം ഡയറക്ടറിയുടെ ഉള്ളടക്കം പരിശോധിക്കും.

$ ls -l /srv/home/tecmint

ഔട്ട്പുട്ടിൽ നിന്ന്, ഹോം ഡയറക്uടറിയിൽ പ്രതീക്ഷിക്കുന്ന എല്ലാ ഡിഫോൾട്ട് ഡയറക്uടറികളും ഉണ്ടെന്ന് നിങ്ങൾക്ക് വ്യക്തമായി കാണാൻ കഴിയും.

ഘട്ടം 6: ഒരു പുതിയ ഹോം ഡയറക്ടറിയും മൗണ്ട് ഡ്രൈവും സൃഷ്ടിക്കുക

നമ്മൾ ഇപ്പോൾ മറ്റൊരു ഹോം ഡയറക്uടറി ഉണ്ടാക്കേണ്ടതുണ്ട്, അതിൽ നമ്മുടെ ഹോം പാർട്ടീഷൻ മൌണ്ട് ചെയ്യും. ആശയക്കുഴപ്പം ഒഴിവാക്കാൻ, ഞങ്ങളുടെ നിലവിലെ ഹോം ഡയറക്uടറിയെ /home.bak എന്ന് പുനർനാമകരണം ചെയ്യും.

$ sudo mv /home /home.bak

അടുത്തതായി, ഞങ്ങൾ ഒരു പുതിയ ഹോം ഡയറക്ടറി സൃഷ്ടിക്കും.

$ sudo mkdir /home

തുടർന്ന് ഞങ്ങൾ /dev/sdb1 ഫയൽസിസ്റ്റം അൺമൗണ്ട് ചെയ്യുകയും പുതുതായി സൃഷ്ടിച്ച ഹോം ഡയറക്ടറിയിലേക്ക് മൗണ്ട് ചെയ്യുകയും ചെയ്യും

$ sudo umount /dev/sdb1
$ sudo mount /dev/sdb1 /home

/home ഡയറക്uടറിയിൽ ഡിഫോൾട്ട് ഡയറക്uടറികൾ അടങ്ങിയിട്ടുണ്ടെന്ന് സ്ഥിരീകരിക്കാൻ, ഞങ്ങൾ അതിലേക്ക് നാവിഗേറ്റ് ചെയ്യുകയും അതിലെ ഉള്ളടക്കങ്ങൾ ലിസ്റ്റുചെയ്യുകയും ചെയ്യും:

$ cd /home
$ ls -l tecmint

കൂടാതെ, താഴെ പറയുന്ന രീതിയിൽ df കമാൻഡ് ഉപയോഗിച്ച് ഞങ്ങളുടെ ഫയൽസിസ്റ്റം /home മൗണ്ട് പോയിന്റിൽ മൌണ്ട് ചെയ്തിട്ടുണ്ടോയെന്ന് നിങ്ങൾക്ക് പരിശോധിക്കാവുന്നതാണ്.

$ sudo df -Th /dev/sdb1

ഞങ്ങളുടെ ഡ്രൈവിലെ /dev/sdb1 ഫയൽസിസ്റ്റം /home പാർട്ടീഷനിൽ മൌണ്ട് ചെയ്തിട്ടുണ്ടെന്ന് ഔട്ട്പുട്ട് സ്ഥിരീകരിക്കുന്നു. എന്നിരുന്നാലും, ഇത് ഒരു റീബൂട്ടിനെ അതിജീവിക്കില്ല. ഇത് സ്ഥിരമാക്കുന്നതിന്, ഒരു അധിക ഘട്ടം ആവശ്യമാണ്, അതായത് ഫയൽസിസ്റ്റം വിവരങ്ങൾ ഉപയോഗിച്ച് /etc/fstab ഫയൽ പരിഷ്കരിക്കുക.

ഘട്ടം 7: ലിനക്സിൽ സ്ഥിരമായ പാർട്ടീഷൻ മൗണ്ട്

സിസ്റ്റം സ്റ്റാർട്ടപ്പിൽ ഓരോ തവണയും ഫയൽസിസ്റ്റം മൌണ്ട് ചെയ്യപ്പെടുന്നുവെന്ന് സ്വയമേവ ഉറപ്പാക്കാൻ, ഞങ്ങൾ /etc/fstab ഫയൽ പരിഷ്കരിക്കാൻ പോകുന്നു. എന്നാൽ ആദ്യം, നമുക്ക് ഫയൽസിസ്റ്റത്തിന്റെ UUID ഇനിപ്പറയുന്ന രീതിയിൽ നേടാം.

$ sudo blkid /dev/sdb1

അടുത്ത ഘട്ടത്തിൽ UUID ഒരു ടെക്സ്റ്റ് എഡിറ്ററിൽ എവിടെയെങ്കിലും പകർത്തി ഒട്ടിക്കുക.

അടുത്തതായി, /etc/fstab ഫയൽ തുറക്കുക.

$ sudo vim /etc/fstab 

കാണിച്ചിരിക്കുന്നതുപോലെ ഈ വരി ഫയലിലേക്ക് ചേർക്കുക. നിങ്ങൾ നേരത്തെ ടെക്സ്റ്റ് എഡിറ്ററിൽ പകർത്തി ഒട്ടിച്ച /dev/sdb1 ഫയൽസിസ്റ്റത്തിന്റെ യഥാർത്ഥ UUID ഉപയോഗിച്ച് സ്ക്വയർ ബ്രാക്കറ്റിലെ uid മാറ്റിസ്ഥാപിക്കുക.

UUID=[ uid ]     /home	   ext4	   defaults	0	2

മാറ്റങ്ങൾ സംരക്ഷിച്ച് ഫയൽ അടയ്ക്കുക. തുടർന്ന് എല്ലാ പാർട്ടീഷനുകളും മൌണ്ട് ചെയ്യുന്നതിന് താഴെ പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

$ sudo mount -a

ഇപ്പോൾ, സിസ്റ്റം സ്റ്റാർട്ടപ്പിൽ ഓരോ തവണയും നിങ്ങളുടെ ഡ്രൈവ് /home പാർട്ടീഷനിൽ മൗണ്ട് ചെയ്യപ്പെടും.

$ df  -h /dev/sdb1

ഈ എല്ലാ ഘട്ടങ്ങളിലൂടെയും കടന്നുപോകാതിരിക്കാൻ, സിസ്റ്റം ഫയലുകളിൽ നിന്ന് നിങ്ങളുടെ സ്വകാര്യ ഫയലുകൾ വേർതിരിക്കുന്നതിന്, ഇൻസ്റ്റാളേഷൻ സമയത്ത് ബാക്കിയുള്ള സിസ്റ്റം പാർട്ടീഷനുകളിൽ നിന്ന് ഒരു പ്രത്യേക ഹോം പാർട്ടീഷൻ ഉണ്ടായിരിക്കുന്നത് എല്ലായ്പ്പോഴും ഉപദേശിക്കപ്പെടുന്നു. എന്തെങ്കിലും തെറ്റ് സംഭവിച്ചാൽ നിങ്ങളുടെ ഡാറ്റ വീണ്ടെടുക്കുന്നത് ഇത് എളുപ്പമാക്കുന്നു.