Linux ബൂട്ട് പ്രക്രിയയുടെ വിവിധ ഘട്ടങ്ങളിലേക്കുള്ള ഒരു അടിസ്ഥാന ഗൈഡ്


നിങ്ങളുടെ ലിനക്സ് പിസിയിൽ നിങ്ങൾ പവർ ചെയ്യുമ്പോഴെല്ലാം, നിങ്ങളുടെ ഉപയോക്തൃനാമമോ പാസ്uവേഡോ ആവശ്യപ്പെടുന്ന ഒരു ലോഗിൻ സ്uക്രീൻ പ്രദർശിപ്പിക്കുന്നതിന് മുമ്പ് അത് നിരവധി ഘട്ടങ്ങളിലൂടെ കടന്നുപോകുന്നു. ഒരു സാധാരണ ബൂട്ട്-അപ്പ് പ്രക്രിയയിൽ ഓരോ ലിനക്സ് വിതരണവും കടന്നുപോകുന്ന 4 വ്യത്യസ്ത ഘട്ടങ്ങളുണ്ട്.

ഈ ഗൈഡിൽ, Linux OS പവർ ചെയ്uത സമയം മുതൽ നിങ്ങൾ ലോഗിൻ ചെയ്യുന്ന സമയം വരെ എടുത്ത വിവിധ ഘട്ടങ്ങൾ ഞങ്ങൾ ഹൈലൈറ്റ് ചെയ്യും. GRUB2 ബൂട്ട്uലോഡറും systemd init ഉം നിലവിൽ ഉപയോഗത്തിലിരിക്കുന്നതിനാൽ ഈ ഗൈഡ് മാത്രമേ പരിഗണിക്കൂ എന്ന് ദയവായി ശ്രദ്ധിക്കുക. ആധുനിക ലിനക്സ് വിതരണങ്ങളിൽ ഭൂരിഭാഗവും.

ബൂട്ടിംഗ് പ്രക്രിയ ഇനിപ്പറയുന്ന 4 ഘട്ടങ്ങൾ എടുക്കുന്നു, അത് ഞങ്ങൾ കൂടുതൽ വിശദമായി ചർച്ച ചെയ്യും:

  • BIOS ഇന്റഗ്രിറ്റി ചെക്ക് (POST)
  • ബൂട്ട് ലോഡറിന്റെ ലോഡിംഗ് (GRUB2)
  • കേർണൽ സമാരംഭം
  • എല്ലാ പ്രക്രിയകളുടെയും രക്ഷിതാവായ systemd ആരംഭിക്കുന്നു

1. ബയോസ് ഇന്റഗ്രിറ്റി ചെക്ക് (POST)

ഒരു ഉപയോക്താവ് പവർ-ഓൺ ബട്ടൺ അമർത്തുമ്പോൾ - പിസി ഇതിനകം ഷട്ട്ഡൗൺ ചെയ്തിട്ടുണ്ടെങ്കിൽ - അല്ലെങ്കിൽ GUI അല്ലെങ്കിൽ കമാൻഡ് ലൈനിൽ സിസ്റ്റം റീബൂട്ട് ചെയ്യുമ്പോൾ സാധാരണയായി ബൂട്ട് പ്രക്രിയ ആരംഭിക്കുന്നു.

ലിനക്സ് സിസ്റ്റം പവർ അപ്പ് ചെയ്യുമ്പോൾ, ബയോസ് (ബേസിക് ഇൻപുട്ട് ഔട്ട്പുട്ട് സിസ്റ്റം) കിക്ക് ഇൻ ചെയ്ത് പവർ ഓൺ സെൽഫ് ടെസ്റ്റ് (POST) നടത്തുന്നു. ഇത് ഒരു സമഗ്രത പരിശോധനയാണ്, അത് ധാരാളം ഡയഗ്നോസ്റ്റിക് പരിശോധനകൾ നടത്തുന്നു.

HDD അല്ലെങ്കിൽ SSD, കീബോർഡ്, റാം, USB പോർട്ടുകൾ, മറ്റേതെങ്കിലും ഹാർഡ്uവെയർ തുടങ്ങിയ ഘടകങ്ങളുടെ ഹാർഡ്uവെയർ പ്രവർത്തനക്ഷമത POST പരിശോധിക്കുന്നു. ചില ഹാർഡ്uവെയർ ഉപകരണം കണ്ടെത്തിയില്ലെങ്കിലോ, കേടായ HDD അല്ലെങ്കിൽ SSD പോലെയുള്ള ഏതെങ്കിലും ഉപകരണങ്ങളിൽ ഒരു തകരാറുണ്ടെങ്കിൽ, നിങ്ങളുടെ ഇടപെടലിനെ പ്രേരിപ്പിക്കുന്ന ഒരു പിശക് സന്ദേശം സ്ക്രീനിൽ തെറിക്കുന്നു.

ചില സന്ദർഭങ്ങളിൽ, പ്രത്യേകിച്ച് റാം മൊഡ്യൂൾ നഷ്uടപ്പെട്ടാൽ ഒരു ബീപ്പ് ശബ്ദം പുറപ്പെടും. എന്നിരുന്നാലും, പ്രതീക്ഷിക്കുന്ന ഹാർഡ്uവെയർ നിലവിൽ വരികയും പ്രതീക്ഷിച്ചതുപോലെ പ്രവർത്തിക്കുകയും ചെയ്യുന്നുവെങ്കിൽ, ബൂട്ടിംഗ് പ്രക്രിയ അടുത്ത ഘട്ടത്തിലേക്ക് പോകുന്നു.

2. ബൂട്ട്ലോഡർ (GRUB2)

POST പൂർത്തിയാകുകയും തീരം വ്യക്തമാവുകയും ചെയ്uതാൽ, ബൂട്ട്uലോഡറിനും ഡിസ്uക് പാർട്ടീഷനിംഗ് വിവരങ്ങൾക്കുമായി BIOS MBR (മാസ്റ്റർ ബൂട്ട് റെക്കോർഡ്) പരിശോധിക്കുന്നു.

നിങ്ങളുടെ ഹാർഡ് ഡ്രൈവിനെ ആശ്രയിച്ച് സാധാരണയായി /dev/sda അല്ലെങ്കിൽ /dev/hda ആയ ഹാർഡ് ഡ്രൈവിന്റെ ആദ്യ സെക്ടറിൽ സ്ഥിതി ചെയ്യുന്ന 512-ബൈറ്റ് കോഡാണ് MBR. വാസ്തുവിദ്യ. എന്നിരുന്നാലും, ചിലപ്പോൾ MBR, Linux-ന്റെ ഒരു ലൈവ് USB അല്ലെങ്കിൽ DVD ഇൻസ്റ്റലേഷനിൽ സ്ഥിതിചെയ്യാം.

ലിനക്സിൽ 3 പ്രധാന തരം ബൂട്ട്ലോഡറുകൾ ഉണ്ട്: LILO, GRUB, GRUB2. ആധുനിക ലിനക്സ് വിതരണങ്ങളിലെ ഏറ്റവും പുതിയതും പ്രാഥമികവുമായ ബൂട്ട്ലോഡറാണ് GRUB2 ബൂട്ട്ലോഡർ, കാലക്രമേണ കാലഹരണപ്പെട്ട മറ്റ് രണ്ടെണ്ണം ഉപേക്ഷിക്കാനുള്ള ഞങ്ങളുടെ തീരുമാനം അറിയിക്കുന്നു.

GRUB2 എന്നാൽ GRand Unified Bootloader വേർഷൻ 2 ആണ്. BIOS ഒരിക്കൽ grub2 ബൂട്ട്ലോഡർ കണ്ടെത്തി, അത് എക്സിക്യൂട്ട് ചെയ്യുകയും മെയിൻ മെമ്മറിയിലേക്ക് (RAM) ലോഡ് ചെയ്യുകയും ചെയ്യുന്നു.

grub2 മെനു രണ്ട് കാര്യങ്ങൾ ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു. നിങ്ങൾ ഉപയോഗിക്കാൻ ആഗ്രഹിക്കുന്ന Linux കേർണൽ പതിപ്പ് തിരഞ്ഞെടുക്കാൻ ഇത് നിങ്ങളെ അനുവദിക്കുന്നു. നിങ്ങൾ രണ്ട് തവണ നിങ്ങളുടെ സിസ്റ്റം അപ്uഗ്രേഡ് ചെയ്യുന്നുണ്ടെങ്കിൽ, വ്യത്യസ്ത കേർണൽ പതിപ്പുകൾ ലിസ്റ്റ് ചെയ്തിരിക്കുന്നത് നിങ്ങൾ കണ്ടേക്കാം. കൂടാതെ, കീബോർഡ് കീകളുടെ സംയോജനം അമർത്തി ചില കേർണൽ പാരാമീറ്ററുകൾ എഡിറ്റുചെയ്യാനുള്ള കഴിവ് ഇത് നൽകുന്നു.

കൂടാതെ, നിങ്ങൾക്ക് ഒന്നിലധികം OS ഇൻസ്റ്റാളേഷനുകൾ ഉള്ള ഒരു ഡ്യുവൽ-ബൂട്ട് സജ്ജീകരണത്തിൽ, ഏത് OS-ലേക്ക് ബൂട്ട് ചെയ്യണമെന്ന് തിരഞ്ഞെടുക്കാൻ grub മെനു നിങ്ങളെ അനുവദിക്കുന്നു. grub2 കോൺഫിഗറേഷൻ ഫയൽ /boot/grub2/grub2.cfg ഫയൽ ആണ്. പ്രധാന മെമ്മറിയിലേക്ക് ലിനക്സ് കേർണൽ ലോഡ് ചെയ്യുക എന്നതാണ് GRUB-ന്റെ പ്രധാന ലക്ഷ്യം.

3. കേർണൽ ഇനിഷ്യലൈസേഷൻ

ഏതൊരു ലിനക്സ് സിസ്റ്റത്തിന്റെയും കാതലാണ് കേർണൽ. ഇത് പിസിയുടെ ഹാർഡ്uവെയറിനെ അടിസ്ഥാന പ്രക്രിയകളുമായി ഇന്റർഫേസ് ചെയ്യുന്നു. നിങ്ങളുടെ Linux സിസ്റ്റത്തിലെ എല്ലാ പ്രക്രിയകളും കേർണൽ നിയന്ത്രിക്കുന്നു. തിരഞ്ഞെടുത്ത ലിനക്സ് കേർണൽ ബൂട്ട്ലോഡർ ലോഡ് ചെയ്തുകഴിഞ്ഞാൽ, ഏതെങ്കിലും ടാസ്ക്ക് ഏറ്റെടുക്കുന്നതിന് മുമ്പ് അത് അതിന്റെ കംപ്രസ് ചെയ്ത പതിപ്പിൽ നിന്ന് സ്വയം എക്സ്ട്രാക്റ്റ് ചെയ്യണം. സ്വയം-എക്uസ്uട്രാക്റ്റുചെയ്യുമ്പോൾ, തിരഞ്ഞെടുത്ത കേർണൽ റൂട്ട് ഫയൽ സിസ്റ്റം മൌണ്ട് ചെയ്യുകയും സാധാരണയായി init എന്ന് വിളിക്കപ്പെടുന്ന /sbin/init പ്രോഗ്രാം ആരംഭിക്കുകയും ചെയ്യുന്നു.

Init എല്ലായ്uപ്പോഴും എക്uസിക്യൂട്ട് ചെയ്യപ്പെടുന്ന ആദ്യത്തെ പ്രോഗ്രാമാണ്, കൂടാതെ 1-ന്റെ പ്രോസസ്സ് ഐഡി അല്ലെങ്കിൽ PID അസൈൻ ചെയ്യപ്പെടുന്നു. ഇത് വിവിധ ഡെമണുകൾ സൃഷ്ടിക്കുകയും /etc/fstab ഫയലിൽ വ്യക്തമാക്കിയിട്ടുള്ള എല്ലാ പാർട്ടീഷനുകളും മൌണ്ട് ചെയ്യുകയും ചെയ്യുന്ന init പ്രക്രിയയാണ്.

യഥാർത്ഥ റൂട്ട് ഫയൽസിസ്റ്റം മൌണ്ട് ചെയ്യുന്നതുവരെ കേർണൽ ഒരു താൽക്കാലിക റൂട്ട് ഫയൽസിസ്റ്റമായ പ്രാരംഭ റാം ഡിസ്ക് (initrd) മൌണ്ട് ചെയ്യുന്നു. എല്ലാ കേർണലുകളും /boot ഡയറക്uടറിയിൽ പ്രാരംഭ റാം ഡിസ്ക് ഇമേജിനൊപ്പം സ്ഥിതി ചെയ്യുന്നു.

4. Systemd ആരംഭിക്കുന്നു

കേർണൽ അവസാനം Systemd ലോഡ് ചെയ്യുന്നു, ഇത് പഴയ SysV init-ന് പകരമാണ്. എല്ലാ ലിനക്സ് പ്രോസസുകളുടെയും മാതാവാണ് Systemd, കൂടാതെ ഫയൽ സിസ്റ്റങ്ങളുടെ മൗണ്ടിംഗ്, സേവനങ്ങൾ ആരംഭിക്കുന്നതും നിർത്തുന്നതും മറ്റുള്ളവ കൈകാര്യം ചെയ്യുന്നു.

ലിനക്സ് സിസ്റ്റം ബൂട്ട് ചെയ്യേണ്ട അവസ്ഥയോ ലക്ഷ്യമോ നിർണ്ണയിക്കാൻ Systemd /etc/systemd/system/default.target ഫയൽ ഉപയോഗിക്കുന്നു.

  • ഒരു ഡെസ്uക്uടോപ്പ് വർക്ക്uസ്റ്റേഷനായി (ജിയുഐ ഉള്ളത്) ഡിഫോൾട്ട് ടാർഗെറ്റ് മൂല്യം 5 ആണ്, ഇത് പഴയ SystemV init-ന്റെ റൺ ലെവൽ 5-ന് തുല്യമാണ്.
  • ഒരു സെർവറിന്, SysV init ലെ റൺ ലെവൽ 3-ന് അനുയോജ്യമായ multi-user.target ആണ് സ്ഥിരസ്ഥിതി ലക്ഷ്യം.

systemd ലക്ഷ്യങ്ങളുടെ ഒരു തകർച്ച ഇതാ:

  • poweroff.target (റൺലെവൽ 0): പവർഓഫ് അല്ലെങ്കിൽ സിസ്റ്റം ഷട്ട്ഡൗൺ ചെയ്യുക.
  • rescue.target (റൺലെവൽ 1): ഒരു റെസ്ക്യൂ ഷെൽ സെഷൻ സമാരംഭിക്കുന്നു.
  • multi-user.target (റൺലെവൽ 2,3,4): ഒരു ഗ്രാഫിക്കൽ അല്ലാത്ത (കൺസോൾ) മൾട്ടി-യൂസർ സിസ്റ്റത്തിലേക്ക് സിസ്റ്റത്തെ കോൺഫിഗർ ചെയ്യുന്നു.
  • graphical.target (runlevel 5): നെറ്റ്uവർക്ക് സേവനങ്ങൾക്കൊപ്പം ഒരു ഗ്രാഫിക്കൽ മൾട്ടി-യൂസർ ഇന്റർഫേസ് ഉപയോഗിക്കുന്നതിന് സിസ്റ്റം സജ്ജമാക്കുക.
  • reboot.target (runlevel 6): സിസ്റ്റം റീബൂട്ട് ചെയ്യുന്നു.

നിങ്ങളുടെ സിസ്റ്റത്തിലെ നിലവിലെ ലക്ഷ്യം പരിശോധിക്കുന്നതിന്, കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

$ systemctl get-default

ടെർമിനലിൽ ഇനിപ്പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിച്ച് നിങ്ങൾക്ക് ഒരു ലക്ഷ്യത്തിൽ നിന്ന് മറ്റൊന്നിലേക്ക് മാറാം:

$ init runlevel-value

ഉദാഹരണത്തിന്, init 3 ഒരു ഗ്രാഫിക്കൽ അല്ലാത്ത അവസ്ഥയിലേക്ക് സിസ്റ്റത്തെ ക്രമീകരിക്കുന്നു.

init 6 കമാൻഡ് നിങ്ങളുടെ സിസ്റ്റം റീബൂട്ട് ചെയ്യുകയും init 0 സിസ്റ്റം ഓഫ് ചെയ്യുകയും ചെയ്യുന്നു. ഈ രണ്ട് ടാർഗെറ്റുകളിലേക്ക് മാറാൻ നിങ്ങൾ ആഗ്രഹിക്കുമ്പോൾ സുഡോ കമാൻഡ് അഭ്യർത്ഥിക്കുന്നത് ഉറപ്പാക്കുക.

systemd എല്ലാ ഡെമണുകളും ലോഡ് ചെയ്ത് ടാർഗെറ്റ് അല്ലെങ്കിൽ റൺ ലെവൽ മൂല്യം സജ്ജമാക്കിയാൽ ബൂട്ടിംഗ് പ്രക്രിയ അവസാനിക്കുന്നു. ഈ ഘട്ടത്തിലാണ് നിങ്ങളുടെ ലിനക്സ് സിസ്റ്റത്തിലേക്ക് പ്രവേശനം നേടുന്ന ഉപയോക്തൃനാമവും പാസ്uവേഡും ആവശ്യപ്പെടുന്നത്.