Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

tux:kernel_update [2011/05/17 21:00]
wikisysop [Kernel konfigurieren]
tux:kernel_update [2012/04/19 14:05] (aktuell)
wikisysop
Zeile 2: Zeile 2:
 ===== Neuen Kernel in Debian (Squeeze) einspielen ===== ===== Neuen Kernel in Debian (Squeeze) einspielen =====
  
-Grundvoraussetzung für das Kompilieren eines neuen Linux Kernels in Debian, sind die Quellen. Man kann entweder auf die offiziellen Linux Kernel ​verwenden, welche auf www.kernel.org heruntergeladen werden können, oder die für Debian angepassten Quellen im Online Repository. In der Debian Variante sind idR bereits einige an die Distribution angepassten Patches enthalten, so dass Sie auf diese zurückgreifen sollten, sobald diese Quellen verfügbar sind.+Grundvoraussetzung für das Kompilieren eines neuen Linux Kernels in Debian, sind die Quellen. Man kann entweder auf die offiziellen Linux Kernel ​zurückgreifen, welche auf www.kernel.org heruntergeladen werden können, oder die für Debian angepassten Quellen im Online Repository. In der Debian Variante sind idR bereits einige an die Distribution angepassten Patches enthalten, so dass Sie auf diese zurückgreifen sollten, sobald diese Quellen verfügbar sind.
 \\  \\ 
 ==== Kernel Quellen und notwendige Pakete installieren ==== ==== Kernel Quellen und notwendige Pakete installieren ====
Zeile 14: Zeile 14:
 <​xterm>#​ <fc #​008000>​aptitude install linux-source-2.6.38</​fc></​xterm>​ <​xterm>#​ <fc #​008000>​aptitude install linux-source-2.6.38</​fc></​xterm>​
  
-<fc #​800000>​**Note**</​fc>:​ Zur Erstellung dieser Anleitung waren die Kernel Sources für das Release 2.6.18 noch nicht im normalen ​Repository ​verfügbar, Sie können aber aber über das >><​fc #​008000>​Testing</​fc><< ​State Repository ​bereits darauf zugreifen. Erweitern Sie Ihre >><​fc #​008000>/​etc/​apt/​sources.list</​fc><<​ dafür wie folgt mit der Zeile >><​fc #​008000><​nowiki>​deb http://​ftp.debian.org/​debian/​ testing main contrib non-free</​nowiki></​fc><<​ und führen ein >><​fc #​008000>​aptitude update</​fc><<​ aus:\\ <​file|/​etc/​apt/​sources.list>#​ deb cdrom:​[Debian GNU/Linux 6.0.0 _Squeeze_ - Official i386 NETINST Binary-1 20110205-14:​34]/​ squeeze main+<fc #​800000>​**Note**</​fc>:​ Zur Erstellung dieser Anleitung waren die Kernel Sources für das Release 2.6.38 noch nicht im normalen ​Stable Archiv ​verfügbar, Sie können aber derzeit (05/​11) ​über das >><​fc #​008000>​Testing</​fc><< ​Archiv ​bereits darauf zugreifen. Erweitern Sie Ihre >><​fc #​008000>/​etc/​apt/​sources.list</​fc><<​ dafür wie folgt mit der Zeile >><​fc #​008000><​nowiki>​deb http://​ftp.debian.org/​debian/​ testing main contrib non-free</​nowiki></​fc><<​ und führen ein >><​fc #​008000>​aptitude update</​fc><<​ aus: 
 + 
 +<​file|/​etc/​apt/​sources.list>#​ deb cdrom:​[Debian GNU/Linux 6.0.0 _Squeeze_ - Official i386 NETINST Binary-1 20110205-14:​34]/​ squeeze main
  
 #deb cdrom:​[Debian GNU/Linux 6.0.0 _Squeeze_ - Official i386 NETINST Binary-1 20110205-14:​34]/​ squeeze main #deb cdrom:​[Debian GNU/Linux 6.0.0 _Squeeze_ - Official i386 NETINST Binary-1 20110205-14:​34]/​ squeeze main
Zeile 27: Zeile 29:
 deb-src http://​ftp.de.debian.org/​debian/​ squeeze-updates main deb-src http://​ftp.de.debian.org/​debian/​ squeeze-updates main
  
-deb http://​ftp.debian.org/​debian/​ testing main contrib non-free</​file>​\\ <fc #​800000>​**Important**:</​fc>​ Nachdem Sie die Kernel Quellen aus diesem Repository ​geladen haben, entfernen Sie bitte unbedingt diese Quelle wieder aus Ihrer >><​fc #​008000>​sources.list</​fc><<​ und führen ein >><​fc #​008000>​aptitude update</​fc><< ​erneut ​aus, andernfalls werden auch alle weiteren Pakete aus dieser ​- noch nicht wirklich freigegeben - Quelle ​geladen!+deb http://​ftp.debian.org/​debian/​ testing main contrib non-free</​file>​ 
 + 
 +<fc #​800000>​**Important**:</​fc>​ Nachdem Sie die Kernel Quellen aus dem >><​fc #​008000>​Testing Archiv</​fc><< ​geladen haben, entfernen Sie unbedingt diese Quelle wieder aus Ihrer >><​fc #​008000>​sources.list</​fc><<​ und führen ​erneut ​ein >><​fc #​008000>​aptitude update</​fc><<​ aus, andernfalls werden ​uU auch weiteren Pakete aus diesem ​- noch nicht wirklich freigegeben - Archiv ​geladen!
  
 Navigieren Sie nach >><​fc #​008000>/​usr/​src</​fc><<​ und entpacken Sie das Archiv: Navigieren Sie nach >><​fc #​008000>/​usr/​src</​fc><<​ und entpacken Sie das Archiv:
Zeile 132: Zeile 136:
 ==== Kernel und Debian Paket bauen ==== ==== Kernel und Debian Paket bauen ====
  
-Führen Sie das Kommando >><​fc #​008000>​make-kpkg clean</​fc><<​ aus, um die Verzeichnishirachie ​der Kernel-Quellen aufzuräumen und die >><​fc #​008000>​kernel -package</​fc><<​ Parameter zurückzusetzen:​+Das Paket >><​fc #​008000>​kernel-package</​fc><<​ bringt das Programm >><​fc #​008000>​make-kpkg</​fc><<​ mit, welches unter Debian anstelle der Linux üblichen Kommandos >>​make menuconfig; make dep; make bzImage; make modules<<​ verwendet werden kann. >><​fc #​008000>​make-kpkg</​fc><<​ bedient nun das Debian Paketmanagement (dpkg) adäquat und kompiliert den neuen Kernel, erzeugt je nach verwendeter Optionen ein über das Paketmanagement installierbares deb-Paket, welches neben dem Kernel auch gleich die Initial-RAM-Disk enthält, erteilt Revisionsnummern für das Paket-Management etc.   
 + 
 +Führen Sie aber zuerst ​das Kommando >><​fc #​008000>​make-kpkg clean</​fc><<​ aus, um die Verzeichnishierachie ​der Kernel-Quellen aufzuräumen und die >><​fc #​008000>​kernel -package</​fc><<​ Parameter zurückzusetzen. Dadurch wird zwar eine vollständige Neukompilierung des Kernels veranlasst, was je nach inkludierter Optionen und abhängig von der Leistungsfähigkeit des Rechners ca. eine Stunde bis hin zu mehreren Stunden dauern kann aber zB bei der Angabe einer neuen Kernelrevision notwendig sein wird:
  
 <​xterm>/​usr/​src/​linux # <fc #​008000>​make-kpkg clean</​fc></​xterm>​ <​xterm>/​usr/​src/​linux # <fc #​008000>​make-kpkg clean</​fc></​xterm>​
Zeile 138: Zeile 144:
 Anschließend kompilieren Sie den Kernel, bauen das Debian Paket und erstellen zugleich die Initial-Ramdisk:​ Anschließend kompilieren Sie den Kernel, bauen das Debian Paket und erstellen zugleich die Initial-Ramdisk:​
  
-<​xterm>/​usr/​src/​linux # <fc #​008000>​make-kpkg --rootcmd fakeroot kernel_image --append_to_version -pronto --initrd</​fc></​xterm>​+<​xterm>/​usr/​src/​linux # <fc #​008000>​make-kpkg --rootcmd fakeroot kernel_image --revision ​pronto.1 --initrd</​fc></​xterm>​
  
-Die Option ​>><​fc #​008000>​--append_to_version</​fc><< ​gefolgt von dem >><​fc #​008000>​-pronto</​fc><< ​hier im Beispiel hängt einfach ​das >><​fc #​008000>​-pronto</​fc><< ​an den neuen Kernel drandamit man ihnfür was auch immer, kennzeichnen kann. Diese Angabe ist optional.+  * Die Optionen ​>><​fc #​008000>​--rootcmd</​fc><< ​und >><​fc #​008000>​fakeroot</​fc><<​ sind nur notwendig, wenn der User, welcher das Kommando ausführt nicht >><​fc #​008000>​root</​fc><<​ ist. 
 +  * Die Option >><​fc #​008000>​kernel_image</​fc><<​ ein Debian Paket mit dem Linux-Kernel,​ der aus dem Quellcode übersetzt wird und aller konfigurierten Module. 
 +  * Die Option ​>><​fc #​008000>​--revision ​pronto.1</​fc><< ​erzeugt eine Revisionsnummer (pronto.1) für das Debian Paket und wird eigentlich nur vom Paket-Management verwendet. 
 +  * Die Option ​>><​fc #​008000>​--initrd</​fc><< ​ruft alle zusätzlichen Aktionen aufwelche notwendig sindeine passende Init-RAM-Disk zu erzeugen.
  
 Das fertige Paket liegt anschließend in >><​fc #​008000>/​usr/​src</​fc><<​ und kann mit dem Befehl >><​fc #​008000>​dpkg -i //​[Paketname]//​.deb</​fc><<​ installiert werden: ​ Das fertige Paket liegt anschließend in >><​fc #​008000>/​usr/​src</​fc><<​ und kann mit dem Befehl >><​fc #​008000>​dpkg -i //​[Paketname]//​.deb</​fc><<​ installiert werden: ​
Zeile 146: Zeile 155:
 <​xterm>#​ <fc #​008000>​dpkg -i //​[Paketname]//​.deb</​fc></​xterm>​ <​xterm>#​ <fc #​008000>​dpkg -i //​[Paketname]//​.deb</​fc></​xterm>​
  
-An dieser Stelle wird automatisch >><​fc #​008000>​depmod</​fc><<​ aufgerufen, was die Modulliste aktualisiert. Ferner wird die Initial Ramdisk automatisch erstellt (>><​fc #​008000>​mkinitramfs-kpkg</​fc><<​) und der Bootloader ​Grub wird aktualisiert. Beim nächsten reboot, sollte Ihr System automatisch mit dem neuen Kernel starten.+An dieser Stelle wird automatisch >><​fc #​008000>​depmod</​fc><<​ aufgerufen, was die Modulliste aktualisiert. Ferner wird die Initial Ramdisk automatisch erstellt (>><​fc #​008000>​mkinitramfs-kpkg</​fc><<​) und der Bootloader ​Grub2 wird aktualisiert. Beim nächsten reboot, sollte Ihr System automatisch mit dem neuen Kernel starten.
  
 <​xterm>#​ <fc #​008000>​reboot</​fc></​xterm>​ <​xterm>#​ <fc #​008000>​reboot</​fc></​xterm>​
  
- --- //pronto 2011/05/16 00:00//+{{ :​tux:​kernel_3.png |}} 
 + 
 + --- //pronto 2011/05/16 00:​00// ​((http://​debiananwenderhandbuch.de/​kernelbauen.html))((http://​newbiedoc.sourceforge.net/​system/​kernel-pkg.html))
tux/kernel_update.1305658836.txt.gz (12754 views) · Zuletzt geändert: 2011/05/17 21:00 von wikisysop
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0