Jump to content

Kernel (Magyar)

From ArchWiki
Fordítás állapota: Ez az oldal az angol Kernel című oldal magyar nyelvre lefordított változata. Utolsó fordítás dátuma: 2026.04.06. Amennyiben a lefordítás időpontja óta az angol nyelvű oldalon történtek újabb módosítások, akkor Ön segíthet hozzászinkronizálni az angolhoz ezt a magyar nyelvű fordítást.


A Wikipédia szerint:

A Linux kernel (nevezik még Linux rendszermagnak) egy nyílt forráskódú, monolitikus felépítésű, Unix-szerű számítógépes kernel Unix-szerű operációsrendszerek számára.

Az Arch Linux operációs rendszer a Linux kernelre épül rá. Az Arch Linux operációs rendszerhez a legfrissebb stabil kernel mellett különféle alternatív Linux kernelek is elérhetők. Ez a cikk felsorolja a szoftvercsomag-tárolókban elérhető lehetőségeket, és mindegyik lehetőségről rövid leírást ad. Továbbá, a cikk ismertetővel szolgál az operációs rendszer kernelére alkalmazható javításokról. A cikk végül áttekintést nyújt az egyedi kernelfordításról, különféle módszerekhez vezető hivatkozásokkal.

A számítógépen a kernelszoftvercsomagok a /usr/lib/modules/ útvonal alá kerülnek feltelepítésre, majd ezt követően a binárisan futtatható vmlinuz képfájl átmásolásra kerül a /boot/ könyvtárba. [1] Amikor Ön másik kernelt telepít fel a számítógépre, vagy több kernel között választ, akkor Önnek be kell állítani a boot loader programot is oly módon, hogy az tükrözze a változtatásokat. A kernel régebbi verziójára történő visszaállításával kapcsolatban tekintse meg a Downgrading packages#Kernel visszaállítása a régebbi verzióra című leírást.

Hivatalosan támogatott kernelek

A hivatalosan támogatott kernelekhez közösségi támogatás érhető el a fórumban és a hibabejelentési útmutatóban.

  • Stable — Upstream (azaz a hivatalos Linux közösség által kiadott) kernel. Mondják még "vanilla" kernelnek is angolul (alapíz mint a vanília) az ízek közül. Tehát ez az alapkernel, amely mindenféle gyártói vagy disztribúció-specifikus módosítás nélkül létezik. Továbbá, kernelmodulokat tartalmaz, amelyek néhány javításotokkal vannak ellátva.
https://www.kernel.org/ || linux
  • Hardened — Egy olyan Linux kernel amely a maximális biztonságot helyezi az abszolút középpontba. Nagyon sok, a biztonságot megerősítő (hardening) szoftveres javítást alkalmaz a kernelexploitok (kernelsebezhetőségek kihasználásának) és a felhasználói térben lévő exploitok (user space sebezhetőségek kihasználásának) mérséklése érdekében. Emellett, a linux szoftvercsomagtól több upstream kernelmegerősítési funkciót is engedélyez.
https://github.com/anthraxx/linux-hardened || linux-hardened
  • Longterm — Hosszútávúan támogatott (Long-term support, LTS) Linux kernel és kernelmodulok. Ez a szoftvercsomag hasznos amikor Ön olyan külső kernelmodulokat használ, amelyek időben nem frissülnek olyan verziókra, amelyek kompatibilisek lennének a legújabb stabil kernellel.
https://www.kernel.org/ || linux-lts
  • Realtime kernel — Ezt a kernelt egy kicsi kernelfejlesztői csoport tartja karban Molnár Ingo vezetésével. Ez a patch lehetővé teszi, hogy szinte az egész kernel előre megszakítható legyen, kivéve néhány nagyon kicsi kódrészletet („raw_spinlock kritikus régiók”). Ez úgy valósul meg, hogy a legtöbb kernelspinlockot olyan mutexekkel helyettesítik, amelyek támogatják a prioritásöröklést, valamint az összes megszakítást és szoftveres megszakítást kernelszálakba helyezik át.
https://wiki.linuxfoundation.org/realtime/start || linux-rt, linux-rt-lts
Megjegyzés A valósidejű kerneltámogatás bekerült a Linux 6.12 verzióba.
  • Zen Kernel — A kernelhackerek közös munkájának eredménye, amelynek célja a lehető legjobb Linux kernel biztosítása a mindennapi rendszerek számára. További részletekért tekintse meg a GYIK és a Részletes funkciólista oldalakat.
https://github.com/zen-kernel/zen-kernel || linux-zen

Kernel forráskódjának lefordítása binárisan futtatható kódra

Ön a következő módszereket tudja használni annak érdekében, hogy Önmagának saját kernelt állítson össze:

/Arch Build System
Ez a módszer kihasználja a már meglévő linux szoftvercsomag PKGBUILD magas minőségét és kihasználja a szoftvercsomag-kezelés előnyeit.
/Traditional compilation
Ez a módszer magába foglalja egy forráskódot tartalmazó tarball fájl (tehát egy forráskódot tartalmazó archívumfájl) manuális úton történő letöltését. Továbbá, magába foglalja a letöltött forráskód lefordítását normál felhasználóként az Ön saját könyvtárában.
Figyelmeztetés
  • Egyedi kernelek használata mindenféle stabilitási és megbízhatósági problémát okozhat, beleértve az adatvesztést is. Erősen ajánlott a biztonsági mentések elkészítése, és értelemszerűen azok megléte.
  • Az Arch Linux hivatalosan egyedül a #Hivatalosan támogatott kerneleket támogatja. Másik kernel használata esetén kérjük Önt, hogy a használt kernelt említse meg a támogatási kérelmeknél.
Tipp
  • A rendszer sebességének megnövelésére az a legjobb mód, hogy Ön először az architektúrához és a processzortípushoz igazítja hozzá a kernel beállítását.
  • Ön csökkentheti a kernel méretét (és egyben csökkentheti a kódfordítási időt is) azáltal, hogy a kernelbe Ön nem helyez bele olyan dolgok támogatását, amely dogokkal Ön nem is rendelkezik vagy egyáltalán nem is szokott használni. Például az Ön esetében lehet, hogy olyan dolgokhoz, mint például a Bluetooth, video4linux, 1000Mbit Ethernet stb, felesleges lehet a támogatás kernelbe történő bevétele.

Az Arch kernelszoftvercsomagok config fájljai az Arch szoftvercsomag forrásfájljaiban találhatók (például [2], amely a linux szoftvercsomagból van belinkelve). Az éppen futó kernel config fájlja szintén elérhető lehet a fájlrendszerben a /proc/config.gz elérési útvonalon, amennyiben a CONFIG_IKCONFIG_PROC kernelopció engedélyezve van.

Néhány felsorolt szoftvercsomag binárisan futtatható kódot tartalmazó szoftvercsomag formájában is elérhető lehet a Nem hivatalos felhasználói szoftvercsomag-tárolókon keresztül.

kernel.org kernelek

  • Git — Linux kernel és kernelmodulok, amelyek Linus Torvalds Git szoftverkódtárolójában megtalálható forráskódjaiból készültek el.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git || linux-gitAUR
  • Mainline — Olyan kernelek, amelyekben minden új funkció bevezetésre kerül. Kb. 2–3 havonta van kiadva.
https://www.kernel.org/ || linux-mainlineAUR
  • Next — Legújabb (úgymond "Bleeding edge") kernelek, amelyek olyan funkciókat tartalmaznak, amely funkciók a következő fő kernelkiadásba történő beolvasztásra várakoznak.
https://www.kernel.org/doc/man-pages/linux-next.html || linux-next-gitAUR
  • DRM — Linux kernel, a legújabb (úgymond "Bleeding edge") GPU illesztőprogramokkal.
https://gitlab.freedesktop.org/drm || linux-drm-tip-gitAUR, linux-drm-next-gitAUR
  • Longterm — Hosszútávú támogatással (Long Term Support, LTS) rendelkező Linux kernel és kernelmodulok.
https://www.kernel.org/ || linux-lts612AUR, linux-lts66AUR, linux-lts61AUR, linux-lts515AUR, linux-lts510AUR

Nem hivatalos kernelek

  • linux-cachyos — A Linux SCHED-EXT + BORE + "Cachy sauce" kernel, további kernel és kernelmodul javításokkal és fejlesztésekkel.
https://github.com/CachyOS/linux-cachyos || linux-cachyosAUR
  • Libre — Olyan kernel amely szándékosan nem tartalmazza a szabadalom alatt álló illesztőprogramokat. Nem tartalmazza az olyan illesztőprogramokat sem amelyek forráskódjai szándékosan zavarosak, hogy azokat ne tudják emberek könnyen elolvasni, tanulmányozni és értelmezni. Értsd: Ebbe a kernelbe a nyugati, végtelenül haszonelvű, álszent/jóemberkedő, de valójában kapitalista disznók kódjai egyáltalán nem kerülnek bele.
https://www.fsfla.org/ikiwiki/selibre/linux-libre/ || linux-libreAUR
  • Liquorix — Debianra megcélzott beállítással és a Zen kernel forrásaival felépített kernelcsere. Asztali, multimédiás és játékterhelésekhez készült, gyakran használják Debian Linux teljesítményfókuszú helyettesítőkernelként. Damentz, a Liquorix patchkészlet karbantartója, aki a Zen patch-készlet fejlesztője is egyben.
https://liquorix.net || linux-lqxAUR
  • pf-kernel — Néhány nagyszerű funkciót biztosít, amelyek nem kerültek be a Linux kernelfejlesztésének főágába. Egy kernelmérnök tartja karban. Ha az új kernelekhez tartozó patch hivatalosan nem került kiadásra, akkor a patchkészlet biztosítja és támogatja a patch portokat az új kernelekhez. A linux-pf jelenlegi legjelentősebb patchjei az UKSM, DDCCI, v4l2loopback és BBRv3.
https://pfkernel.natalenko.name || Szoftvercsomagok:
  • Project C — Kernel Alfred Chen Project C patchkészlettel (BMQ és PDS ütemezők).
https://gitlab.com/alfredchen/projectc || linux-prjcAUR
  • Nitrous — Módosított Linux kernel, Skylake és újabb processzorokra optimalizálva.
https://gitlab.com/xdevs23/linux-nitrous || linux-nitrousAUR
  • Tachyon — Patchek az Intel Clear Linux projektből, amelyet egy új projektbe vittek át, mivel a Clear Linux projekt fejlesztése abbamaradt. Teljesítmény- és biztonsági optimalizálásokat biztosít.
https://git.staropensource.de/StarOpenSource/Linux-Tachyon || linux-tachyonAUR
  • tkg — Nagyon testre szabható kernel build rendszer, amely patchek és finomhangolások válogatását kínálja a jobb asztali és játékteljesítmény érdekében. Etienne Juvigny tartja karban. Többek között különféle CPU ütemezőket kínál: CFS, Project C PDS, Project C BMQ, MuQSS és CacULE.
https://github.com/Frogging-Family/linux-tkg || Elérhető a chaotic-aur nem hivatalos szoftvercsomag tárolóban.
  • VFIO — Linux kernel és néhány patch, amelyet Alex Williamson írt (acs override és i915), hogy lehetővé tegye a PCI Passthrough használatát KVM-mel bizonyos gépeken.
https://lwn.net/Articles/499240/ || linux-vfioAUR, linux-vfio-ltsAUR
  • XanMod — Olyan Linux kernel, amelyet kifejezetten nagy teljesítményű munkaállomások, játékra szánt asztali gépek, médiaközpontok és más rendszerek teljes kihasználására terveztek. Célja, hogy stabilabb, reszponzívabb és gördülékenyebb asztali élményt nyújtson. Ez a kernel a BFQ I/O ütemezőt, a TCP BBRv3 torlódásvezérlést, fejlett x86_64 utasításkészlet-támogatást, részleges Clear Linux patchkészletet és más alapértelmezett módosításokat használ.
https://xanmod.org/ || linux-xanmodAUR, linux-xanmod-ltsAUR, linux-xanmod-rtAUR, linux-xanmod-boreAUR

Sok ilyen nem hivatalos kernel olyan funkciókat tartalmaz, amelyeket manuális úton, kézzel kell engedélyezni. Érdemes átnézni a patchek dokumentációját magában a kernelforráskódban (sok már tartalmaz változtatásokat a Documentation/ könyvtárban). Illetve, érdemes rákeresni a patchkészlet nevére az interneten. Így található meg az, hogy pontosan miként kell bekapcsolni és használni az adott funkciókat, illetve megtalálható az, hogy milyen beállítási lépések szükségesek a teljesítmény vagy kompatibilitás elérése érdekében.

Hibaelhárítás

Kernelpánik

A kernelpánik akkor következik be, amikor a Linux kernel olyan hibás állapotba kerül bele amely helyrehozhatatlan. Ez az állapot jellemzően hibás hardverillesztőprogramokból ered, amelyek miatt a számítógép holtpontra kerül, nem reagál, és számítógépújraindításra van szükség. Közvetlenül a holtpont előtt diagnosztikai üzenet keletkezik, amely a következőket tartalmazza: Számítógép állapota a hiba bekövetkezésekor, a függvényhívási nyomvonal, amely a hibát felismerő kernelfüggvényhez vezet, valamint a jelenleg a memóriába betöltött kernelmodulok listája. Szerencsére nem fordul elő gyakran a kernelpánik a mainline kernelverziók használata során (például azoknál a kerneleknél, amelyeket a hivatalos szoftvercsomag-tárolókban vannak benne), de amikor mégis megtörténik a kernelpánik, akkor Önnek tudnia kell azt, hogy miként kezelje.

Megjegyzés A kernelpánikokat néha oops vagy kernel oops néven is emlegetik. Bár mind a pánik, mind az oops hibás állapot következménye, az oops általánosabb, mivel nem feltétlenül eredményez holtpontba került számítógépet: Előfordul, hogy a kernel képes helyreállni egy oops után azáltal, hogy megszünteti a hibát okozó feladatot, és folytatja a működést.
Tipp A számítógép bootolásakor Ön adja át az oops=panic kernelparamétert, vagy írja be az 1 értéket a /proc/sys/kernel/panic_on_oops fájlba annak érdekében, hogy egy helyrehozható oops helyett pánikot váltson ki. Ez ajánlott, amikor Ön aggódik amiatt a kis esély miatt, hogy az oops helyreállítás rendszerinstabilitást okozhat, amely megnehezítheti a jövőbeni hibák diagnosztizálását.

Pániküzenet megvizsgálása

Ha a bootolási folyamat során a kernelpánik nagyon korán következik be, akkor a parancssorban megjelenhet egy üzenet, amely a következőt tartalmazza: Kernel panic - not syncing:, de amint a systemd fut, a kernelüzenetek általában rögzítésre kerülnek és a rendszer naplófájljába beleíródnak. Amikor azonban a kernelpánik bekövetkezik, a kernel által kiadott diagnosztikai üzenet szinte soha nem kerül bele az adathordozóra kiírt naplófájlba, mert a számítógép holtpontba kerül, mielőtt a system-journald lehetőséget kapna a kiírási munka elvégzésére.

Kék képernyőn megjelenő QR-kód

A 6.10 verziótól kezdve a linux szoftvercsomagban található linux kernel alapértelmezés szerint (a drm_panic esetén) egy kék képernyőn QR-kód formájában jeleníti meg a kernelpánikot. A stack trace a QR-kód által megadott URL címen látható. Arch Linux esetén ez a https://panic.archlinux.org/panic_report hivatkozásra mutat. Az URL különféle információkat és a gzip segítségével tömörített, majd a URL fragment formában kódolt stack trace szöveganyagot tartalmazza, amely nem kerül továbbításra a szerver felé (a kliensoldalon kerül feldolgozásra).

Egy például szolgáló kernelpánik, linkeléssel és képernyőképpel megtekinthető ebben a fórumbejegyzésben.

Az előző viselkedésmódhoz való visszatérés érekében Ön adja át a panic_screen=kmsg paramétert a drm kernelmodulnak (vagy drm.panic_screen=kmsg kernel paraméter formájában) annak érdekében, hogy a stack trace a parancssorban jelenjen meg.

Parancssoros mód

Továbbra is elérhető a "régi" stílusú módja annak, hogy Ön a parancssorban közvetlenül lássa a hibát, amikor a hiba bekövetkezik (anélkül, hogy be kellene állítani a kdump crashkernel-t). Indítsa el az operációs rendszert a következő kernelparaméterekkel, majd próbálja meg reprodukálni a kernelpánikot a tty1 parancssorban:

systemd.journald.forward_to_console=1 console=tty1
Tipp Ha a pániküzenet túl gyorsan eltűnik ahhoz, hogy meg lehessen azt vizsgálni, akkor a bootoláskor Ön próbálja megadni a pause_on_oops=másodperc kernelparamétert.
Például szolgáló forgatókönyv: Rossz kernelmodulfájl

Lehetséges a diagnosztikai üzenetben található információk alapján megbecsülni, hogy melyik alrendszer vagy kernelmodul okozza a kernelpánikot. Ebben az esetben egy képzeletbeli számítógépen a bootolás során következett be a kernelpánik. Figyeljen azokra a sorokra amelyek félkövér betűkkel vannak kiemelve:

kernel: BUG: unable to handle kernel NULL pointer dereference at (null) 1
kernel: IP: fw_core_init+0x18/0x1000 [firewire_core] 2
kernel: PGD 718d00067
kernel: P4D 718d00067
kernel: PUD 7b3611067
kernel: PMD 0
kernel:
kernel: Oops: 0002 [#1] PREEMPT SMP
kernel: Modules linked in: firewire_core(+) crc_itu_t cfg80211 rfkill ipt_REJECT nf_reject_ipv4 nf_log_ipv4 nf_log_common xt_LOG nf_conntrack_ipv4 ... 3
kernel: CPU: 6 PID: 1438 Comm: modprobe Tainted: P           O    4.13.3-1-ARCH #1
kernel: Hardware name: Gigabyte Technology Co., Ltd. H97-D3H/H97-D3H-CF, BIOS F5 06/26/2014
kernel: task: ffff9c667abd9e00 task.stack: ffffb53b8db34000
kernel: RIP: 0010:fw_core_init+0x18/0x1000 [firewire_core]
kernel: RSP: 0018:ffffb53b8db37c68 EFLAGS: 00010246
kernel: RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
kernel: RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffffc16d3af4
kernel: RBP: ffffb53b8db37c70 R08: 0000000000000000 R09: ffffffffae113e95
kernel: R10: ffffe93edfdb9680 R11: 0000000000000000 R12: ffffffffc16d9000
kernel: R13: ffff9c6729bf8f60 R14: ffffffffc16d5710 R15: ffff9c6736e55840
kernel: FS:  00007f301fc80b80(0000) GS:ffff9c675dd80000(0000) knlGS:0000000000000000
kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
kernel: CR2: 0000000000000000 CR3: 00000007c6456000 CR4: 00000000001406e0
kernel: Call Trace:
kernel:  do_one_initcall+0x50/0x190 4
kernel:  ? do_init_module+0x27/0x1f2
kernel:  do_init_module+0x5f/0x1f2
kernel:  load_module+0x23f3/0x2be0
kernel:  SYSC_init_module+0x16b/0x1a0
kernel:  ? SYSC_init_module+0x16b/0x1a0
kernel:  SyS_init_module+0xe/0x10
kernel:  entry_SYSCALL_64_fastpath+0x1a/0xa5
kernel: RIP: 0033:0x7f301f3a2a0a
kernel: RSP: 002b:00007ffcabbd1998 EFLAGS: 00000246 ORIG_RAX: 00000000000000af
kernel: RAX: ffffffffffffffda RBX: 0000000000c85a48 RCX: 00007f301f3a2a0a
kernel: RDX: 000000000041aada RSI: 000000000001a738 RDI: 00007f301e7eb010
kernel: RBP: 0000000000c8a520 R08: 0000000000000001 R09: 0000000000000085
kernel: R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000c79208
kernel: R13: 0000000000c8b4d8 R14: 00007f301e7fffff R15: 0000000000000030
kernel: Code: <c7> 04 25 00 00 00 00 01 00 00 00 bb f4 ff ff ff e8 73 43 9c ec 48
kernel: RIP: fw_core_init+0x18/0x1000 [firewire_core] RSP: ffffb53b8db37c68
kernel: CR2: 0000000000000000
kernel: ---[ end trace 71f4306ea1238f17 ]---
kernel: Kernel panic - not syncing: Fatal exception 5
kernel: Kernel Offset: 0x80000000 from 0xffffffff810000000 (relocation range: 0xffffffff800000000-0xfffffffffbffffffff
kernel: ---[ end Kernel panic - not syncing: Fatal exception
  1. Jelzi, hogy milyen típusú hiba okozta a kernelpánikot. Ebben az esetben programozói hiba volt.
  2. Jelzi, hogy a kernelpánik a fw_core_init nevű függvényben történt, a firewire_core kernelmodulban.
  3. Jelzi, hogy a firewire_core volt a legutóbb a számítógép memóriájába betöltött kernelmodul.
  4. Jelzi, hogy a fw_core_init függvényt a do_one_initcall függvény hívta meg.
  5. Jelzi, hogy ez az oops üzenet valójában kernelpánik, és az operációs rendszer most holtpontba került.

Mi tehát arra következtethetünk, hogy a kernelpánik a firewire_core kernelmodul inicializálási rutinja során következett be, amikor az betöltődött a számítógép memóriájába. (Feltételezhetjük tehát azt, hogy a számítógép firewire hardvere nem kompatibilis a firewire illesztőprogramot tartalmazó kernelmodul ezen verziójával egy programozói hiba miatt, és új kiadásra kell várni). Addig is a legegyszerűbb módja annak, hogy a számítógép ismét működjön, az, ha megakadályozzuk a kernelmodul betöltését a számítógép memóriájába. Ezt kettőféleképpen tehetjük meg:

  • Ha a kernelmodul az initramfs végrehajtása közben töltődik be a számítógép memóriájába, akkor indítsa újra a rendszert a következő kernelparaméterrel: rd.blacklist=firewire_core .
  • Egyébként indítsa újra a rendszert a következő kernelparaméterrel: module_blacklist=firewire_core .

Számítógép újraindítása bele a root shell -be, és ott a probléma kijavítása

This article or section is out of date.

Reason: rd.rescue and rd.emergency will not work since the root account in the initramfs is locked. (Discuss in Talk:Kernel (Magyar))

The factual accuracy of this article or section is disputed.

Reason: The keyboard does not work in rd.emergency so it cannot be used. (Discuss in Talk:Kernel (Magyar))

A rendszer módosítása érdekében Önnek root shell-re lesz szüksége azért, hogy a kernelpánik többé ne forduljon elő. Ha a kernelpánik a bootolás során jelentkezik, akkor többféle módszer létezik a root shell elérésére, mielőtt a számítógép teljesen lefagyna:

  • Indítsa újra a számítógépet az emergency, rd.emergency vagy -b kernelparaméterrel annak érekében, hogy Ön közvetlenül a root fájlrendszer felcsatolása és a systemd elindítása után megkapja a bejelentkezési promptot.
Megjegyzés Ennél a pontnál a root fájlrendszer csak olvasható módban lesz felcsatolva. Ön root felhasználóként hajtsa végre a mount -o remount,rw / parancsot a módosítások elvégzése érdekében.
  • Indítsa újra a számítógépet a rescue, rd.rescue, single, s, S vagy 1 kernelparaméterrel annak érdekében, hogy Ön közvetlenül a helyi fájlrendszerek felcsatolása után bejelentkezési promptot kaphasson.
  • Indítsa újra a számítógépet a systemd.debug_shell kernelparaméterrel annak érdekében, hogy Ön nagyon korai root shell-t kapjon a tty9 parancssorban. Váltson át rá a Ctrl+Alt+F9 billentyűkombinációval.
  • Kísérletezzen különböző kernelparaméterekkel történő újraindítással annak érdekében, hogy esetleg letiltsa azt a kernelfunkciót, amely a kernelpánikot okozza. Próbálja ki a "régi bevált" acpi=off és nolapic paramétereket.
Tipp Tekintse meg a kernel-parameters.html weboldalt az összes kernelparaméter tanulmányozása érdekében.
  • Végső megoldás gyanánt indítsa el a számítógépet egy Arch Linux telepítő adathordozóval, majd csatolja fel a root fájlrendszert a /mnt könyvtárba, és root felhasználóként hajtsa végre a arch-chroot /mnt parancsot.
  • Tiltsa le azt a szolgáltatást vagy programot, amely a kernelpánikot okozza, állítsa vissza a hibás szoftvercsomag-frissítést, vagy javítsa ki a beállításproblémát.
Tipp Ha az eredeti binárisan futtatható initial ramdisk képfájl megsérült, akkor szükség lehet egy új binárisan futtatható initial ramdisk képfájl létrehozására. A megsérülés akkor fordulhat elő, amikor egy kernelfrissítés megszakad. Új binárisan futtatható initial ramdisk képfájl létrehozása érdekében tekintse meg az mkinitcpio című leírást.

Hibakeresés regressziók esetén

Tekintse meg a General troubleshooting#Regressziók hibakeresése című leírást.

Próbálja ki a linux-mainlineAUR szoftvercsomagot annak érdekében, hogy Ön ellenőrizze, vajon a probléma már javítva van-e az upstreamben. A rögzített megjegyzés említ egy szoftvercsomag-tárolót is, amely már forráskódból előre lefordított kerneleket tartalmaz, így lehet, hogy nem szükséges manuálisan lefordítani, ami egyébként időigényes folyamat lehet.

Érdemes lehet megfontolni az LTS kernel (linux-lts szoftvercsomag) kipróbálását is azoknak a problémáknak a hibakeresésére, amelyek nem jelentek meg mostanában. Az LTS kernel régebbi verziói megtalálhatók az Arch Linux Archívumban.

Ha a probléma továbbra is fennáll, akkor Ön a bisect módszerrel vizsgálja meg a linux-gitAUR szoftvercsomagban megtalálható kernelt, és jelentse a hibát a kernelfolyamatnak megfelelően a regressziók jelentésére vonatkozó útmutató szerint. A MAINTAINERS fájlban található Bugtracker (B:) bejegyzéstől függően ez magában foglalhatja hibajelentés megnyitását az alrendszerek levelezőlistáin, a Kernel Bugzilla rendszerében, vagy más hibakövető rendszerekben, például a DRM Gitlab weboldalon. Fontos, hogy Ön az alapverziót (a "vanilla" verziót) próbálja ki minden patch nélkül annak érdekében, hogy megbizonyosodjon arról, hogy nem azok okozzák a problémát. Ha egy patch okozza a hibát, akkor jelentse azt a patch szerzőjének.

Megjegyzés A kernel bisectálása sok időt vehet igénybe, mivel előfordulhat, hogy Önnek forráskódból a kernelt többször is újra kell majd fordítania.

Kisebb kernel létrehozása

A kernel forráskódból történő lefordításának az ideje lerövidíthető azáltal, hogy Ön csak a helyi rendszer által igényelt kernelmodulokat hozza létre forráskódból a modprobed-db használatával, vagy a make localmodconfig parancs segítségével. Amennyiben Ön például egy hálózati problémát szeretne hibakeresni, akkor természetesen teljes mértékben kihagyhatja a nem releváns illesztőprogramokat, például a hangért felelős illesztőprogramokat a lefordítási folyamatból.

További olvasnivaló a témában