Weboldal keresés

Kernel 3.16 megjelent – Fordítás és telepítés Debian GNU/Linux rendszeren


A Kernel minden operációs rendszer magja. A kernel elsődleges feladata, hogy közvetítőként működjön az Alkalmazás – CPU, Alkalmazás – Memória és Alkalmazás – Eszközök (I/O) között. Memóriakezelőként, eszközkezelőként működik, és egyéb feladatok elvégzése mellett részt vesz a rendszerhívásokban.

A Linux számára a kernel a szíve. A Linux kernel a GNU General Public License alatt jelenik meg. Linus Torvalds 1991-ben fejlesztette ki a Linux Kernelt, és az Initial Kernel Release 0.01-es verziójával érkezett. 2014. augusztus 3-án (idén) megjelent a Kernel 3.16. Ez alatt a 22 év alatt a Linux kernel rengeteget fejlődött. Jelenleg több ezer cég, független fejlesztők milliói járulnak hozzá a Linux Kernelhez.

A nagy márkák hozzávetőleges becslése és hozzájárulásuk a jelenlegi Linux kernelhez, amely várhatóan 17 millió sornyi kóddal rendelkezik a Linux Foundation, Linux Kernel Development Report szerint.

  1. RedHat – 10,2%
  2. Intel – 8,8%
  3. Texas Instruments – 4,1%
  4. Linaro – 4,1%
  5. SUSE – 3,5%
  6. IBM – 3,1%
  7. Samsung – 2,6%
  8. Google – 2,4%
  9. Vision gravírozó rendszerek – 2,3%
  10. Wolfson Microelectronics – 1,6%
  11. Oracle – 1,3%
  12. Broadcom – 1,3%
  13. Nvidia – 1,3%
  14. Szabad méret – 1,2%
  15. Ingics Technology – 1,2%
  16. Cisco – 0,9%
  17. Linux Foundation – 0,9%
  18. AMD – 0,9%
  19. Tudományosok – 0,9%
  20. NetAPP – 0,8%
  21. Fujitsu – 0,7%
  22. párhuzamok – 0,7%
  23. ARM – 0,7%

A kernelfejlesztés 70 százalékát fejlesztők végzik, akik a Vállalatoknál dolgoznak, és ezért fizetnek. Érdekesnek hangzik?

A Linux Kernel 3.16 egyének és éles környezetben működő vállalatok számára jelent meg, akik számos ok miatt frissíteni fogják a kernelüket, amelyek közül néhány ok.

  1. Biztonsági javítások
  2. Stabilitásnövelés
  3. Frissített illesztőprogramok – Jobb eszköztámogatás
  4. A feldolgozási sebesség javítása
  5. Legújabb funkciók stb

Ennek a cikknek a célja a Debian kernel frissítése, a Debian módszerrel, ami kevesebb kézi munkát, kevesebb kockázatot jelent, mégis tökéletes. A cikk későbbi részében az Ubuntu kernelt is frissítjük.

1. lépés: Kernel 3.16 letöltése

Mielőtt továbblépnénk, ismernünk kell az aktuális kernelünket, amely telepítve van.

avi@tecmint:~$ uname -mrns 

Linux tecmint 3.14-1-amd64 x86_64

A lehetőségekről:

  1. -s : Operációs rendszer nyomtatása ("Linux", itt).
  2. -n : Nyomtatási rendszer gazdagépneve ("tecmint", itt).
  3. -r : Nyomtatási kernel verzió ("tecmint 3.14-1-amd64", itt).
  4. -m: Nyomtatási hardver utasításkészlet ('x86_64', itt).

Töltse le a legújabb stabil kernelt az alábbi linkről. Ne tévesszen meg a javítások letöltési linkje. Töltsd le azt, amelyen egyértelműen szerepel: „LEGÚJABB STABIL KERNEL”.

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

Alternatív megoldásként használhatja a wget parancsot a kernel letöltéséhez, ami kényelmesebb.

avi@tecmint:~/Downloads$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.tar.xz

2. lépés: Ellenőrizze a Kernel 3.16-os aláírását

A letöltés befejezése után és mielőtt továbblépnénk, erősen ajánlott a kernel aláírásának ellenőrzése.

avi@tecmint:~/Downloads$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.16.tar.sign

Az aláírás-ellenőrzést tömörítetlen fájlon kell elvégezni. Ehhez egyetlen aláírásra van szükség a különböző tömörítési formátumokhoz, pl., .gz, .bz2, .xz.

Ezután csomagolja ki a Linux Kernel Image-t.

avi@tecmint:~/Downloads$ unxz linux-3.16.tar.xz

Ellenőrizze aláírással.

avi@tecmint:~/Downloads$ gpg --verify linux-3.16.tar.sign

Megjegyzés: Ha a fenti parancs gpg-t dob: Nem lehet ellenőrizni az aláírást: a nyilvános kulcs nem található hiba. Ez azt jelenti, hogy manuálisan kell letöltenünk a nyilvános kulcsot a PGP-kiszolgálóról.

avi@tecmint:~/Downloads$ gpg --recv-keys  00411886

A kulcs letöltése után ellenőrizze újra a kulcsot.

avi@tecmint:~/Downloads$ gpg --verify linux-3.16.tar.sign

Észrevett két dolgot a gpg kulcs ellenőrzésével kapcsolatban?

  1. gpg: „Linus Torvalds <[email >” jó aláírása.
  2. Elsődleges kulcs ujjlenyomata: ABAF 11C6 5A29 70B1 30AB E3C4 79BE 3E43 0041 1886 .

Nincs okunk aggódni a kulcs ujjlenyomata miatt, most már biztosak vagyunk abban, hogy az archívum rendben van és alá van írva. Menjünk előre!

3. lépés: A szükséges csomagok telepítése

Mielőtt nekilátnánk a kernel felépítésének, telepítenünk kell bizonyos csomagokat, hogy megkönnyítsük a kernelépítési és telepítési folyamatot, és mindezt kockázatmentesen, Debian módon végezzük.

Telepítse a libcurse5-dev, a fakeroot és a kernel-csomagot.

avi@tecmint:~/Downloads$ sudo apt-get install libncurses5-dev
avi@tecmint:~/Downloads$ sudo apt-get install fakeroot
avi@tecmint:~/Downloads$ sudo apt-get install kernel-package

4. lépés: Kernel felépítése 3.16

A fenti csomagok sikeres telepítése után készen állunk a kernel felépítésére. Lépjen a kibontott Linux Kernel Image-re (fent kibontottuk, miközben ellenőriztük az aláírást).

avi@tecmint:~/Downloads$ cd linux-3.16/

Most fontos átmásolni az aktuális kernelkonfigurációt, hogy root felhasználóként jelenítse meg a munkakönyvtárat.

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

Másolja a /boot/config-'uname -r' fájlt a „/home/avi/Downloads/linux-3.16” munkakönyvtárba, és ' néven menti >.config'.

Itt az ‘uname -r’ automatikusan lecserélődik és a jelenleg telepített kernelverzióval kerül feldolgozásra.

Mivel egy pontfájl nem látható a szokásos módon, a „-a” és az ls opciót kell használnia, hogy megtekinthesse ezt a jelenlegi munkakönyvtárában.

ls -al

A Linux kernel felépítésének három módja van.

  1. make oldconfig : Ez egy interaktív módja annak, hogy a kernel egyenként felteszi a kérdést, hogy mit kell támogatnia és mit nem. Ez egy nagyon időigényes folyamat.
  2. make menuconfig : Ez egy parancssori menü alapú rendszer, ahol a felhasználó engedélyezhet és letilthat egy opciót. Ehhez ncurses könyvtárra van szükség, ezért ezt a fentiekben alkalmazzuk.
  3. make qconfig/xconfig/gconfig : Ez a grafikus menü alapú rendszer, ahol a felhasználó engedélyezhet és letilthat egy opciót. QT Library kell hozzá.

Nyilvánvalóan a „make menuconfig”-t fogjuk használni.

Fél a kernel építésétől? Nem szabadna. Szórakoztató, sok mindent meg fogsz tanulni. A következő dolgokat érdemes szem előtt tartania.

  1. Hardverigényei és megfelelő illesztőprogramjai.
  2. Válasszon új szolgáltatásokat, miközben saját maga építi fel a rendszermagot, például – nagy memória támogatása.
  3. Kernel optimalizálása – csak azokat az illesztőprogramokat válassza ki, amelyekre szüksége van. Ez felgyorsítja a rendszerindítási folyamatot. Ha nem biztos az illesztőprogramokban, jobb, ha azt is belefoglalja.

Most futtassa a „make menuconfig” parancsot.

make menuconfig

Fontos: Ki kell választania a „KIVÁLASZTÁS – BETÖLTHETŐ MODUL TÁMOGATÁS ENGEDÉLYEZÉSE” lehetőséget. Ha elfelejti ezt megtenni, nehéz idők vár rád. .

Megjegyzés: A megnyitott konfigurációs ablakokban különféle beállításokat konfigurálhat a hálózati kártyához, a Bluetooth-hoz, az érintőpadhoz, a grafikus kártyához, a fájlrendszer-támogatáshoz, például az NTFS-hez és sok más beállításhoz.

Nincs olyan oktatóanyag, amely eligazítja, hogy mit válasszon és mit ne. Ezt csak úgy tudhatod meg, ha kutakodsz, a weben keresztül tanulmányozod a dolgokat, tanulsz a tecmint oktatóanyagaiból és minden más módon.

Láthatja, hogy van egy kernel hackelési lehetőség. Hackelés? Aha! Itt a felfedezést jelenti. Különféle lehetőségeket adhat hozzá a kernel hackelése alatt, és sok funkciót használhat.

Ezután válassza az Általános illesztőprogram-beállítások lehetőséget.

Hálózati eszközök támogatása.

Beviteli eszköz támogatás.

Töltse be a konfigurációs fájlt (.config), amelyet a /boot/config-`uname –r`.config fájlból mentettünk.

Kattintson az OK gombra, mentse és lépjen ki. Most tisztítsa meg a forrásfát, és állítsa vissza a kernel-csomag paramétereit.

make-kpkg clean

5. lépés: Kernel 3.16 fordítása

Mielőtt elkezdené a kernel fordítását, exportálnunk kell a következőt: CONCURRENCY_LEVEL. Az EGYEZESSÉGI SZINT a hüvelykujj egy szabályt tartalmaz az 1-es szám hozzáadására a kernel magjaihoz. Ha 2 magja van, exportálja a CONCURRENCY_LEVEL=3. Ha 4 magja van, exportálja a CONCURRENCY_LEVEL=5-öt.

A processzormagok ellenőrzéséhez használhatja a cat parancsot az alábbiak szerint.

cat /proc/cpuinfo
Minta kimenet
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

A fenti kimeneten látható, hogy 2 magom van, ezért 3 magot exportálunk az alábbiak szerint.

export CONCURRENCY_LEVEL=3

A helyes CONCURRENCY_LEVEL beállítása felgyorsítja a kernel fordítási idejét.

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

Itt a ’tecminkernel’ a kernel build neve, bármi lehet, kezdve az Ön nevétől, a gazdagép nevétől, a kedvence nevétől vagy bármi mástól.

A kernel fordítása sok időt vesz igénybe a fordítandó moduloktól és a gép feldolgozási teljesítményétől függően. Amíg nem fordít, nézd meg a kernelfordítás néhány GYIK-jét.

Gyakran Ismételt Kérdések

Q1. A kernelemet már régóta fordítják. Normális.
Q2. Ha megszakítom a kernelt fordítás közben, elölről kell kezdenem?
Q3. A lefordított fájlok különböző rendszereken használhatók kernel frissítésére?
Q4. Ön fogja tárolni az összeállított fájlt?
Q5. Vannak olyan csomagok a tárhelyemben, mint a fakeroot és az ncurses5-dev?
Q6. A legfrissebb kernel telepítése után képes leszek-e a legutolsó kernelbe bootolni?
Q7. Problémával szembesülök a kernel frissítése során. Segítesz nekem? Fizethető?
Q8. Cégem problémával küzd a kernel frissítése során. A csapatod segíteni fog nekünk? Térhető?

Ezzel a GYIK vége, hadd folytassam az összeállítási folyamatot. A kernel sikeres lefordítása után két fájlt (Debian-csomagot) hoz létre, egy könyvtárat a jelenlegi működő könyvtárunk „felett”.

Jelenlegi munkakönyvtárunk a.

/home/avi/Downloads/linux-3.16/

A Debian csomagok itt jönnek létre.

/home/avi/Downloads

Az ellenőrzéshez futtassa a következő parancsokat.

cd ..
ls -l linux-*.deb

Ezután futtassa az így létrehozott Linux-képfájlt.

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

Futtassa az így létrehozott Linux-fejlécfájlt.

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

Minden kész! Sikeresen elkészítettük, lefordítottuk és telepítettük a legújabb Linux Kernel 3.16-ot a Debian rendszeren az összes többi függőséggel együtt. Ezenkívül a Debian csomag automatikusan frissítette a rendszerbetöltőt (GRUB/LILO). Ideje újraindítani és tesztelni a legújabb kernelt.

Kérjük, figyeljen minden hibaüzenetre, amelyet rendszerindításkor kaphat. Fontos megérteni, hogy a hiba megoldható, ha vannak ilyenek.

reboot

Amint a Debian újraindul, kattintson a 'Speciális opció' elemre az elérhető és telepített kernelek listájának megtekintéséhez.

Tekintse meg a telepített kernelek listáját.

Válassza ki a legfrissebb lefordított kernelt (azaz 3.16-ot) a rendszerindításhoz.

Ellenőrizze a kernel verzióját.

uname -mrns

A legújabb, most telepített automatikusan elindul, és nem kell minden alkalommal kiválasztania a speciális rendszerindítási lehetőségek közül.

6. lépés: Telepítse az előre lefordított kernel 3.16-ot

Azok, akik nem akarnak saját kernelt fordítani Debianon (x86_64), és az oktatóanyagban elkészített előre lefordított kernelt szeretnék használni, letölthetik az alábbi linkről. Előfordulhat, hogy ez a kernel nem működik egyes hardvereken.

  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

Ezután telepítse az előre lefordított kernelt a következő paranccsal.

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

A fel nem használt kernelt paranccsal lehet eltávolítani a rendszerből.

apt-get remove linux-image-(unused_version_number)

Vigyázat: A legújabb kernel alapos tesztelése után távolítsa el a régi kernelt. Ne hozzon elhamarkodott döntést. Csak akkor szabad folytatnia, ha tudja, mit csinál.

Ha valamit rosszul csinált a kívánt kernel eltávolításakor, vagy eltávolította azt a kernelt, amelyet nem kellett volna, akkor a rendszer olyan állapotba kerül, amellyel nem tud dolgozni.

Egy használaton kívüli kernel eltávolítása után ilyen üzenetet kaphat.

  1. A /vmlinuz hivatkozás sérült.
  2. Szimbolikus link eltávolítása vmlinuz.
  3. Lehetséges, hogy újra kell futtatnia a rendszertöltőt [grub].
  4. Az /initrd.img hivatkozás sérült.
  5. Szimbolikus hivatkozás eltávolítása initrd.img .
  6. Lehetséges, hogy újra kell futtatnia a rendszertöltőt [grub].

Ez normális, és nem kell aggódnia. Csak frissítse a GRUB-ot a következő paranccsal.

/usr/sbin/update-grub

Lehetséges, hogy frissítenie kell az /etc/kernel-img.conf fájlt, és le kell tiltania a 'do_symlinks' funkciót az üzenetek letiltásához. Ha sikerül újraindítani és újra bejelentkezni, nincs probléma.

Ez minden most. Ismét itt leszek egy újabb érdekes cikkel. Addig is maradjon velünk, és csatlakozzon a Tecminthoz. Ne felejtse el megadni nekünk értékes visszajelzését az alábbi megjegyzés részben. Mondja el nekünk tapasztalatait is, amikor kernel fordításával és telepítésével találkozik.

Olvassa el még:

  1. Telepítse a Kernel 3.16-ot az Ubuntuban
  2. Fordítsa le és telepítse a Kernel 3.12-t Debian Linux rendszeren