കേർണൽ 3.12 റിലീസ് ചെയ്തു - ഡെബിയൻ ലിനക്സിൽ ഇൻസ്റ്റാൾ ചെയ്ത് കംപൈൽ ചെയ്യുക


ലിനക്സ് ഉപയോഗിക്കുന്നതിനുള്ള ഏറ്റവും വലിയ ആകർഷണങ്ങളിലൊന്ന് അതിന്റെ എളുപ്പത്തിലുള്ള ഇഷ്uടാനുസൃതമാക്കലാണ്, മാത്രമല്ല ഇഷ്uടാനുസൃതമാക്കാനുള്ള ഏറ്റവും രസകരമായ കാര്യങ്ങളിലൊന്ന് ലിനക്uസ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിന്റെ ഹൃദയമായ കേർണലാണ്. നിങ്ങളുടെ സ്വന്തം കേർണൽ കംപൈൽ ചെയ്യേണ്ടി വരില്ല. നിങ്ങളുടെ പാക്കേജ് മാനേജുമെന്റ് സിസ്റ്റം വഴി നിങ്ങളുടെ വിതരണവും അപ്uഡേറ്റുകളും അയയ്uക്കുന്ന ഒന്ന് സാധാരണയായി മതിയാകും, എന്നാൽ ചില സമയങ്ങളിൽ കേർണൽ വീണ്ടും കംപൈൽ ചെയ്യേണ്ടി വന്നേക്കാം.

ഈ കാരണങ്ങളിൽ ചിലത് പ്രത്യേക ഹാർഡ്uവെയർ ആവശ്യകതകളായിരിക്കാം, മോഡുലറൈസ് ചെയ്തതിന് പകരം ഒരു മോണോലിത്തിക്ക് കേർണൽ സൃഷ്ടിക്കാനുള്ള ആഗ്രഹം, ഉപയോഗശൂന്യമായ ഡ്രൈവറുകൾ നീക്കം ചെയ്തുകൊണ്ട് കേർണൽ ഒപ്റ്റിമൈസ് ചെയ്യുക, ഒരു ഡെവലപ്uമെന്റ് കേർണൽ പ്രവർത്തിപ്പിക്കുക, അല്ലെങ്കിൽ ലിനക്uസിനെ കുറിച്ച് കൂടുതലറിയുക. ഈ സാഹചര്യത്തിൽ, ഞങ്ങൾ ഡെബിയൻ വീസിയിൽ പുതുതായി പുറത്തിറക്കിയ കേർണൽ 3.12 കംപൈൽ ചെയ്യാൻ പോകുന്നു. പുതുതായി പുറത്തിറക്കിയ കേർണൽ 3.12 ന് നിരവധി പുതിയ സവിശേഷതകൾ ഉണ്ട്, എൻവിഡിയ ഒപ്റ്റിമസിനായി ചില പുതിയ ഡ്രൈവറുകൾ, റേഡിയൻ കേർണൽ ഗ്രാഫിക്സ് ഡ്രൈവർ എന്നിവ ഉൾപ്പെടുന്നു. ഇത് EXT4 ഫയൽ സിസ്റ്റത്തിന് വലിയ മെച്ചപ്പെടുത്തലുകളും XFS, Btrfs എന്നിവയിലേക്കുള്ള ചില അപ്uഡേറ്റുകളും വാഗ്ദാനം ചെയ്യുന്നു.

ഡെബിയനിൽ കേർണൽ 3.12 എങ്ങനെ കംപൈൽ ചെയ്ത് ഇൻസ്റ്റാൾ ചെയ്യാം

ആരംഭിക്കുന്നതിന്, ഞങ്ങൾക്ക് ചില പാക്കേജുകൾ ആവശ്യമാണ്, അതായത് fakeroot, kernel-package:

# apt-get install fakeroot kernel-package

ഇപ്പോൾ, www.kernel.org-ൽ നിന്ന് ഏറ്റവും പുതിയ ഉറവിട ടാർബോൾ എടുക്കാം അല്ലെങ്കിൽ അത് ഡൗൺലോഡ് ചെയ്യാൻ നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന wget കമാൻഡ് ഉപയോഗിക്കാം.

# wget -c https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.12.tar.xz

ഇപ്പോൾ, നമുക്ക് ആർക്കൈവ് അൺപാക്ക് ചെയ്യാം.

# tar -xvJf linux-3.12.tar.xz

എക്uസ്uട്രാക്uറ്റ് ചെയ്uത ശേഷം, ഒരു പുതിയ കേർണൽ സോഴ്uസ് ഡയറക്uടറി സൃഷ്uടിക്കും.

# cd linux-3.12

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

# cp /boot/config-`uname –r`.config

യഥാർത്ഥ കോൺഫിഗറേഷൻ ആരംഭിക്കുന്നതിന്, നിങ്ങൾക്ക് രണ്ട് ഓപ്ഷനുകളിലൊന്ന് ഉണ്ട്. നിങ്ങൾ X11 ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടെങ്കിൽ, നിങ്ങൾക്ക് make xconfig പ്രവർത്തിപ്പിക്കാൻ കഴിയും, കൂടാതെ നിങ്ങളുടെ കേർണൽ കോൺഫിഗർ ചെയ്യുമ്പോൾ നിങ്ങളെ സഹായിക്കാൻ ഒരു നല്ല GUI മെനു ഉണ്ടായിരിക്കും. നിങ്ങൾ ഒരു CLI പരിതസ്ഥിതിയിലാണ് പ്രവർത്തിക്കുന്നതെങ്കിൽ, നിങ്ങൾക്ക് make menuconfig പ്രവർത്തിപ്പിക്കാൻ കഴിയും. menuconfig ഉപയോഗിക്കുന്നതിന് നിങ്ങൾക്ക് libncurses5-dev പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യേണ്ടതുണ്ട്:

# apt-get install libncurses5-dev
# make menuconfig

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, നിങ്ങൾ തിരഞ്ഞെടുത്ത കോൺഫിഗറേഷനിൽ ഒരിക്കൽ, നിങ്ങളുടെ കേർണലിനായി നിരവധി വ്യത്യസ്ത ഓപ്ഷനുകൾ ലഭ്യമാണ്. വാസ്തവത്തിൽ, ഈ ട്യൂട്ടോറിയലിന്റെ വ്യാപ്തിയിൽ വളരെയധികം ഉണ്ട്. കേർണൽ ഓപ്uഷനുകൾ തിരഞ്ഞെടുക്കുമ്പോൾ, ഏറ്റവും മികച്ച മാർഗം ട്രയലും പിശകുമാണ്, കൂടാതെ ധാരാളം ഗൂഗിൾ ചെയ്യുകയുമാണ്. പഠിക്കാനുള്ള ഏറ്റവും നല്ല മാർഗമാണിത്. നിങ്ങളുടെ കേർണൽ ഏറ്റവും പുതിയ പതിപ്പിലേക്ക് അപ്uഡേറ്റ് ചെയ്യാനാണ് നിങ്ങൾ ശ്രമിക്കുന്നതെങ്കിൽ, നിങ്ങൾക്ക് ഒന്നും മാറ്റേണ്ടതില്ല കൂടാതെ \കോൺഫിഗറേഷൻ സംരക്ഷിക്കുക തിരഞ്ഞെടുക്കാം. ഞങ്ങൾ നിലവിലെ കേർണലിന്റെ കോൺഫിഗറേഷൻ ഫയൽ പുതിയ കേർണലിന്റെ .config ഫയലിലേക്ക് പകർത്തിയതിനാൽ.

\ലോഡബിൾ മൊഡ്യൂൾ സപ്പോർട്ടിൽ \കേർണൽ മൊഡ്യൂൾ ലോഡർ തിരഞ്ഞെടുത്തിരിക്കുന്നു എന്നത് ശ്രദ്ധിക്കുക. അങ്ങനെയല്ലെങ്കിൽ, നിങ്ങൾ കേർണൽ മൊഡ്യൂളുകൾ ഉപയോഗിക്കുകയാണെങ്കിൽ, അത് കാര്യങ്ങളെ ഗുരുതരമായി കുഴപ്പത്തിലാക്കാം.

അത് നേരായാൽ, ഉറവിട വൃക്ഷം വൃത്തിയാക്കാൻ സമയമായി.

# make-kpkg clean

അവസാനമായി, കേർണൽ പാക്കേജ് നിർമ്മിക്കാനുള്ള സമയമാണിത്.

# export CONCURRENCY_LEVEL=3
# fakeroot make-kpkg --append-to-version "-customkernel" --revision "1" --initrd kernel_image kernel_headers

നിങ്ങൾ മുകളിൽ കാണുന്നത് പോലെ, ഞങ്ങൾ CONCURRENCY_LEVEL എന്ന ഒരു വേരിയബിൾ എക്uസ്uപോർട്ട് ചെയ്uതു. നിങ്ങളുടെ കമ്പ്യൂട്ടറിൽ + 1 ഉള്ള കോറുകളുടെ എണ്ണമായി ഇത് സജ്ജീകരിക്കുക എന്നതാണ് ഈ വേരിയബിളിന്റെ പൊതുവായ ഒരു നിയമം. അതിനാൽ, നിങ്ങൾ ഒരു ക്വാഡ് കോർ ഉപയോഗിക്കുകയാണെങ്കിൽ, നിങ്ങൾ:

# export CONCURRENCY_LEVEL=5

ഇത് നിങ്ങളുടെ സമാഹാര സമയം വളരെ വേഗത്തിലാക്കും. ബാക്കിയുള്ള കംപൈലേഷൻ കമാൻഡ് വളരെ സ്വയം വിശദീകരിക്കുന്നതാണ്. fakeroot ഉപയോഗിച്ച്, ഞങ്ങൾ കേർണൽ പാക്കേജുകൾ (make-kpkg) ഉണ്ടാക്കുന്നു, ഞങ്ങളുടെ കേർണലിന് (\കസ്റ്റംകേർണൽ) പേരിടാൻ ഒരു സ്ട്രിംഗ് കൂട്ടിച്ചേർക്കുന്നു, അതിന് ഒരു പുനരവലോകന നമ്പർ (\1) നൽകുന്നു, കൂടാതെ ഞങ്ങൾ നിർമ്മിക്കാൻ-kpkg-യോട് പറയുന്നു. ഇമേജ് പാക്കേജും ഹെഡർ പാക്കേജും. കംപൈലേഷൻ പൂർത്തിയായിക്കഴിഞ്ഞാൽ, നിങ്ങളുടെ മെഷീൻ, നിങ്ങൾ കംപൈൽ ചെയ്യുന്ന മൊഡ്യൂളുകളുടെ എണ്ണം എന്നിവയെ ആശ്രയിച്ച്, ഇതിന് വളരെയധികം സമയമെടുക്കും, ലിനക്സ് സോഴ്uസ് ഡയറക്uടറിയിൽ നിന്ന് ഒന്നിലേക്ക് ഡയറക്uടറികൾ മാറ്റുക, നിങ്ങൾ രണ്ട് പുതിയ *.deb ഫയലുകൾ കാണും – ഒരു ലിനക്സ്-ഇമേജ് ഫയലും ഒരു ലിനക്സ്-ഹെഡേഴ്സ് ഫയലും:

dpkg കമാൻഡ് ഉപയോഗിച്ച് ഏത് *.deb ഫയലും ഇൻസ്റ്റാൾ ചെയ്യുന്നതുപോലെ നിങ്ങൾക്ക് ഇപ്പോൾ ഈ ഫയൽ ഇൻസ്റ്റാൾ ചെയ്യാൻ കഴിയും.

# dpkg -i linux-image-3.12.0-customkernel_1_i386.deb linux-headers-3.12.0-customkernel_1_i386.deb

പുതിയ കേർണൽ, ഇതൊരു ഡെബിയൻ പാക്കേജായതിനാൽ, ബൂട്ട്ലോഡർ ഉൾപ്പെടെ നിങ്ങൾക്ക് ആവശ്യമുള്ളതെല്ലാം അപ്ഡേറ്റ് ചെയ്യും. ഇൻസ്റ്റാൾ ചെയ്തുകഴിഞ്ഞാൽ, നിങ്ങൾ റീബൂട്ട് ചെയ്യുക, നിങ്ങളുടെ GRUB/LiLO മെനുവിൽ നിന്ന് പുതിയ കേർണൽ തിരഞ്ഞെടുക്കുക.

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

# sudo apt-get remove linux-image-(non-working-kernel)