This file is indexed.

/usr/share/doc/doc-linux-de/FAQ/4.html is in doc-linux-de 2003.10-5.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="generator" content="HTML Tidy for Linux/x86 (vers 1st August 2004), see www.w3.org">
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta content="text/html; charset=us-ascii" http-equiv="content-type">
<meta content="Dies ist die FAQ der Gruppe de.comp.os.unix.linux (dcoul). Hier werden Antworten auf haeufig gestellte Fragen zum Thema Linux gegeben." name="description">
<meta content="dcoul, de.comp.os.unix.linux, linux, unix, faq" lang="de" name="keywords">
<meta content="Thomas Nesges (thomas@dcoul.de)" name="author">
<meta content="Sam J&Atilde;&curren;n 29 15:57:21 CET 2005" name="date">
<meta content="follow" name="robots">
<meta name="DC.Title" content="de.comp.os.unix.linux - FAQ">
<meta content="Thomas Nesges (thomas@dcoul.de)" name="DC.Creator">
<meta content="dcoul, de.comp.os.unix.linux, linux, unix, faq" name="DC.Subject">
<meta content="Dies ist die FAQ der Gruppe de.comp.os.unix.linux (dcoul). Hier werden Antworten auf haeufig gestellte Fragen zum Thema Linux gegeben" name="DC.Description">
<meta content="Thomas Nesges (thomas@dcoul.de)" name="DC.Publisher">
<meta name="DC.Contributor" content="Thomas Nesges (thomas@dcoul.de)">
<meta name="DC.Contributor" content="Karsten Merker (dcoul-faq@cologne.de)">
<meta name="DC.Contributor" content="Andreas Metzler (dcoulfaq@downhill.at.eu.org)">
<meta name="DC.Contributor" content="Christopher Splinter (chris-linux-faq@splinter.inka.de)">
<meta name="DC.Contributor" content="Nikolaus Rath (Nikolaus@rath.org)">
<meta name="DC.Contributor" content="Sven Hartge (linux-faq@ds9.argh.org)">
<meta name="DC.Contributor" content="Kai Haberzettl (kai@khaberz.de)">
<meta name="DC.Contributor" content="Jo Moskalewski (public@jmos.de)">
<meta name="DC.Contributor" content="Wolfgang Kaufmann (wk-articles@theparallax.com)">
<meta content="Sam J&Atilde;&curren;n 29 15:57:21 CET 2005" name="DC.Date">
<meta content="text" name="DC.Type">
<meta content="text/html" name="DC.Format">
<meta content="http://www.dcoul.de/faq/" name="DC.Identifier">
<meta content="de" name="DC.Language">
<meta content="http://www.koehntopp.de/php" name="DC.Relation">
<meta content="http://www.yanip.de" name="DC.Relation">
<meta content="linux, usenet" name="DC.Coverage">
<meta content="" name="DC.Rights">
<title>de.comp.os.unix.linux - FAQ</title>
<link href="dcoul-faq.css" type="text/css" rel="stylesheet">
</head>
<body>
<div class="content">
<p class="header"><a href="http://www.dcoul.de/faq/">http://www.dcoul.de/faq/</a></p>
<h2>4. Fragen zum Kernel</h2>
<div class="sectionindex">
<ol>
<li><a href="#4.speicherbelegt">Ich habe Linux gerade erst hochgefahren und fast mein gesamter Speicher ist schon belegt. Verbraucht Linux soviel Speicher?</a></li>
<li><a href="#4.speicherteilerkannt">Linux erkennt nur einen Teil meines Speichers. Wie kann ich das &auml;ndern?</a></li>
<li><a href="#4.plattform">Ich habe geh&ouml;rt, es gibt Linux auch auf anderen Plattformen wie z.B. DEC Alpha, Sun SPARC, MIPS oder m68k. Kann ich meine Linux-Programme auch auf diesen Plattformen ausf&uuml;hren?</a></li>
<li><a href="#4.bogomips">Warum zeigt mein Rechner einen geringeren (h&ouml;heren) BogoMips-Wert an als ein Rechner mit einem anderen Prozessor, obwohl mein Rechner tats&auml;chlich schneller (langsamer) ist?</a></li>
<li><a href="#4.fat32">Unterst&uuml;tzt Linux FAT32 (das mit Win95b a.k.a. OSR2 eingef&uuml;hrte neue Dateisystem)?</a></li>
<li><a href="#4.prockcore">Welchen Zweck hat die Datei <i>/proc/kcore</i> und warum belegt sie soviel Platz auf meiner Platte?</a></li>
<li><a href="#4.apm">Ich habe einen Kernel mit Unterst&uuml;tzung f&uuml;r APM (advanced power management), aber es funktioniert nicht bzw. nicht korrekt.</a></li>
<li><a href="#4.makezimage">Ich kann keinen Kernel mehr kompilieren: nach <code>make zImage</code> meldet das System <code>System is too big. Try using bzImage or modules.</code></a></li>
<li><a href="#4.battlnetmasq">Seit Kernel 2.2.15 funktioniert BattleNet &uuml;ber meinen Linux-Router mit Masquerading nicht mehr.</a></li>
<li><a href="#4.fstypenotsupported">Was bedeutet die Meldung <code>mount fs type devpts not supported by Kernel</code>?</a></li>
<li><a href="#4.makemenuconfig">Ich m&ouml;chte einen neuen Kernel compilieren, erhalte auf <code>make menuconfig</code> aber nur die Meldung <code>make: *** No rule to make target `menuconfig'. Stop.</code></a></li>
<li><a href="#4.update22_23">Was hat es mit den 2.5.x-Kerneln auf sich? Sollte man von 2.4.x updaten?</a></li>
<li><a href="#4.kernel26module">Ich habe auf Kernel 2.6.x geupgradet und es werden keine Module mehr geladen.</a></li>
<li><a href="#4.largefilesupport">Wie kann ich unter Linux mit Dateien gr&ouml;&szlig;er 2 GB arbeiten?</a></li>
<li><a href="#4.binfmt-elf-vergessen">Ich habe einen neuen Kernel kompiliert, dieser bootet aber nicht, sondern gibt die Fehlermeldung <code>Kmod: failed to exec /sbin/modprobe -s -k binfmt-464c, errno = 8</code> aus.</a></li>
<li><a href="#4.kapm-idled">Seit dem Upgrade auf Kernel 2.4 verbraucht der Prozess kapm-idled den Gro&szlig;teil der CPU-Leistung.</a></li>
<li><a href="#4.swapspace">Wie viel Swapspace brauche ich?</a></li>
<li><a href="#4.keinsharedmem">Seit dem Upgrade auf Kernel 2.4 zeigt <span class="file">/proc/meminfo</span> immer 0 Byte Shared Memory an.</a></li>
<li><a href="#4.ecn">Seit dem Upgrade auf Kernel 2.4 kann ich bestimmte Hosts im Internet nicht mehr erreichen.</a></li>
<li><a href="#4.dateisysteme">Was bedeutet Journaling-Filesystem? Welches Dateisystem ist das beste?</a></li>
<li><a href="#4.kernel26upgradesinn">Inzwischen ist Kernel 2.6 freigegeben worden, soll ich den neuen Kernel verwenden, was muss ich beachten?</a></li>
</ol>
</div>
<dl>
<dt class="question"><a class="faqlabel" name="4.speicherbelegt" id="4.speicherbelegt">4.1</a> Ich habe Linux gerade erst hochgefahren und fast mein gesamter Speicher ist schon belegt. Verbraucht Linux soviel Speicher?</dt>
<dd class="answer">Linux versucht, den vorhandenen Speicher m&ouml;glichst effizient zu nutzen. Daher wird der von Programmen zur Zeit nicht ben&ouml;tigte Speicher als Plattencache benutzt. Sobald ein Programm mehr Speicher anfordert, wird der Plattencache automatisch verkleinert und der freigewordene Speicher dem Programm zur Verf&uuml;gung gestellt. Es ist also vollkommen normal, dass der Speicher immer sehr voll zu sein scheint.</dd>
<dt class="question"><a class="faqlabel" name="4.speicherteilerkannt" id="4.speicherteilerkannt">4.2</a> Linux erkennt nur einen Teil meines Speichers. Wie kann ich das &auml;ndern?</dt>
<dd class="answer">Du teilst einfach dem Kernel explizit mit, wie viel Speicher du hast, indem du einen Kernelparameter &uuml;bergibst, bei 96 MB z.B. <code>mem=96M</code>. Wie Kernelparameter &uuml;bergeben werden, ist im BootPrompt-HOWTO beschrieben.<br>
Aber Windows erkennt doch problemlos den ganzen Speicher?<br>
Zum Abfragen der Speichergr&ouml;&szlig;e gibt es verschiedene BIOS-Funktionen, <i>int15/88</i>, die &auml;lteste, kann nur Speichergr&ouml;&szlig;en bis 64 MB &uuml;bermitteln. Linux benutzt sie, wenn keine der "besseren" Funktionen implementiert ist. <i>int15/e801</i> wird seit Kernel 2.0.36 (anno 1998) unterst&uuml;tzt und kann auch Speichergr&ouml;&szlig;en &uuml;ber 64 MB zuverl&auml;ssig zur&uuml;ckliefern, aktuelle BIOS (seit ca. 1999) bieten diese Funktion aber nicht mehr an. Kernel 2.4 verwendet daher wie Windows <i>int15/e820</i>, womit das Problem hoffentlich beseitigt ist. (Mittels <a href="http://www.pell.portland.or.us/~orc/Memory/">fancy-memory-patch</a> kann man auch &auml;lteren Kerneln die neue BIOS-Funktion beibringen.)<br>
int15/e801 und besonders int15/e820 melden nicht nur schlicht das obere Ende des Hauptspeichers zur&uuml;ck, sondern k&ouml;nnen z.B. auch &uuml;ber "L&ouml;cher" im Speicher (Memory Holes) und andere Dinge mehr informieren.<br>
Eine Beispielausgabe von Kernel 2.4.x:<br>
<code>BIOS-provided physical RAM map:<br>
BIOS-e820: 000000000009fc00 @ 0000000000000000 (usable)<br>
BIOS-e820: 0000000000000400 @ 000000000009fc00 (usable)<br>
BIOS-e820: 0000000000010000 @ 00000000000f0000 (reserved)<br>
BIOS-e820: 0000000000010000 @ 00000000ffff0000 (reserved)<br>
BIOS-e820: 0000000003f00000 @ 0000000000100000 (usable)<br></code></dd>
<dt class="question"><a class="faqlabel" name="4.plattform" id="4.plattform">4.3</a> Ich habe geh&ouml;rt, es gibt Linux auch auf anderen Plattformen wie z.B. DEC Alpha, Sun SPARC, MIPS oder m68k. Kann ich meine Linux-Programme auch auf diesen Plattformen ausf&uuml;hren?</dt>
<dd class="answer">Grunds&auml;tzlich nein. Die verschiedenen Plattformen verwenden unterschiedliche Prozessoren und sind daher nicht bin&auml;rkompatibel. F&uuml;r die Alphas gibt es eine Intel-Emulation, mit der auch Linux-Programme f&uuml;r Intel-Prozessoren dort ausgef&uuml;hrt werden k&ouml;nnen, aber diese ist wohl noch nicht vollkommen ausgereift.<br>
Sofern zu einem Programm der Sourcecode vorhanden ist, stellt es jedoch in der Regel kein Problem dar, ihn auf einer anderen Plattform unter Linux zu kompilieren.<br>
Die verschiedenen Linux/68k-Varianten sind untereinander bin&auml;rkompatibel, d.h. ein auf einem Amiga unter Linux/68k kompiliertes Programm l&auml;uft auch z.B. auf einem Atari TT unter Linux/68k und umgekehrt.</dd>
<dt class="question"><a class="faqlabel" name="4.bogomips" id="4.bogomips">4.4</a> Warum zeigt mein Rechner einen geringeren (h&ouml;heren) BogoMips-Wert an als ein Rechner mit einem anderen Prozessor, obwohl mein Rechner tats&auml;chlich schneller (langsamer) ist?</dt>
<dd class="answer">Der BogoMips-Wert ist kein Ma&szlig; f&uuml;r die Geschwindigkeit des Rechners, daher auch die Bezeichnung _Bogo_, das kommt vom engl. Wort <i>bogus</i>, was unsinnig, falsch oder irref&uuml;hrend bedeutet. Der Wert ist vom verwendeten Prozessortyp abh&auml;ngig und zwischen verschiedenen Prozessortypen nicht vergleichbar (beispielsweise liefert ein 486DX4-100 einen h&ouml;heren BogoMips-Wert als ein Pentium 100, obwohl der Pentium deutlich schneller ist, noch extremer ist der Vergleich zwischen einem AMD-K5 und einem Pentium). N&auml;heres dazu ist im BogoMips-Mini-HOWTO zu finden.</dd>
<dt class="question"><a class="faqlabel" name="4.fat32" id="4.fat32">4.5</a> Unterst&uuml;tzt Linux FAT32 (das mit Win95b a.k.a. OSR2 eingef&uuml;hrte neue Dateisystem)?</dt>
<dd class="answer">Ja, ab Kernel 2.0.35. F&uuml;r &auml;ltere Kernelversionen gibt es entsprechende Patches, jedoch ist es ratsam, statt der Verwendung des Patches auf Kernel 2.0.35 oder neuer upzudaten.</dd>
<dt class="question"><a class="faqlabel" name="4.prockcore" id="4.prockcore">4.6</a> Welchen Zweck hat die Datei <i>/proc/kcore</i> und warum belegt sie soviel Platz auf meiner Platte?</dt>
<dd class="answer">Die Dateien in /proc sind nur virtuell, d.h. sie belegen keinen Plattenplatz, auch wenn sie scheinbar eine L&auml;nge haben. Der Inhalt der Dateien in /proc wird vom Kernel bei Bedarf generiert. /proc/kcore ist ein Abbild des Hauptspeichers, d.h. die Datei ist genauso gro&szlig;, wie der vorhandenen Hauptspeicher (plus 4 KB).<br>
Das Proc-Dateisystem hat den Zweck, den Zugriff auf Systeminformationen mit <i>normalen</i> Dateioperationen zu erm&ouml;glichen, so dass man sie z.B. leicht in Skripten verwenden kann.</dd>
<dt class="question"><a class="faqlabel" name="4.apm" id="4.apm">4.7</a> Ich habe einen Kernel mit Unterst&uuml;tzung f&uuml;r APM (advanced power management), aber es funktioniert nicht bzw. nicht korrekt.</dt>
<dd class="answer">Die APM-Funktionen arbeiten in der Regel nur, wenn im BIOS des Rechners ebenfalls APM aktiviert wurde. Weitere Informationen zu APM im Allgemeinen und auf Laptops im Besonderen finden sich im Battery-Powered Mini-HOWTO, welches in den meisten Distributionen irgendwo unterhalb des Verzeichnisses /usr/doc liegt, sowie auf der Linux-Laptop-Page (vgl. <a href="3.html#3.laptop">Funktioniert Linux auf meinem Laptop?</a>)</dd>
<dt class="question"><a class="faqlabel" name="4.makezimage" id="4.makezimage">4.8</a> Ich kann keinen Kernel mehr kompilieren: nach <code>make zImage</code> meldet das System <code>System is too big. Try using bzImage or modules.</code></dt>
<dd class="answer">Die Meldung besagt, dass das erzeugte Kernel-Image zu gro&szlig; ist. Bei der traditionellen Methode der Kernelerzeugung darf der resultierende Kernel maximal 512KB gro&szlig; sein, ist er gr&ouml;&szlig;er, kann er von der Initialisierungsroutine nicht mehr korrekt entpackt werden. Um dieses Problem zu l&ouml;sen, gibt es zwei Alternativen: entweder man erzeugt mehr Treiber als Module und verkleinert damit das erzeugte Kernel-Image oder man verwendet statt <code>make zImage</code> (bzw. <code>make zlilo</code> oder <code>make zdisk</code>) <code>make bzImage</code> (respektive bzlilo oder bzdisk). Dabei wird ein anderes Speicherlayout verwendet, welches auch gr&ouml;&szlig;ere Kernel-Images zul&auml;sst. Die Bezeichnung <i>bzImage</i> steht dabei f&uuml;r <i>big zImage</i>, hat also nichts mit bzip2 zu tun. Heutzutage ist es weitgehend unproblematisch, generell <code>make bzImage</code> statt <code>make zImage</code> zu verwenden, lediglich &auml;ltere LILO- und Loadlin-Versionen k&ouml;nnen damit nicht umgehen.</dd>
<dt class="question"><a class="faqlabel" name="4.battlnetmasq" id="4.battlnetmasq">4.9</a> Seit Kernel 2.2.15 funktioniert BattleNet &uuml;ber meinen Linux-Router mit Masquerading nicht mehr.</dt>
<dd class="answer">In <i>Kernel 2.2.15</i> wurde eine Variable <code>sysctl_ip_masq_udp_dloose</code> eingef&uuml;hrt und standardm&auml;&szlig;ig auf 0 gesetzt. Dies verhindert nunmehr, dass f&uuml;r das Spiel notwendige UDP-Pakete in Richtung Windows-PC gelangen.<br>
<br>
L&ouml;sung:<br>
Stelle sicher, dass <i>Port 6112/udp</i> durch einen evtl. vorhandenen Paketfilter gelangt. F&uuml;ge zus&auml;tzlich diese Zeile in dein Firewallscript oder in dein ip-up-Script ein:<br>
<code>echo "2" &gt; /proc/sys/net/ipv4/ip_masq_udp_dloose</code><br>
<br>
WARNUNG:<br>
Alan Cox bewertet dies als Sicherheitsrisiko. Diese Einstellung stellt allerdings ein Verhalten wieder her, das bis einschlie&szlig;lich <i>Kernel 2.2.14</i> Standard war. Also Vorsicht damit!</dd>
<dt class="question"><a class="faqlabel" name="4.fstypenotsupported" id="4.fstypenotsupported">4.10</a> Was bedeutet die Meldung <code>mount fs type devpts not supported by Kernel</code>?</dt>
<dd class="answer">Mit der glibc-2.1 wurden <i>neue</i> Pseudo-Terminals eingef&uuml;hrt, die sich am Unix98-Standard orientieren und deshalb als <i>Unix98-PTYs</i> bezeichnet werden. F&uuml;r deren Nutzung wurde ein zus&auml;tzliches Pseudo-Filesystem, devpts, geschaffen.<br>
Daher muss f&uuml;r die Verwendung von Unix98-PTYs bei der Kernelkonfiguration unter <i>Character Devices</i> der Punkt <i>Unix98 PTY Support</i> und unter <i>Filesystems</i> der Punkt <i>/dev/pts filesystem for Unix98 PTYs</i> aktiviert sein.</dd>
<dt class="question"><a class="faqlabel" name="4.makemenuconfig" id="4.makemenuconfig">4.11</a> Ich m&ouml;chte einen neuen Kernel compilieren, erhalte auf <code>make menuconfig</code> aber nur die Meldung <code>make: *** No rule to make target `menuconfig'. Stop.</code></dt>
<dd class="answer">Das kann mehrere Ursachen haben. Die einfachste Variante: man befindet sich nicht im Kernel-Source-Verzeichnis (im Normalfall /usr/src/linux). Falls doch, ist kein Kernelsource installiert und muss nachinstalliert werden. F&uuml;r SuSE-Nutzer: anscheinend werden bei SuSE 6.2 die Kernelsourcen nicht mehr standardm&auml;&szlig;ig installiert, sofern sie bei der Installation nicht explizit ausgew&auml;hlt wurden.</dd>
<dt class="question"><a class="faqlabel" name="4.update22_23" id="4.update22_23">4.12</a> Was hat es mit den 2.5.x-Kerneln auf sich? Sollte man von 2.4.x updaten?</dt>
<dd class="answer">Alle Kernel mit einer ungeraden Minor-Nummer (die Nummer an zweiter Stelle, also bei 2.5.x die <i>5</i>) sind Entwickler-Kernel. Diese enthalten experimentelle Funktionen, lassen sich eventuell gar nicht kompilieren oder k&ouml;nnen im Extremfall auch Daten auf der Festplatte zerst&ouml;ren. Daher sollte man diese Kernel nur verwenden, wenn man wirklich wei&szlig;, was man tut. F&uuml;r den <i>Normaluser</i> sind Entwicklerkernel ungeeignet und Beschwerden &uuml;ber Probleme mit Entwicklerkerneln werden in den de.comp.os.unix.linux-Newsgroups im Regelfall ignoriert.</dd>
<dt class="question"><a class="faqlabel" name="4.kernel26module" id="4.kernel26module">4.13</a> Ich habe auf Kernel 2.6.x geupgradet und es werden keine Module mehr geladen.</dt>
<dd class="answer">F&uuml;r Kernel 2.6 sind die <code>module-init-tools</code> und nicht mehr die <code>modutils</code> f&uuml;r das Laden von Modulen zust&auml;ndig. Installiere enweder ein vom Hersteller deiner deiner Distribution bereitgestelltes Paket oder kompiliere die Sourcen von <a href="ftp://ftp.kernel.org/pub/linux/kernel/people/rusty/modules/">ftp://ftp.kernel.org/pub/linux/kernel/people/rusty/modules/</a>.<br>
Damit wirst du aber vermutlich nicht alle Probleme, die mit einem neuen Kernel auf dich zukommen, gel&ouml;st haben, lies Kernelquelltext/Documentation/Changes und &uuml;berpr&uuml;fe, ob du die erforderlichen Programme in den n&ouml;tigen Versionen installiert hast.</dd>
<dt class="question"><a class="faqlabel" name="4.largefilesupport" id="4.largefilesupport">4.14</a> Wie kann ich unter Linux mit Dateien gr&ouml;&szlig;er 2 GB arbeiten?</dt>
<dd class="answer">Zuerst einmal m&uuml;ssen die Programme, welche mit Dateien &gt; 2 GB arbeiten sollen, andere Betriebssystemaufrufe verwenden als bisher (Nat&uuml;rlich kann man mit diesen trotzdem auch kleinere Dateien erzeugen), da der Zeiger f&uuml;r die Dateiposition von 32 auf 64 Bit gestiegen ist. Dies ist bei l&auml;ngst noch nicht allen Programmen der Fall. Dann m&uuml;ssen Kernel und glibc noch entsprechende Unterst&uuml;tzung anbieten. Auf einer 64-Bit Maschine (z.B. Alphastation) ist das bereits der Fall. Auf 32 Bit Maschinen wie i386 und PowerPC muss man dazu auf einen 2.4 Kernel (oder einen 2.2 Kernel entsprechend patchen) und eine glibc &gt; 2.1.3 umsteigen.<br>
In Stichworten:<br>
<ul>
<li>Kernel 2.4. (Oder einen 2.2er Kernel mit LFS-patch)</li>
<li>Glibc 2.1.3 oder glibc 2.2, die gegen die Header eines LFS-f&auml;higen Kernels (s.o.) kompiliert ist.</li>
<li>Anwendungen, die LFS verwenden sollen, m&uuml;ssen entsprechend modifiziert worden sein</li>
<li>Ein Filesystem, das LFS unterst&uuml;tzt. Ext2, ReiserFS</li>
</ul>
Genauer steht das alles auf <a href="http://www.suse.de/~aj/linux_lfs.html">http://www.suse.de/~aj/linux_lfs.html</a>.</dd>
<dt class="question"><a class="faqlabel" name="4.binfmt-elf-vergessen" id="4.binfmt-elf-vergessen">4.15</a> Ich habe einen neuen Kernel kompiliert, dieser bootet aber nicht, sondern gibt die Fehlermeldung <code>Kmod: failed to exec /sbin/modprobe -s -k binfmt-464c, errno = 8</code> aus.</dt>
<dd class="answer">Du hast beim Konfigurieren des Kernels<br>
<code>Kernel support for ELF binaries<br>
CONFIG_BINFMT_ELF</code><br>
nicht ausgew&auml;hlt. Diese Unterst&uuml;tzung f&uuml;r das unter Linux &uuml;bliche Format von ausf&uuml;hrbaren Programmen und Bibliotheken muss <i>fest</i> im Kernel einkompiliert sein und nicht als Modul, da insbesondere <code>modprobe</code> und <code>insmod</code>, die f&uuml;r das Laden von Kernelmodulen n&ouml;tig sind, im ELF-Format vorliegen.</dd>
<dt class="question"><a class="faqlabel" name="4.kapm-idled" id="4.kapm-idled">4.16</a> Seit dem Upgrade auf Kernel 2.4 verbraucht der Prozess kapm-idled den Gro&szlig;teil der CPU-Leistung.</dt>
<dd class="answer">
<p>Wenn dein Linux Kernel mal nicht mit irgendwas besch&auml;ftigt ist, sprich ein paar Mikrosekunden lang kein Prozess was erledigt haben m&ouml;chte ist der Kernel "idle" (im Leerlauf). (z.B: alle Prozesse schlafen und warten auf ein bestimmtes Event, wie das Beenden einer I/O-Operation auf der Festplatte, also auf den Interrupt vom HDD-Controller o.&auml;.) Hast du nun APM (Advanced Power Management) aktiviert und wird es auch von deiner Hardware unterst&uuml;tzt, so weckt der Kernel nach einer bestimmten Zeit, die er idle ist, den "kapm-idled" Daemon (siehe "d" am Ende des Namens), der wiederum &uuml;ber einen APM BIOS Call die Hardware in "idle" (Powersaving) versetzt, was dann dazu f&uuml;hrt, dass w&auml;hrend dieser Phase, in der der Kernel eh nichts zu tun hat, Strom gespart werden kann (o.&auml;.), was vor allem bei Notebooks sehr hilfreich sein kann.</p>
<p>Die Aussage, der APM-idle Daemon "verballere" deine knappe CPU-Leistung, ist damit also vollkommen unsinnig, da der kapm-idled immer nur dann dran kommt, wenn der Kernel eh eine gewisse Zeit lang nichts zu tun hat. Aber wenn es dich beruhigt, kannst du es auch ausschalten oder es gleich aus dem Kernel heraus lassen beim n&auml;chsten neuen Kernel. Daf&uuml;r musst du die Option <i>CONFIG_APM_CPU_IDLE</i> deaktivieren.</p>
</dd>
<dt class="question"><a class="faqlabel" name="4.swapspace" id="4.swapspace">4.17</a> Wie viel Swapspace brauche ich?</dt>
<dd class="answer">
<p>Swapspace dient dazu, den verf&uuml;gbaren Arbeitsspeicher zu vergr&ouml;&szlig;ern, d.h. Festplattenspeicher als RAM-Ersatz zu ben&uuml;tzen. Wie viel man davon braucht, ist abh&auml;ngig vom Nutzungsprofil und der Kernelversion. Insgesamt sollte soviel zur Verf&uuml;gung stehen, dass nie mehr ben&ouml;tigt wird. Da Linux <b>sehr</b> unwillig reagiert, wenn der Speicher ausgeht (es werden der Reihe nach Prozesse gekillt.), sollte du den Swapspace gro&szlig;z&uuml;gig bemessen. Als <b>grobe</b> Faustregel kann daher Swap = RAM dienen.</p>
<p>Wie gro&szlig; darf eine einzelne Swappartition bzw. Swapdatei sein?<br>
Bis einschlie&szlig;lich Kernel 2.0.* gab es eine Beschr&auml;nkung auf 128MB, seit Kernel 2.2 liegt sie bei 2 GB.</p>
<p>Swappartition oder Swapdatei?<br>
Eine Swappartition ist <i>prinzipiell</i> schneller, da der umst&auml;ndliche Zugriff &uuml;ber das Dateisystem, auf dem Swapdatei liegt, weg f&auml;llt; allerdings kann dieser Gewinn durch ung&uuml;nstige Platzierung der Swappartition zunichte gemacht werden (Swap am einen Ende der Festplatte, Daten am anderen, der Festplattenkopf muss dauernd hin und her schwenken.). Siehe Multi-Disk HOWTO.</p>
</dd>
<dt class="question"><a class="faqlabel" name="4.keinsharedmem" id="4.keinsharedmem">4.18</a> Seit dem Upgrade auf Kernel 2.4 zeigt <span class="file">/proc/meminfo</span> immer 0 Byte Shared Memory an.</dt>
<dd class="answer">
<p>Wegen interner &Auml;nderungen kann der Kernel diesen Wert nicht mehr billig berechnen, um kompatibel zu alten Utilities zu bleiben, gibt er daher immer 0 aus. Siehe <a href="http://www.tux.org/lkml/#s14-3">http://www.tux.org/lkml/#s14-3</a>.</p>
<p>Damit POSIX Shared Memory nutzbar ist, muss bei der Kernelkompilation <code>Virtual memory file system support</code> aktiviert werden und das entsprechende Filesystem muss gemountet werden.</p>
<p>Bis Kernel 2.4.3 lautet der entsprechende Eintrag in <span class="file">/etc/fstab</span><br>
<code>none /dev/shm shm defaults 0 0</code>,<br>
ab 2.4.4 (und f&uuml;r fr&uuml;here Kernel mit tmpfs-patch)<br>
<code>tmpfs /dev/shm tmpfs defaults 0 0</code>.<br>
POSIX Shared Memory wird momentan nur von wenigen meist kommerziellen Programmen (SAP) verwendet, wesentlich h&auml;ufiger wird SYSV-shmem verwendet, welches auch ohne Mounten von tmpfs verwendet werden kann und &uuml;ber dessen Nutzung das Programm <code>ipcs</code> Aufschluss gibt.</p>
</dd>
<dt class="question"><a class="faqlabel" name="4.ecn" id="4.ecn">4.19</a> Seit dem Upgrade auf Kernel 2.4 kann ich bestimmte Hosts im Internet nicht mehr erreichen.</dt>
<dd class="answer">
<p>Das kann daran liegen, dass dein Kernel Explicit Congestion Notification (ECN) verwendet, damit kann man in den Headern der IP-Pakete Informationen dar&uuml;ber, ob die Leitung ausgelastet ist, mit &uuml;bertragen. Leider gibt es noch Router oder Firewalls, die damit nicht zurechtkommen, und solche Pakete nicht weiterleiten, die Rechner dahinter sind daher nicht erreichbar.</p>
<p>Du kannst mit <code>cat /proc/sys/net/ipv4/tcp_ecn</code> den Status von ECN &uuml;berpr&uuml;fen, 0 bedeutet aus, 1 ein.</p>
<p>L&ouml;sungsm&ouml;glichkeiten:</p>
<ul>
<li>Kernel mit<br>
<code>TCP Explicit Congestion Notification support<br>
CONFIG_INET_ECN N<br></code>kompilieren</li>
<li>ECN beim Booten deaktivieren, trage einfach<br>
<code>net/ipv4/tcp_ecn = 0<br></code> in <span class="file">/etc/sysctl.conf</span> ein. Debian verwendet modifizierte Kernelsourcen, die als Alternative die M&ouml;glichkeit bieten, mit<br>
<code>Disable ECN support by default<br>
CONFIG_INET_ECN_DISABLED Y<br></code> ECN in den Kernel einzubauen, ohne es automatisch zu aktivieren.</li>
</ul>
<p>Lesetipps:</p>
<ul>
<li>RFC3168</li>
</ul>
</dd>
<dt class="question"><a class="faqlabel" name="4.dateisysteme" id="4.dateisysteme">4.20</a> Was bedeutet Journaling-Filesystem? Welches Dateisystem ist das beste?</dt>
<dd class="answer">
<p>Journaling funktioniert so: Jeder Schreibzugriff auf das Dateisystem wird zuerst im Journal bzw. Transaktionslog vorgemerkt, wenn die Daten sp&auml;ter wirklich ins Dateisystem eingetragen wurden, wird der entsprechende Eintrag im Journal als erledigt markiert. Das Transaktionslog wird nicht gecacht sondern synchron geschrieben. Wenn der Computer jetzt mittendrin abst&uuml;rzt, geht der fsck (File System Check) viel schneller und einfacher: Man schaut einfach im Journal nach, welche Daten noch zu schreiben sind, und macht das. Unvollst&auml;ndige Eintr&auml;ge im Journal werden entfernt. Beim klassischen fsck muss man dagegen das ganze Dateisystemen darauf untersuchen, ob noch irgendwo durch halbfertige Schreibvorg&auml;nge kaputte Daten liegen. Der Nachteil ist, dass diese zus&auml;tzliche Komplexit&auml;t ein wenig Platz auf der Festplatte und Rechenzeit kostet.</p>
<p>Die Frage nach dem besten Dateisystem ist schwer zu beantworten, alle haben ihre Vor- und Nachteile:</p>
<ul>
<li>ext2: Es ist das &Auml;lteste und daher ohne Zweifel das am Besten getestete, daher ist es extrem stabil, au&szlig;erdem gibt es mit fsck.ext2 ein funktionierendes Reparaturprogramm. Ext2 ist aber kein Journaling-FS. Ext2 und ext3 sind bei Verzeichnissen mit sehr vielen Dateien wesentlich langsamer als die anderen Dateisysteme.</li>
<li>ext3: Das ist einfach ext2+Journaling. Es ist daher geringf&uuml;gig langsamer als ext2. Die gro&szlig;en Vorteile im Vergleich den anderen J-FS sind, dass es gegen&uuml;ber ext2 nur ganz wenig neuen (und daher m&ouml;glicherweise fehlertr&auml;chtigen) Code enth&auml;lt und dass es kompatibel zu ext2 ist: Man kann ohne Datenverlust von ext2 zu ext3 konvertieren, au&szlig;erdem kann man ext3-Dateisysteme z.B. mit &auml;lteren Kerneln einfach auch als ext2 mounten.</li>
<li><a href="http://www.namesys.com/">ReiserFS</a>: Es ist das Journalling-FS, das schon am l&auml;ngsten im Linux-Kernel enthalten ist und daher auch &uuml;ber eine recht gro&szlig;e Anwenderbasis verf&uuml;gt. Weil es g&auml;nzlich anders als ext2 ist, gab es etliche Inkompabilit&auml;ten z.B. im Zusammenhang mit NFS. Quota-Support liegt nur als separater Kernelpatch vor. ReiserFS kann bei sehr vielen kleinen Dateien viel Platz sparen, da es nicht f&uuml;r jede einzelne Datei eine ganze Anzahl Bl&ouml;cke belegt.</li>
<li><a href="http://oss.sgi.com/projects/xfs/">XFS/Linux</a>: Port des bew&auml;hrten Dateisystem XFS von IRIX auf Linux. XFS bietet alles was das Herz begehrt (inklusive Quota und ACL) und ist auf IRIX seit 1994 im Einsatz. Das Projekt liegt als externer Kernelpatch vor, der Linux Port ist noch recht jung, &uuml;ber seine Stabilit&auml;t kann man daher noch keine definitiven Aussagen machen.</li>
<li><a href="http://oss.software.ibm.com/developerworks/opensource/jfs/">JFS</a>: Port des Dateisystems JFS von OS/2 auf Linux. Auf Grund seines Entwicklungsstandes nur m&auml;&szlig;ig interessant.</li>
</ul>
<p>Lesetipps:</p>
<ul>
<li><a href="http://unixhelp.ed.ac.uk/CGI/man-cgi?mount+8">mount (8)</a></li>
<li><a href="http://bulma.net/body.phtml?nIdNoticia=642">http://bulmalug.net/body.phtml?nIdNoticia=642</a></li>
<li><a href="http://freshmeat.net/articles/view/212/">http://freshmeat.net/articles/view/212/</a></li>
<li><a href="http://www.redhat.com/support/wpapers/redhat/ext3/why.html">http://www.redhat.com/support/wpapers/redhat/ext3/why.html</a></li>
</ul>
</dd>
<dt class="question"><a class="faqlabel" name="4.kernel26upgradesinn" id="4.kernel26upgradesinn">4.21</a> Inzwischen ist Kernel 2.6 freigegeben worden, soll ich den neuen Kernel verwenden, was muss ich beachten?</dt>
<dd class="answer">Ja, der neue Linux-Kernel ist da - aber langsam, es gibt einiges, was vor einem Update zu bedenken ist:
<ul>
<li>Was versprichst du Dir von dem neuen Kernel <i>konkret</i>? Warum m&ouml;chtest du ihn einsetzen?</li>
<li>Bist du in der Lage herauszufinden, welche zus&auml;tzlichen Programme oder neuen Programmversionen zu diesem Kernel ben&ouml;tigt werden? Lies Kernelquelltext/Documentation/Changes!</li>
<li>Bist du in der Lage, die geforderten Programm(versionen) zu finden und zu installieren?</li>
<li>Bedenke, dass die von den Distributoren &uuml;blicherweise standardm&auml;&szlig;ig verwendeten Kernel gepatcht sind und damit bestimmte zus&auml;tzliche Funktionen haben, die du evtl. auch nutzt. Diese Funktionalit&auml;ten sind mit dem neuen Kernel evtl. nicht mehr vorhanden.</li>
</ul>
<br>
Wenn du die ersten drei Fragen nicht wirklich sicher beantworten kannst, solltest du auf ein Update so lange verzichten, bis der Hersteller deiner Distribution eine f&uuml;r 2.6 angepasste Version bereitstellt.<br>
Abgesehen von neuen Programmversionen sind beim Upgrade auch noch &Auml;nderungen an der Modul- (Sound, CD/DVD, etc.) und Systemkonfiguration (sysfs, X11 ohne <code>nice</code>, Bootparameter, etc.) n&ouml;tig. Das "post-halloween document" <a href="http://www.kubieziel.de/computer/halloween-german.html">&Auml;nderungen im Linuxkernel 2.6</a> z&auml;hlt die wichtigsten &Auml;nderungen auf.<br></dd>
</dl>
<p class="footer">Build: 29.01.2005</p>
</div>
</body>
</html>