Újrafordítani a kernelt, a klub ASPLinux szerelmeseinek
„Fordítsuk le a kernel - nem gyártanak kattintással” - gyakran sóhajt, akik újrafordítani a kernelt nem fog elindulni. Míg az anya meglehetősen erős, de a újrafordítás elkerülhetetlen dolog, amivel minden rendszergazda Linux szembe kell néznie előbb vagy utóbb.
Én is nem kerülte el ezt a sorsot. Ebben a cikkben fogok menni, ha minden a kernelfordítással fázisban. Úgy vélem, hogy megadja a bizalmat és a válogatás már nem lesz az Ön számára a „lehetetlen küldetés”.
Egyszerűen fogalmazva, a mag - egy központi része a legtöbb operációs rendszer. A fő alapvető funkciók közé tartozik: folyamat-menedzsment, erőforrás-gazdálkodás, és így tovább. A lényege az első betöltődik a memóriába, amikor a számítógép be van kapcsolva, és a memóriában marad, amíg a készülék ki van kapcsolva. Ennek oka, hogy a kernel állandóan jelen van a memóriában, akkor kell a lehető legkisebb méret.
A Linux kernel egyetlen fájl, melynek neve vmlinuz. A kezdeti betűk jelentik VM virtuális memória (virtuális memória), és az utolsó betű z jelzi, hogy a fájl tömörítve. vmlinuz fájl a / boot könyvtárba.
Bizonyos esetekben folyamodott újrafordítani a kernelt?
Hozzáadni vagy eltávolítani támogatást azok vagy más eszköz:
Hogy befolyásolja bármely eszköz operációs rendszernek megfelelő illesztőprogramot. Például az USB készüléket a számítógéphez, biztosítanunk kell, hogy a megfelelő illesztőprogram, hogy működjön. Technikailag szólva, a kernel, akkor aktiválnia kell támogatja az USB-illesztőprogramot.
Ha módosítani szeretné a rendszer beállításait:
Rendszer opciók: támogatja a „top” lefoglalt memória erőforrás ellenőrzés korlátokat, és hasonlók. Ha szabályozni több mint 4 GB fizikai memória, a támogatást a „felső” memória (akár 64 GB).
Milyen lépésekben újrafordítani a kernelt?
1. Ellenőrizze és frissítse a szükséges csomagokat
2. Szerezz kernel forrás
3.Poluchit információt a számítógépes „vas”
4.Skonfigurirovat mag
5.Sozdat mag
6.Skonfigurirovat rakodó
7.Perezagruzit szerver
1. Ellenőrizze és frissítse a szükséges csomagokat
Ez a lépés csak akkor szükséges, nagyobb kernelekről 2,4-2,6. Ha a frissítés verziója 2.6.x 2.6.x, az első lépés kihagyható.
Mielőtt folytatja frissíteni a kernel, meg kell győződnie arról, hogy a rendszer képes arra, hogy egy új kernel. Ellenőrizze segédprogramok, amelyek kölcsönhatásba lépnek a rendszert, és győződjön meg róla, hogy a legújabb verziók. Ha nem, akkor az első frissítésére.
Basic csomag ellenőrzés és frissítése:
binutils, e2fsprogs, procps, gcc, és module-init-tools.
Ha frissíti a module-init-tools kell nagyon óvatos. Modul egy olyan program, hogy lehet benne az igény mag (ha szükséges). Module-init-tools tartalmazhat eszközök kezelésére Linux kernel modulok - rakodáshoz, átadása és eltávolítását modulokat. Alapvető eszközök állnak rendelkezésre:
* insmod
* rmmod
* modprobe
* depmod
* lsmod
Ahogy modprobe, insmod használják, hogy csatlakoztassa a modulokat. Az egyetlen különbség a kettő között az, hogy az insmod „tudja” a helyét modulok és nem akadályozza a függőséget. Modprobe „tudni” róla, nézi a fájlt / lib / modules /<версия ядра>/modules.dep
Hogyan kell telepíteni a module-init-tools?
# Tar -zxf module-init-tools-3.2.2.tar.gz
2. Állítsd be:
# Cd module-init-tools-3.2.2 # ./configure prefix = /
3. Nevezze át a meglévő 2.4 verziója a segédprogramot utility.old:
4. létrehozása és beállítása:
# make
# Make install
5. Futtassa a generál-modprobe.conf script adatokat átvinni a konfigurációs fájl modulok kernel verzió 2.4 (/etc/modules.conf) egy fájlt a kernel 2.6 (/etc/modprobe.conf)
6. Ellenőrizze a változat a rendelkezésre álló module-init-tools
2. előállítás kernel forrás
3. Szerezz információt a számítógépes „vas”
Információ a hardver konfiguráció a számítógép segítségével a következő parancsokat:
Ez az eszköz ad információt a hálózati térkép és az összes eszköz csatlakozik a géphez. Ha válaszként bemeneti lspci parancs, akkor kap a hiba "lscpi: command not found" (command not found), telepíteni kell pciutils-2.1.99.test8-3.4 rpm csomagot a szerveren.
Tipikus kimenete lspci így néz ki:
[Root] # lspci
00: 01.0 PCI híd: Broadcom BCM5785 [HT1000] PCI / PCI-X-híd
00: 02.0 Host bridge: Broadcom BCM5785 [HT1000] Legacy South Bridge
00: 02.1 IDE interfész: Broadcom BCM5785 [HT1000] IDE
00: 02.2 ISA bridge: Broadcom BCM5785 [HT1000] LPC
00: 03.0 USB Controller: Broadcom BCM5785 [HT1000] USB (rev 01)
00: 03.1 USB Controller: Broadcom BCM5785 [HT1000] USB (rev 01)
00: 03.2 USB Controller: Broadcom BCM5785 [HT1000] USB (rev 01)
00: 05,0 VGA kompatibilis vezérlő: ATI Technologies Inc Rage XL (rev 27)
00: 18.0 Host bridge: Advanced Micro Devices [AMD]
K8 [Athlon64 / Opteron] HyperTransport technológia Configuration
00: 18.1 Host bridge: Advanced Micro Devices [AMD]
K8 [Athlon64 / Opteron] Cím Térkép
00: 18.2 Host bridge: Advanced Micro Devices [AMD]
K8 [Athlon64 / Opteron] DRAM Controller
00: 18.3 Host bridge: Advanced Micro Devices [AMD]
K8 [Athlon64 / Opteron] Egyéb vezérlés
01: 0d.0 PCI híd: Broadcom BCM5785 [HT1000]
PCI / PCI-X Bridge (REV b2)
01: 0e.0 RAID busz vezérlő: Broadcom BCM5785 [HT1000]
SATA (Native SATA Mode)
02: 03.0 Ethernet controller: Broadcom Corporation
NetXtreme BCM5704 Gigabit Ethernet (rev 10)
02: 03.1 Ethernet controller: Broadcom Corporation
NetXtreme BCM5704 Gigabit Ethernet (rev 10)
Processzor információk nyerhetők a fájl / proc / cpuinfo
Egy hasznos segédprogram információt a „vas”. Ez ad részletes leírást a modulokat. Alkalmazása előtt modinfo parancsot, először meg kell találni, hogy milyen modulok vannak betöltve. Mert ez az lsmod parancs - megjeleníti a listát a betöltött modulokat.
[Root] # lsmod
libata 105 757 1 sata_svw
[Root] #
lsmod kiadott sata_svw modul, részletes információk a modul használatával kapott modinfo parancsot.
[Root] # modinfo sata_svw
fájlnév: /lib/modules/2.6.9-55.ELsmp/kernel/drivers/ata/sata_svw.ko
szerző: Benjamin Herrenschmidt
leírás: alacsony szintű driver K2 SATA vezérlő
Licenc: GPL
verzió: 2.0 9FF8518CB6CD3CB4AE61E35
vermagic: 2.6.9-55.ELsmp SMP 686 REGPARM 4KSTACKS gcc-3.4
függ: libata
alias: pci: v00001166d00000240sv * sd * bc * sc * i *
alias: pci: v00001166d00000241sv * sd * bc * sc * i *
alias: pci: v00001166d00000242sv * sd * bc * sc * i *
alias: pci: v00001166d0000024Asv * sd * bc * sc * i *
alias: pci: v00001166d0000024Bsv * sd * bc * sc * i *
[Root] #