Kernel 3.12 Meħlus - Installa u Ikkumpila f'Debian Linux


Waħda mill-akbar attrazzjonijiet għall-użu tal-Linux hija l-adattament faċli tiegħu u waħda mill-aktar affarijiet divertenti biex tippersonalizza hija l-Kernel innifsu, il-qalba tas-Sistema Operattiva tal-Linux. Ċansijiet huma li x'aktarx qatt ma jkollok tikkompila l-qalba tiegħek. Dak li jintbagħat bid-distribuzzjoni u l-aġġornamenti tiegħek permezz tas-sistema ta 'ġestjoni tal-pakketti tiegħek normalment ikun tajjeb biżżejjed, iżda hemm drabi meta jista' jkun meħtieġ li terġa 'tikkompila l-kernel.

Xi wħud minn dawn ir-raġunijiet jistgħu jkunu ħtiġijiet speċjali ta 'hardware, ix-xewqa li jinħoloq qalba monolitika minflok waħda modularizzata, ottimizzat il-qalba billi jitneħħew sewwieqa inutli, tħaddim ta' għadma ta 'żvilupp, jew sempliċiment biex titgħallem aktar dwar Linux. F'dan il-każ, se niġbru Kernel 3.12 li għadu kif ħareġ, fuq Debian Wheezy. Il-Kernel 3.12 li għadu kif ħareġ għandu diversi karatteristiċi ġodda, inklużi xi sewwieqa ġodda għall-NVIDIA Optimus, u s-Radeon Kernel Graphics Driver. Joffri wkoll titjib enormi għas-sistema tal-fajls EXT4, u xi aġġornamenti għal XFS u Btrfs.

Kif Tiġbor u Tinstalla Kernel 3.12 f'Debian

Biex nibdew, ser ikollna bżonn xi pakketti, jiġifieri fakeroot u kernel-package:

# apt-get install fakeroot kernel-package

Issa, ejja aqbad l-aħħar sors tarball minn www.kernel.org jew tista' tuża l-kmand wget li ġej biex tniżżlu.

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

Issa, ejja nispakkjaw l-arkivju.

# tar -xvJf linux-3.12.tar.xz

Wara, l-estrazzjoni, se jinħoloq direttorju tas-sors tal-kernel ġdid.

# cd linux-3.12

Issa, irridu nikkonfiguraw il-qalba. L-aħjar huwa li tibda b'konfigurazzjoni li qed tuża bħalissa u taħdem minn hemm. Biex tagħmel dan, aħna se nikkopja l-konfigurazzjoni attwali mid-direttorju/boot għad-direttorju tax-xogħol attwali u nissejvjaha bħala .config.

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

Biex tibda bil-konfigurazzjoni attwali, għandek waħda minn żewġ għażliet. Jekk għandek X11 installat, tista 'taħdem make xconfig, u jkollok menu GUI sabiħ biex jgħinek kif tikkonfigura l-kernel tiegħek. Jekk qed taħdem f'ambjent CLI, tista 'taħdem make menuconfig. Ikollok bżonn il-pakkett libncurses5-dev installat biex tuża menuconfig:

# apt-get install libncurses5-dev
# make menuconfig

Kif se tara, ladarba tkun fil-konfigurazzjoni tal-għażla tiegħek, li hemm ton ta 'għażliet differenti disponibbli għall-kernel tiegħek. Fil-fatt, hemm wisq wisq għall-ambitu ta 'dan it-tutorja. Meta tagħżel l-għażliet Kernel, l-aħjar mod huwa bi prova u żball, u tagħmel ħafna Google. Huwa l-aħjar mod biex titgħallem. Jekk sempliċement qed tipprova taġġorna l-kernel tiegħek għall-verżjoni l-aktar reċenti, m'għandekx għalfejn tbiddel xejn u tista 'sempliċement tagħżel \Save Configuration. Peress li kkuppjajna l-fajl tal-konfigurazzjoni tal-kernel attwali għall-fajl .config tal-kernel il-ġdid.

Kun konxju li \Loader tal-modulu tal-kernel huwa magħżul f'\Appoġġ tal-modulu li jista' jitgħabba. Jekk le, u qed tuża moduli tal-qalba, tista 'tħawwad l-affarijiet serjament.

Ladarba dik tkun dritta, wasal iż-żmien li tnaddaf is-siġra tas-sors.

# make-kpkg clean

Fl-aħħarnett, wasal iż-żmien li tibni l-pakkett tal-kernel.

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

Kif se tara hawn fuq, esportajna varjabbli msejħa CONCURRENCY_LEVEL. Regola ġenerali b'din il-varjabbli hija li tissettjaha bħala n-numru ta' cores li għandu l-kompjuter tiegħek + 1. Allura, jekk qed tuża quad core, inti:

# export CONCURRENCY_LEVEL=5

Dan se jħaffef ħafna l-ħin tal-kumpilazzjoni tiegħek. Il-bqija tal-kmand tal-kumpilazzjoni huwa pjuttost jispjega lilu nnifsu. Bil-fakeroot, qed nagħmlu pakketti tal-qalba (make-kpkg), inehmu string biex insemmu l-qalba tagħna (customkernel), nagħtuha numru ta' reviżjoni (\1) u qed ngħidu lil make-kpkg biex jibni kemm pakkett immaġni u pakkett header. Ladarba l-kumpilazzjoni tkun lesta, u skond il-magna tiegħek, u n-numru ta 'moduli li tkun qed tikkompila, jista' jieħu żmien pjuttost twil, ibiddel id-direttorji għal wieħed lura mid-direttorju tas-sors tal-Linux, u għandek tara żewġ fajls *.deb ġodda - fajl wieħed tal-immaġni tal-Linux u fajl tal-Linux-headers wieħed:

Issa tista' tinstalla dawn il-fajls bħal ma tinstalla kwalunkwe fajl *.deb b'kmand dpkg.

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

Il-kernel il-ġdid, peress li huwa pakkett Debian, se jaġġorna dak kollu li għandek bżonn, inkluż il-bootloader. Ladarba tkun installata, sempliċement terġa 'tibda, u tagħżel il-qalba l-ġdida mill-menu GRUB/LiLO tiegħek.

Kun żgur li tagħti attenzjoni mill-qrib għal kwalunkwe messaġġ ta 'żball matul il-proċess tal-ibbutjar sabiex tkun tista' ssolvi kwalunkwe kwistjoni. Jekk, għal kwalunkwe raġuni, is-sistema tiegħek ma tibbotx, tista' dejjem terġa' lura għall-aħħar Kernel li jaħdem u erġa' pprova. Il-kernel mhux funzjonali jista 'dejjem jitneħħa bi kmand apt.

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