Kernel 3.16 ewepụtara - chịkọta ma wụnye na Debian GNU/Linux


Kernel bụ isi nke sistemụ arụmọrụ ọ bụla. Ọrụ bụ isi nke kernel bụ ime dị ka onye ogbugbo n'etiti Ngwa - CPU, Ngwa - Ebe nchekwa na Ngwa - Ngwaọrụ (I/O). Ọ na-arụ ọrụ dị ka onye njikwa ebe nchekwa, njikwa ngwaọrụ ma na-aga oku sistemụ na-abụghị ịrụ ọrụ ndị ọzọ.

Maka Linux, kernel bụ obi ya. A tọhapụrụ Linux Kernel n'okpuru ikike GNU General Public License. Linus Torvalds mepụtara Linux Kernel n'afọ 1991 wee bịa na ụdị Mwepụta mbụ kernel 0.01. Na 3 nke Ọgọst, 2014 (afọ a) ewepụtala Kernel 3.16. N'ime afọ 22 a, Linux kernel ahụla ọtụtụ mmepe. Ugbu a enwere puku ụlọ ọrụ, nde ndị nrụpụta nọọrọ onwe ha na-enye aka na Linux Kernel.

Ntụle siri ike nke nnukwu ụdị na ntinye aka ha na Linux Kernel dị ugbu a nke a na-atụ anya inwe ahịrị koodu nde iri na asaa dị ka Linux Foundation si kwuo, Linux Kernel Development Report.

  1. Uhie uhie – 10.2%
  2. Intel – 8.8%
  3. Ngwa Texas - 4.1%
  4. Linaro – 4.1%
  5. SUSE – 3.5%
  6. IBM – 3.1%
  7. Samsung – 2.6%
  8. Google – 2.4%
  9. Sistemụ eserese ọhụụ – 2.3%
  10. Wolfson Microelectronics – 1.6%
  11. Oracle – 1.3%
  12. Broadcom – 1.3%
  13. Nvidia – 1.3%
  14. Freescale – 1.2%
  15. Ingics Technology – 1.2%
  16. Cisco – 0.9%
  17. Linux Foundation – 0.9%
  18. AMD – 0.9%
  19. Ọka mmụta – 0.9%
  20. NetAPP – 0.8%
  21. Fujitsu – 0.7%
  22. yiri – 0.7%
  23. ARM – 0.7%

Pasent iri asaa nke mmepe kernel bụ ndị Mmepụta, ndị na-arụ ọrụ na Corporates na-akwụ ụgwọ maka nke ahụ, na-ada na-akpali mmasị?

A tọhapụrụ Linux Kernel 3.16 maka ndị mmadụ n'otu n'otu yana ụlọ ọrụ na gburugburu mmepụta, ndị ga-emelite kernel ha maka ọtụtụ ihe kpatara ya, ụfọdụ n'ime ha gụnyere.

  1. Patches nche
  2. Mkwalite nkwụsi ike
  3. Ndị ọkwọ ụgbọ ala emelitere – Nkwado ngwaọrụ ka mma
  4. Nkwalite ọsọ ọsọ
  5. Ọrụ kacha ọhụrụ, wdg

Edemede a bu n'obi imelite kernel Debian, ụzọ Debian, nke pụtara obere ọrụ aka, obere ihe egwu ma nwee izu oke. Anyị ga-emelitekwa Ubuntu Kernel na akụkụ ikpeazụ nke edemede a.

Tupu anyị aga n'ihu, anyị ga-amarịrị maka kernel anyị ugbu a, nke arụnyere.

[email :~$ uname -mrns 

Linux tecmint 3.14-1-amd64 x86_64

Banyere nhọrọ:

  1. -s : Bipụta Sistemụ Ọrụ ('Linux', Ebe a).
  2. -n : Bipute aha nnabata Sistemu ('tecmint', Ebe a).
  3. -r : Bipute kernel Version (‘tecmint 3.14-1-amd64’, Ebe a).
  4. -m : Bipụta Ntụziaka Ngwaike ('x86_64', Ebe a).

Budata kernel kwụ ọtọ kacha ọhụrụ site na njikọ dị n'okpuru. Enwela mgbagwoju anya site na njikọ nbudata patches ebe ahụ. Budata nke kwuru nke ọma - \KERNEL STABLE ỌKPỤRỤ.

  1. https://www.kernel.org/

N'aka nke ọzọ ị nwere ike iji wget budata kernel nke dabara adaba.

[email :~/Downloads$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.tar.xz

Mgbe nbudata nbudata ahụ gasịrị na tupu anyị aga n'ihu, a na-adụ ọdụ ka ị nyochaa mbinye aka kernel.

[email :~/Downloads$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.tar.sign

Ekwesịrị ime nkwenye mbinye aka megide faịlụ enweghị mgbakwụnye. Nke a ga-achọ otu mbinye aka megide usoro mkpakọ dị iche iche viz., .gz, .bz2, .xz.

Ọzọ, wepụ ihe oyiyi Linux Kernel.

[email :~/Downloads$ unxz linux-3.16.tar.xz

Nyochaa ya megide mbinye aka.

[email :~/Downloads$ gpg --verify linux-3.16.tar.sign

Mara: Ọ bụrụ n'elu iwu na-atụba gpg: Enweghị ike ịlele mbinye aka: igodo ọha ahụghị mperi. Nke ahụ pụtara na anyị kwesịrị iji aka budata igodo Ọha site na sava PGP.

[email :~/Downloads$ gpg --recv-keys  00411886

Mgbe nbudata igodo, nyochaa igodo ahụ ọzọ.

[email :~/Downloads$ gpg --verify linux-3.16.tar.sign

Ị chọpụtala ihe abụọ gbasara nkwenye igodo gpg.

  1. gpg: ezigbo mbinye aka sitere na “Linus Torvalds <[email echebe]>”
  2. Akara mkpịsị aka isi isi: ABAF 11C6 5A29 70B1 30AB E3C4 79BE 3E43 0041 1886 .

Ọ nweghị ihe ga-echegbu onwe anyị maka akara mkpịsị aka isi, anyị ji n'aka ugbu a na ebe nchekwa ahụ adịghị mma wee bịanye aka na ya. Ka anyị gaa n'ihu!

Tupu anyị aga n'ihu wee malite ịmepụta kernel, anyị kwesịrị ịwụnye ụfọdụ ngwugwu iji mee ka ụlọ kernel na usoro ntinye dị mfe ma mee ya ụzọ Debian na-enweghị ihe ize ndụ.

Wụnye ngwugwu libcurse5-dev, fakeroot na kernel-package.

[email :~/Downloads$ sudo apt-get install libncurses5-dev
[email :~/Downloads$ sudo apt-get install fakeroot
[email :~/Downloads$ sudo apt-get install kernel-package

Mgbe echichi nke ọma nke ngwugwu ndị a dị n'elu, anyị dị njikere ịmepụta kernel. Gaa na onyonyo Linux Kernel ewepụtara (anyị wepụtara n'elu, ka anyị na-enyocha mbinye aka).

[email :~/Downloads$ cd linux-3.16/

Ugbu a ọ dị mkpa iṅomi nhazi kernel dị ugbu a iji gosipụta akwụkwọ ndekọ aha dị ka onye ọrụ mgbọrọgwụ.

# cp /boot/config-'uname -r' .config

Ọ na-eṅomi /boot/config-'uname -r' iji weta akwụkwọ ndekọ aha na-arụ ọrụ \/home/avi/Downloads/linux-3.16 ma chekwaa ya dị ka '< b>.config'.

Ebe a 'uname -r' ga-edochi anya na-akpaghị aka ma jiri ụdị kernel arụnyere gị ugbu a hazie ya.

Ebe ọ bụ na enweghị ike ịhụ faịlụ ntụpọ n'ụzọ nkịtị, ịkwesịrị iji nhọrọ ''-a' na ls iji lelee nke a, na ndekọ ndekọ ọrụ gị ugbu a'.

$ ls -al

Enwere ụzọ atọ iji wuo kernel Linux.

  1. mee oldconfig : Ọ bụ ụzọ mmekọrịta nke kernel na-ajụ ajụjụ otu otu ihe ọ kwesịrị ịkwado yana ihe na-abụghị. Ọ bụ usoro na-ewe oge.
  2. mea menuconfig : Ọ bụ usoro ihe nrụnye iwu-akara ebe onye ọrụ nwere ike ime ma gbanyụọ nhọrọ. Ọ na-achọ ọbá akwụkwọ na-emebi emebi, yabụ anyị dabara nke ahụ n'elu.
  3. mee qconfig/xconfig/gconfig : Ọ bụ sistemu Menu nke eserese ebe onye ọrụ nwere ike ime ma gbanyụọ nhọrọ. Ọ chọrọ ọba akwụkwọ QT.

O doro anya na anyị ga-eji ''menuconfig'.

Ọ na-atụ egwu iwu kernel? I kwesịghị ịbụ. Ọ na-atọ ụtọ, enwere ọtụtụ ihe ị ga-amụta. I kwesiri iburu n'uche ihe ndia.

  1. Ngwaike gị na ndị ọkwọ ụgbọ ala dabara adaba.
  2. Họrọ atụmatụ ọhụrụ mgbe ị na-ewu kernel n'onwe gị dị ka – nkwado ebe nchekwa dị elu.
  3. Welite kernel - họrọ naanị ndị ọkwọ ụgbọ ala ị chọrọ. Ọ ga-eme ka usoro buut gị dịkwuo ngwa. Ọ bụrụ na ịmaghị onye ọkwọ ụgbọ ala ọ bụla, ọ ka mma tinye nke ahụ.

Ugbu a, mee iwu 'mee menuconfig'.

# make menuconfig

Ihe dị mkpa: Ị ga-ahọrọ Họrọ - ENABLE LOADABLE MODULE SPPORT, ọ bụrụ na ị chefuo ime nke a, ị ga-enweta oge siri ike.

Cheta na: Na windo nhazi mepere emepe ị nwere ike hazie nhọrọ dị iche iche maka kaadị netwọk gị, bluetooth, Touchpad, kaadị eserese, nkwado faịlụ dịka NTFS na ọtụtụ nhọrọ ndị ọzọ.

Enweghị nkuzi ga-eduzi gị ihe ị ga-ahọrọ na ihe na-abụghị. Ị mara nke a naanị site na nyocha, na-amụ ihe na webụ, ịmụta site na nkuzi tecmint na n'ụzọ ọ bụla ọzọ enwere ike.

Ị nwere ike ịhụ na enwere nhọrọ hacking kernel. Ịbanye? Ee! N'ebe a, ọ pụtara nyocha. Ịnwere ike ịgbakwunye nhọrọ dị iche iche n'okpuru hacking kernel ma jiri ọtụtụ atụmatụ.

Na-esote, họrọ Nhọrọ ọkwọ ụgbọ ala niile.

Nkwado ngwaọrụ netwọk.

Nkwado ngwaọrụ ntinye.

Budata faịlụ nhazi (.config), anyị echekwara na /boot/config-\uname -r\ config.

Pịa OK, chekwaa wee pụọ. Ugbu a hichaa osisi isi iyi wee tọgharịa paramita kernel-Package.

# make-kpkg clean

Tupu anyị amalite ịchịkọta kernel, anyị kwesịrị ibupu CONCURRENCY_LEVEL. Ọkwa isi mkpịsị aka nwere iwu itinye ọnụọgụ 1 na cores nke kernel. Ọ bụrụ na ị nwere cores 2, bupụ CONCURRENCY_LEVEL=3. Ọ bụrụ na ị nwere cores 4, bupụ CONCURRENCY_LEVEL=5.

Ka ịlele cores nke processor ị nwere ike onye ọrụ iwu cat dị ka egosiri n'okpuru.

# cat /proc/cpuinfo
Sample Output
processor	: 0 
vendor_id	: GenuineIntel 
cpu family	: 6 
model		: 69 
model name	: Intel(R) Core(TM) i3-4005U CPU @ 1.70GHz 
stepping	: 1 
microcode	: 0x17 
cpu MHz		: 799.996 
cache size	: 3072 KB 
physical id	: 0 
siblings	: 4 
core id		: 0 
cpu cores	: 2 
apicid		: 0 
initial apicid	: 0 
fpu		: yes 
fpu_exception	: yes 
cpuid level	: 13 
wp		: yes

Ị na-ahụ n'elu mmepụta, m nwere 2 cores, otú anyị ga-ebupụ 3 cores dị ka e gosiri n'okpuru.

# export CONCURRENCY_LEVEL=3

Ịtọ ntọala ziri ezi CONCURRENCY_LEVEL ga-eme ka oge nchịkọta kernel dị ngwa.

# fakeroot make-kpkg --append-to-version "-tecmintkernel" --revision "1" --initrd kernel_image kernel_headers

Ebe a ‘tecminkernel’ bụ aha nrụpụta kernel, ọ nwere ike ịbụ ihe ọ bụla sitere na aha gị, aha nnabata gị, aha anụ ụlọ gị ma ọ bụ ihe ọ bụla ọzọ.

Nchịkọta kernel na-ewe ogologo oge dabere na modul a na-achịkọta yana ike nhazi nke igwe. Ruo oge ọ na-achịkọta leba anya na ụfọdụ FAQ nke mkpokọta kernel.

Nke ahụ bụ njedebe nke FAQ, ka m jiri usoro nchịkọta were kwaga. Mgbe nchịkọta kernel gachara nke ọma, ọ na-emepụta faịlụ abụọ (ngwungwu Debian), otu ndekọ 'n'elu' nke akwụkwọ ndekọ aha anyị ugbu a.

Akwụkwọ ndekọ aha anyị ugbu a bụ.

/home/avi/Downloads/linux-3.16/

A na-emepụta ngwugwu Debian na.

/home/avi/Downloads

Iji nyochaa ya, mee iwu ndị a.

# cd ..
# ls -l linux-*.deb

Na-esote, mee faịlụ oyiyi Linux nke emepụtara.

# dpkg -i linux-image-3.16.0-tecmintkernel_1_amd64.deb

Gbaa faịlụ nkụnye eji isi mee Linux wee mepụta ya.

# dpkg -i linux-headers-3.16.0-tecmintkernel_1_amd64.deb

Emeela ihe niile! Anyị ejirila ndabere ndị ọzọ wuo, chịkọta ma tinye 3.16 Linux Kernel nke ọma na Debian nke ọma. Ọzọkwa Debian ngwugwu jisiri ike melite bootloader (GRUB/LILO), na-akpaghị aka. Ọ bụ oge ịmalitegharị wee nwalee kernel kachasị ọhụrụ.

Biko jide n'aka na ị ga-ahụ ozi mperi ọ bụla ị nwere ike nweta mgbe ị na-ebupụ. Ọ dị mkpa ịghọta njehie ahụ iji dozie ha, ọ bụrụ na ọ bụla.

# reboot

Ozugbo Debian malitekwara ọzọ, pịa 'Nhọrọ dị elu' ka ịhụ ndepụta nke kernel dịnụ na arụnyere.

Hụ ndepụta kernel arụnyere.

Họrọ Kernel chịkọtara ọhụrụ (ya bụ 3.16) ka ị buut.

Lelee ụdị kernel.

# uname -mrns

Nke kachasị ọhụrụ, arụnyere ugbu a ka atọrọ ka ọ bụrụ buut, na-akpaghị aka na ịkwesighi ịhọrọ ya oge ọ bụla site na nhọrọ buut dị elu.

Maka ndị na-achọghị ịchịkọta kernel nke ha na Debian (x86_64) ma chọọ iji kernel achịkọtara nke anyị na-ewu na nkuzi a, ha nwere ike ibudata ya na njikọ dị n'okpuru. Nke a kernel nwere ike ọ gaghị arụ ọrụ maka ụfọdụ ngwaike ị nwere.

  1. linux-image-3.16.0-linux-console.net_kernel_1_amd64.deb
  2. linux-headers-3.16.0-linux-console.net_kernel_1_amd64.deb

Na-esote, wụnye kernel achịkọtaburu site na iji iwu na-esonụ.

# dpkg -i linux-image-3.16.0-linux-console.net_kernel_amd64.deb
# dpkg -i linux-headers-3.16.0-linux-console.net_kernel_amd64.deb

Enwere ike wepu kernel ejighi ya na sistemu site na iji iwu.

# apt-get remove linux-image-(unused_version_number)

Akpachara anya: Ikwesiri iwepu kernel ochie ka anwalechara kernel kacha ọhụrụ kpamkpam. Emela mkpebi ngwa ngwa. Ị ga-aga n'ihu naanị ma ọ bụrụ na ị maara ihe ị na-eme.

Ọ bụrụ na imere ihe na-ezighi ezi na iwepu kernel ịchọrọ, ma ọ bụ wepụ kernel ị na-ekwesịghị, sistemụ gị ga-anọ n'ọkwa ị na-enweghị ike ịrụ ọrụ na ya.

Mgbe iwepuchara kernel ejighi ya, ị nwere ike nweta ozi dịka.

  1. njikọ /vmlinuz bụ njikọ mebiri emebi.
  2. wepu njikọ ihe atụ vmlinuz.
  3. Ị nwere ike ịchọgharịgharị bootloader[grub].
  4. njikọ /initrd.img bụ njikọ mebiri emebi.
  5. wepu njikọ ihe atụ initrd.img .
  6. Ị nwere ike ịchọgharịgharị bootloader[grub].

Nke a bụ ihe nkịtị ma ịkwesighi ichegbu onwe gị. Naanị melite GRUB gị site na iji iwu a.

# /usr/sbin/update-grub

Ị nwere ike imelite faịlụ /etc/kernel-img.conf gị wee gbanyụọ ''do_symlinks', iji gbanyụọ ozi ndị a. Ọ bụrụ na ị nwere ike ịmalitegharị wee banye ọzọ, enweghị nsogbu.

Nke ahụ bụ ihe niile ugbu a. M ga-anọ ebe a ọzọ na ọzọ na-akpali isiokwu. Ruo mgbe ahụ nọrọ na nche wee jikọọ na Tecment. Echefula ịnye anyị nzaghachi gị bara uru na ngalaba nkọwa n'okpuru. Gwakwa anyị ahụmịhe gị mgbe ị zutere nchịkọta na nrụnye kernel.

Gụọkwa :

  1. Wụnye kernel 3.16 na Ubuntu
  2. Kpọkọta ma wụnye kernel 3.12 na Linux Debian