/[ddp]/manuals/trunk/quick-reference/de/system.sgml
ViewVC logotype

Contents of /manuals/trunk/quick-reference/de/system.sgml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2144 - (show annotations) (download) (as text)
Sun Feb 9 16:01:14 2003 UTC (10 years, 3 months ago) by osamu
File MIME type: text/x-sgml
File size: 63338 byte(s)
Debian package 1.05-5 + VCS:SUV patch
1 <!-- CVS revision of this document "$Revision: 1.8 $" -->
2 <!-- CVS revision of original english document "1.41" -->
3 <chapt id="system">Debian Grundlagen
4
5 <!--
6
7 Merged from 4 SGML files in FAQ February 2002
8 ftparchives.sgml,
9 pkg_basics.sgml,
10 pkgtools.sgml,
11 uptodate.sgml
12
13 Then retitled under "Debian fundamentals" with
14 chapt moved to sect
15 sect moved to sect1
16 sect1 moved to sect2
17
18 Commented out reference to arches, should rewrite it to reference to
19 release manual/install manual soon.
20
21 Pieces imported from other parts of FAQ.
22 Small section from customizing.sgml regarding init/runlevel is added.
23 Small section from customizing.sgml regarding diverse is added.
24 Small section from software.sgml regarding non-English is added.
25
26 Merged from other SGML files in FAQ February 2002
27 kernel.sgml
28
29 Then retitled under "Debian fundamentals" with
30 chapt moved to sect
31 sect moved to sect1
32
33 Titles of sect/sect1 are changed to suit "Debian reference"
34
35 All minor edits I did left tracing information as comments.
36
37 Several sections were actually deleted since two consecutive -'s
38 made it impossible to comment out.
39
40 Also rewrote section to suit better for potato and woody.
41 Unless slink is used, how many people about dpkg-ftp :)
42
43 -->
44
45 <p>
46 Dieses Kapitel liefert grundlegende Informationen über das Debian System
47 für Nicht-Programmierer. Für die ultimativen Informationen vergleiche:
48 <p>
49 <list compact>
50 <item>Debian Policy Manual
51 <item>Debian Packaging Manual (Potato)
52 <item>Debian Developer's Reference
53 <item>Debian New Maintainers' Guide
54 <p>
55 </list>
56 aufgeführt unter <ref id="references">.
57
58 <p>
59 Wenn Sie nach nicht allzu ausführlichen "wie geht" Erklärungen suchen,
60 wechseln Sie direkt nach <ref id="package"> oder in andere relevante Kapitel.
61 <p>
62 Dieses Kapitel besteht aus Dokumenten aus der "Debian FAQ", größtenteils
63 umgeschrieben, um dem gewöhnlichen Debian System Administrator den Einstieg
64 zu erleichtern.
65
66 <!--
67 "FTP archives" is now changed to simple "archives" since it can be reached
68 through HTTP and other methods
69 -->
70
71 <sect id="ftparchives">Die Debian Archive
72
73 <sect1 id="dirtree">Verzeichnisstrukturen
74
75 <p>Die Software, welche für &debian; gepackt wurde, ist in einem der
76 vielen Verzeichnisbäume auf jedem
77 <url id="&mirror-site;" name="Debian Mirror">
78 durch FTP oder HTTP verfügbar.
79
80 <p>Die folgenden Verzeichnisse können auf jedem Debian Mirror unter
81 dem <tt>/debian/</tt> Verzeichnis gefunden werden:
82 <taglist>
83 <tag><file>/dists/</file>:
84 <item>Dieses Verzeichnis enthält die "Distributionen" und ist für
85 den Zugriff auf die aktuell verfügbaren Pakete in Debian ausgelegt.
86 Einige alte Pakete und die <tt>Packages.gz</tt> Dateien sind immer
87 noch hier zu finden.
88 <tag><file>/pool/</file>:
89 <item>Die neue Position aller Debian Pakete.
90 <tag><file>/tools/</file>:
91 <item>DOS Hilfsmittel zum Erzeugen von Bootdisketten, Partitionieren
92 der Festplatte, Komprimieren/Dekomprimieren von Dateien und zum
93 Booten von Linux.
94 <tag><file>/doc/</file>:
95 <item>Die grundlegenden Debian Dokumentationen wie die FAQ's,
96 Erläuterungen zum Fehler-Melde-System, usw.
97 <tag><file>/indices/</file>:
98 <item>Die Maintainer Datei und die Override Dateien.<!-- FIXME -->
99 <tag><file>/project/</file>:
100 <item>Hauptsächlich Material, welches nur für Entwickler von Interesse
101 ist, wie z.B.:
102 <taglist>
103 <tag><file>project/experimental/</file>:
104 <item>Dieses Verzeichnis enthält Pakete und Hilfsmittel, welche
105 noch entwickelt werden und sich noch im Alpha-Stadium befinden.
106 Benutzer sollten keine Pakete von hier verwenden, da sie selbst
107 für den Erfahrensten gefährlich und schädlich sind.
108 <tag><file>project/orphaned/</file>:
109 <item>Pakete, welche von ihrem alten Maintainer aufgegeben wurden
110 und aus der Distribution zurückgezogene Software.
111 </taglist>
112 </taglist>
113
114 <sect1 id="dists">Debian Distributionen
115
116 <p>Normalerweise befinden sich drei Debian Distributionen im <tt>dists</tt>
117 Verzeichnis. Dies sind die "stable", die "testing" und die "unstable"
118 Distribution. Manchmal gibt es auch eine "frozen" Distribution. Jede
119 Distribution ist ein symbolischer Link in das entsprechende Verzeichnis
120 mit einem Kodenamen im <tt>dists</tt> Verzeichnis.
121
122 <sect1 id="stable">Die <tt>stable</tt> Distribution
123
124 <p>Pakete der <tt>stable</tt> Distribution, &stabledebian;,
125 befinden sich im <tt>stable</tt> (symbolischer Link zu
126 <tt>&stablecodename;</tt>) Verzeichnis:
127 <list>
128 <item><file>stable/main/</file>:
129 Dieses Verzeichnis enthält die Pakete, welche formal die aktuellste Ausgabe
130 des &debian; Systems bilden.
131
132 <p>Diese Pakete entsprechen alle den <url name="Debian Free Software
133 Leitlinien" id="&social-contract;#guidelines"> (auch verfügbar unter
134 <file>&f-social-contract;</file> installiert durch
135 <package>&p-social-contract;</package>) und sind alle frei verfügbar
136 und verteilbar.
137
138 <item><file>stable/non-free/</file>: Dieses Verzeichnis enthält Pakete,
139 deren Weitergabe in gewisser Weise beschränkt ist. Genauere Informationen
140 sind in den jeweiligen Copyright Hinweisen zu finden.
141
142 <p>Zum Beispiel verbieten die Lizenzen einiger Pakete die kommerzielle
143 Verteilung. Andere können weitergegeben werden, aber nur als Shareware
144 und nicht als freie Software. Die Lizenzen all dieser Pakete müssen
145 genau studiert und möglicherweise ausgehandelt werden, bevor die Pakete
146 in irgendeiner Form (z.B. auf einer CD-ROM) weitergegeben werden.
147
148 <item><file>stable/contrib/</file>: Dieses Verzeichnis enthält Pakete,
149 welche DFSG-frei und <strong>frei verteilbar</strong> sind, aber irgendwie
150 von einem Paket abhängen, das <strong>nicht</strong> frei verteilbar und
151 somit nur im non-free Abschnitt zu finden ist.
152 </list>
153 Gegenwärtig befinden sich neue Pakete in Ergänzung zu obigen Verzeichnissen
154 unterhalb des <tt>pool</tt> Verzeichnisses (<ref id="pools">).
155
156 <p>Der aktuelle Status von Fehlern der <tt>stable</tt> Distribution ist
157 unter der <url id="&stable-problems;" name="Stable Problems"> Web Seite
158 aufgeführt.
159
160 <sect1 id="testing">Die <tt>testing</tt> Distribution
161
162 <p>Pakete der <tt>testing</tt> Distribution, &testingdebian;,
163 befinden sich im <tt>testing</tt> (symbolischer Link zu
164 <tt>&testingcodename;</tt>) Verzeichnis, nachdem sie einige Zeit in
165 <tt>unstable</tt> getestet wurden. Gegenwärtig befinden sich neue Pakete,
166 im Gegensatz zu den obigen Positionen, unterhalb des <tt>pool</tt>
167 Verzeichnisses (<ref id="pools">). Auch in <tt>testing</tt> gibt es die
168 <tt>main</tt>, <tt>contrib</tt> und <tt>non-free</tt> Unterverzeichnisse,
169 diese entsprechen den Verzeichnissen in <tt>stable</tt>.
170
171 <p>Diese Pakete müssen auf allen Architekturen auf denen sie zur Verfügung
172 stehen gleich aktuell sein und dürfen keine Abhängigkeiten aufweisen, welche
173 sie nicht installierbar machen; sie müssen auch weniger ausgabekritische
174 Fehler haben, als die Versionen in <tt>unstable</tt>. Auf diese Art hoffen
175 wir, dass <tt>testing</tt> fast immer zur Veröffentlichung bereit ist.
176 Mehr Details zu den Test Mechanismen sind unter
177 <url id="&testing-notes;"> verfügbar.
178
179 <p>Der aktuellste Status der <tt>testing</tt> Distribution ist unter
180 folgenden Seiten aufgeführt:
181 <list compact>
182 <item><url id="&update-excuses;"
183 name="update Ausflüchte">
184 <item><url id="&testing-problems;"
185 name="testing Probleme">
186 <item><url id="&release-critical;"
187 name="ausgabekritische Fehler">
188 <item><url id="&qa-base-bugs;"
189 name="Basissystem Fehler">
190 <item><url id="&qa-standard-bugs;"
191 name="Fehler in Standard und Task Paketen">
192 <item><url id="&qa-bugs;"
193 name="andere Fehler und Bemerkungen zu Fehlerausmerzungs Parties">
194 </list>
195
196 <sect1 id="unstable">Die <tt>unstable</tt> Distribution
197
198 <p>Pakete, welche zur <tt>unstable</tt> Distribution <tt>sid</tt> gehören,
199 werden unter <tt>unstable</tt> (symbolischer Link zu <tt>sid</tt>)
200 aufbewahrt, nachdem sie in das Debian Archiv geladen wurden und verbleiben
201 hier solange, bis sie nach <tt>testing</tt> verschoben werden. Neue Pakete
202 befinden sich unterhalb des <tt>pool</tt> Verzeichnis (<ref id="pools">).
203 Es gibt auch <tt>main</tt>, <tt>contrib</tt> und <tt>non-free</tt>
204 Unterverzeichnisse in <tt>unstable</tt>, welche dem selben Zweck dienen wie
205 in <tt>stable</tt>.
206
207 <p>Die <tt>unstable</tt> Distribution enthält ein Abbild des aktuellsten
208 Entwickler Systems. Benutzer sind willkommen diese Pakete zu benutzen
209 und zu testen, werden aber über den Status der Einsatzbereitschaft gewarnt.
210 Der Vorteil der Benutzung der <tt>unstable</tt> Distribution ist, dass man
211 immer auf dem Laufenden mit der aktuellsten &debian; Software ist &ndash;
212 geht jedoch etwas schief, so muss man auch damit umgehen können :-)
213
214 <p>Der aktuelle Status der Fehler in der <tt>unstable</tt> Distribution
215 wird auf der <url id="&unstable-problems;" name="Unstable Problems">
216 Web Seite aufgeführt.
217
218 <!-- Above was enough
219 <sect1 id="sid">The "sid" distribution
220
221 <p><strong>sid</strong> or <strong>unstable</strong> is the place where most of the packages
222 are initially uploaded. It will never be released directly, because packages
223 which are to be released will first have to be included in <strong>testing</strong>,
224 in order to be released in <strong>stable</strong> later on. sid contains packages
225 for both released and unreleased architectures.
226
227 <p>The name "sid" also comes from the "Toy Story" animated motion picture:
228 Sid was the boy next door who destroyed toys :-)
229 -->
230
231 <sect1 id="frozen">Die <tt>frozen</tt> Distribution
232
233 <p>Wenn die <tt>testing</tt> Distribution ausgereift ist, so wird aus ihr
234 frozen, was bedeutet, dass kein neuer Code mehr akzeptiert wird, nur noch
235 Bugfixes, wenn nötig.
236 Es wird auch ein neuer Verzeichnisbaum im <tt>dists</tt> Verzeichnis
237 angelegt und einem neuen Kodenamen zugeordnet. Die eingefrorene Distribution
238 durchläuft nun einige Monate lang Tests mit zwischenzeitlichen Updates und
239 Zwischenausgaben, welche "Test Zyklen" genannt werden.
240 (Der aktuelle <tt>woody</tt> Ausgabeprozess erzeugte keinen symbolischen
241 Link <tt>frozen</tt>, deshalb war <tt>frozen</tt> keine Distribution sondern
242 nur ein Entwicklungsschritt der <tt>testing</tt> Distribution.)
243
244 <p>Wir führen eine Liste aller Fehler in der frozen Distribution, welche
245 die Veröffentlichung eines Paketes verzögern können, sowie von Fehlern,
246 welche ähnliche Auswirkungen auf die gesamte Ausgabe haben.
247 Sobald die Anzahl der Fehler den maximal zulässigen Wert unterschreitet,
248 wird aus der eingefrorenen Distribution stable, sie wird veröffentlicht und
249 die letzte stable Distribution veraltet (und wird ins Archiv verschoben).
250
251 <sect1 id="codenames">Debian Distributions-Kodenamen
252
253 <p>Verzeichnisnamen im <tt>dists</tt> Verzeichnis, wie
254 <tt>&stablecodename;</tt> und <tt>&testingcodename;</tt> sind nur
255 "Kodenamen". Wenn sich eine &debian; Distribution in der Entwicklung
256 befindet, besitzt sie keine Versionsnummer sondern nur einen Kodenamen.
257 Der Grund für diese Kodenamen ist das Spiegeln der &debian; Distributionen
258 zu vereinfachen (wenn ein Verzeichnis wie <tt>unstable</tt> plötzlich zu
259 <tt>stable</tt> umbenannt wird, so müsste vieles erneut heruntergeladen
260 werden).
261
262 <p>Zur Zeit ist <tt>stable</tt> ein symbolischer Link zu
263 <tt>&stablecodename;</tt> und <tt>testing</tt> ist ein symbolischer Link zu
264 <tt>&testingcodename;</tt>. Das bedeutet, dass <tt>&stablecodename;</tt> die
265 aktuelle stable Distribution und <tt>&testingcodename;</tt> die aktuelle
266 testing Distribution ist.
267
268 <p><tt>unstable</tt> ist ein permanenter symbolischer Link zu <tt>sid</tt>,
269 so wie <tt>sid</tt> ständig für die unstable Distribution steht. <!-- (see <ref id="sid">).-->
270
271 <sect1 id="oldcodenames">In der Vergangenheit verwendete Kodenamen
272
273 <p>Andere bereits verwendete Kodenamen sind: <tt>buzz</tt> für Ausgabe 1.1,
274 <tt>rex</tt> für Ausgabe 1.2, <tt>bo</tt> für die Ausgaben 1.3.x,
275 <tt>hamm</tt> für Ausgabe 2.0, <tt>slink</tt> für Ausgabe 2.1 und
276 <tt>potato</tt> für Ausgabe 2.2.
277
278
279 <sect1 id="sourceforcodenames">Die Herkunft der Kodenamen
280
281 <p>Bisher wurden Personen aus dem Film <em>Toy Story</em> von Pixar
282 verwendet.
283 <list compact>
284 <item><strong>Buzz</strong> (Buzz Lightyear) war der Astronaut,
285 <item><strong>Rex</strong> war der Tyrannosaurus,
286 <item><strong>Bo</strong> (Bo Peep) war das Mädchen, welche sich um die
287 Schafe kümmerte,
288 <item><strong>Hamm</strong> war das Sparschwein,
289 <item><strong>Slink</strong> (Slinky Dog) war der Spielzeughund,
290 <item><strong>Sarge</strong> was der Anführer der grünen Plastik Armee
291 Männer,
292 <item><strong>Potato</strong> war natürlich Mr. Potato Head
293 (Mr. Kartoffelkopf),
294 <item><strong>Woody</strong> war der Cowboy.
295 <item><strong>Sid</strong> war ein Nachbarsjunge welcher Spielzeug
296 zerstörte.
297 </list>
298 <!--
299 more info in http://www.pixar.com/feature/toystory/toystory.html
300 or better yet http://us.imdb.com/M/title-exact?Toy&percnt;20Story&percnt;20(1995)
301 or actually:
302 http://us.imdb.com/Title?0114709 for TS1
303 http://us.imdb.com/Title?0120363 for TS2
304 we shouldn't put the links in, Pixar needs no additional propaganda
305 -->
306 <!--
307 characters not used from Toy Story (yet):
308 - Sarge and The Green Plastic Army Men
309 - Andy (the kid)
310 - Etch (Etch-a-Sketch) (the blackboard)
311 - Snake
312 - Robot
313 - Scud (Sid's dog)
314 and additional characters from Toy Story 2, also not yet used:
315 - Jessie (the Yodelling Cowgirl)
316 - Zurg (the Emperor)
317 - Wheezy (the penguin)
318 - Hannah (owner of Jessie)
319 - Stinky Pete the Prospector (the old fat guy)
320 - Mrs. Davis (Andy's Mom)
321 - Barbie
322 -->
323
324 <sect1 id="pools">Das <tt>pool</tt> Verzeichnis
325
326 <p>Früher wurden Pakete in dem Unterverzeichnis von <tt>dists</tt>
327 aufbewahrt, welches der verwendeten Distribution entsprach. Es stellte sich
328 heraus, dass dies einige Probleme verursachte, wie z.B. große
329 Bandbreitenverschwendung auf Mirrors nach einigen großen Änderungen.
330
331 <p>Pakete werden nun in einem großen "Pool" gespeichert, entsprechend dem
332 Namen des Quellpakets strukturiert. Um dies handhaben zu können, wurde der
333 Pool je nach Abschnitt (<tt>main</tt>, <tt>contrib</tt> und
334 <tt>non-free</tt>) sowie dem ersten Buchstaben des Quellpakets unterteilt.
335 Diese Verzeichnisse enthalten verschiedene Dateien: die Binärpakete für jede
336 Architektur und das Quellpaket von welchem die Binärpakete erzeugt wurden.
337
338 <p>Man kann herausfinden wo sich ein Paket befindet, indem man ein Kommando
339 wie <tt>apt-cache showsrc <var>Paketname</var></tt> aufruft und nach der
340 "Directory:" Zeile schaut. Das <package>apache</package> Paket wird z.B.
341 unter <file>pool/main/a/apache/</file> gespeichert. Da es sehr viele
342 <tt>lib*</tt> Pakete gibt, werden diese gesondert behandelt: das
343 <package>libpaper</package> Paket wird beispielsweise unter
344 <file>pool/main/libp/libpaper/</file> gespeichert.
345
346 <p>Die <tt>dists</tt> Verzeichnisse werden nach wie vor für die Index
347 Dateien, welche von Programmen wie <tt>apt</tt> verwendet werden, genutzt.
348 Ebenso wurden während dies geschrieben wird, ältere Distributionen noch nicht
349 angepasst um Pools zu nutzen, deswegen werden Sie auch Pfade finden, die
350 den Distributionsnamen wie <tt>potato</tt> oder <tt>woody</tt> im
351 "Filename" Feld enthalten.
352
353 <p>Normalerweise muss man sich um dies nicht kümmern, da neue <tt>apt</tt>
354 und wahrscheinlich ältere <tt>dpkg-ftp</tt> Programme (vergleiche
355 <ref id="howtocurrent">) dies problemlos handhaben. Sind Sie an weiteren
356 Informationen interessiert, so sei auf die <url id="&pool-faq;"
357 name="Debian Package Pools FAQ"> verwiesen.
358
359 <!-- bumped up from sect2 to sect1 -->
360 <sect1 id="sid-history">Historische Bemerkungen über <tt>sid</tt>
361
362 <p>Als das heutige <tt>sid</tt> noch nicht existierte, gab <!--FTP removed -->
363 es im Debianarchiv nur einen Zweig für nicht ausgereifte Pakete: es gab die
364 Annahme, dass, wenn eine Architektur im aktuellen <tt>unstable</tt> hinzukam,
365 sie veröffentlicht wurde, wenn diese Distribution zum neuen <tt>stable</tt>
366 Zweig wurde. Für viele Architekturen war das nicht der Fall, was dazu führte,
367 dass diese Verzeichnisse während der Veröffentlichung verschoben wurden.
368 Dies war unpraktisch, da die Verschiebung zu einer großen Bandbreitenbelastung
369 führte.
370
371 <p>Die Archiv Administratoren umgingen das Problem einige Jahre, indem
372 sie Binaries für nichtveröffentlichte Architekturen in einem speziellen
373 Verzeichnis namens <tt>sid</tt> bereitstellten. Für solche noch nicht
374 veröffentlichte Architekturen wurde das erste Mal als sie veröffentlicht
375 wurden ein Link vom aktuellen <tt>stable</tt> zu <tt>sid</tt> angelegt, und
376 später wurden sie wie üblich unter <tt>unstable</tt> veröffentlicht.
377 Diese Vorgehensweise war zum Teil für die Anwender verworren.
378
379 <p>Mit Beginn der Paket Pools (vergleiche <ref id="pools">) während der
380 Entwicklung der <tt>woody</tt> Distribution, wurden Binärpakete
381 unabhängig von der Distribution vorschriftsmäßig im Pool gehalten, so dass
382 die Veröffentlichung einer Distribution nicht länger zu einer großen
383 Bandbreitenverschwendung auf den Mirrors führte (es gibt dennoch
384 während der Entwicklung eine relativ große Bandbreitenauslastung).
385
386 <sect1 id="incoming">Heraufgeladene Pakete in <file>incoming</file>
387 <p>
388 Heraufgeladene Pakete befinden sich zunächst unter <url id="&incoming;">
389 nachdem sie überprüft wurden, um sicherzustellen, dass sie wirklich von
390 einem Debian Entwickler stammen, (und sie werden in das <file>DELAYED</file>
391 Unterverzeichnis verschoben, wenn das Paket nicht von einem Entwickler
392 stammt). Einmal pro Tag werden sie von <tt>incoming</tt> nach
393 <tt>unstable</tt> verschoben.
394 <p>
395 Im Notfall kann man Pakete aus <tt>incoming</tt> installieren, bevor sie
396 nach <tt>unstable</tt> kommen.
397 </sect1>
398
399 <sect1 id="snapshot">Wiederauffinden eines älteren Paketes
400 <p>
401 Während die aktuellsten Debian Distributionen unter dem <tt>debian</tt>
402 Verzeichnis auf jedem <url id="&mirror-site;" name="Debian Mirror"> zu
403 finden sind, werden die Archive für ältere Debian Distributionen wie Slink
404 unter <url id="&archivehome;"> oder unterhalb des <tt>debian-archive</tt>
405 Verzeichnis auf jedem Debian Mirror gehalten.
406 <p>
407 Ältere <tt>testing</tt> und <tt>unstable</tt> Pakete befinden sich
408 auf <url id="&snapshothome;">.
409
410 </sect1>
411
412 <sect1 id="archsections">Architektur abhängige Verzeichnisse
413 <!--
414 What are all those directories inside <tt>dists/stable/main</tt>?
415 Simplified this !!!
416 -->
417
418 <p>Innerhalb jedes der wichtigen Verzeichnisbäume
419 (<file>dists/stable/main</file>, <file>dists/stable/contrib</file>,
420 <file>dists/stable/non-free</file>, <file>dists/unstable/main/</file>, etc.),
421 befinden sich die Einträge der Binärpakete in Unterverzeichnissen, deren
422 Namen die Prozessorarchitektur kennzeichnen, für die sie kompiliert wurden.
423
424 <list>
425 <item><file>binary-all/</file>, für Pakete, welche Architektur unabhängig
426 sind. Dies umschließt z.B. Perl Skripte oder Dokumentationen.
427 <item><file>binary-<var>Plattform</var>/</file>, für Pakete, welche sich
428 auf einer einzelnen Binärplattform starten lassen.
429 <!-- Yes I simplified this -->
430 </list>
431
432 <p>Es ist anzumerken, dass die aktuellen Binärpakete von <tt>testing</tt>
433 und <tt>unstable</tt> sich nicht mehr länger in diesen Verzeichnissen,
434 dafür aber im <tt>pool</tt> Verzeichnis befinden. Die Index Dateien
435 (<file>Packages</file> und <file>Packages.gz</file>) befinden sich nach wie
436 vor für Abwärtskompatibilität dort.
437
438 <p>Für die aktuell unterstützten Binärarchitekturen vergleiche die
439 Release Notes der einzelnen Distributionen. Sie können unter der Release Notes
440 Seite für <url id="&stable-release;" name="stable"> und
441 <url id="&testing-release;" name="testing"> gefunden werden.
442
443 <!-- Removed, above release note shall be enough.
444 <p>See <ref id="arches"> for more information.
445 -->
446
447 <sect1 id="source">Der Quellcode
448
449 <p>Der Quellcode für alles im Debian System ist mit darin enthalten.
450 Außerdem <strong>fordern</strong> die Lizenzvereinbarungen der meisten
451 Programme im System, dass der Quellcode zusammen mit den Programmen
452 ausgeliefert wird, oder dass dem Programm Informationen beiliegen, wie er zu
453 erhalten ist.
454
455 <p>Normalerweise befindet sich der Quellcode in den <tt>source</tt>
456 Verzeichnissen, welche parallel zu allen Architektur spezifischen
457 Binärverzeichnissen sind oder aktueller im <tt>pool</tt> Verzeichnis
458 (vergleiche <ref id="pools">). Um den Quellcode zu erhalten, ohne sich mit
459 der Verzeichnisstruktur des <!--FTP--> Debian Archivs auseinandersetzen zu
460 müssen, kann ein Befehl wie <tt>apt-get source <var>Meinpaketname</var></tt>
461 genutzt werden.
462
463 <p>Einige Pakete wie z.B. <package>pine</package>, sind wegen deren
464 Lizenzbedingungen nur im Quellcode erhältlich. (Kürzlich wurde das
465 <package>pine-tracker</package> Paket bereitgestellt, um die Pine
466 Installation zu vereinfachen.) Die Anweisungen beschrieben in <ref id="port">
467 und <ref id="packaging"> bieten einige Möglichkeiten, um ein Paket manuell
468 zu packen.
469
470 <p>Der Quellcode kann, muss aber nicht für Pakete in <file>contrib</file>
471 und <file>non-free</file> Verzeichnissen, welche formal nicht Teil des
472 Debian Systems sind, verfügbar sein.
473
474 <sect id="pkg-basics">Das Debian Paketverwaltungssystem
475
476 <sect1 id="package-basics">Überblick über Debian Pakete
477
478 <p>Pakete enthalten im allgemeinen all die Dateien, welche nötig sind um
479 eine Menge von zusammengehörigen Kommandos oder Eigenschaften zu
480 implementieren. Es gibt zwei Typen von Debian Paketen:
481 <list>
482 <item><strong>Binärpakete</strong>, welche ausführbare Programme enthalten,
483 Konfigurationsdateien, man/info Seiten, Copyright Informationen und andere
484 Dokumentationen.
485 Diese Pakete werden in einem Debian spezifischen Archivformat verteilt
486 (vergleiche <ref id="deb-format">); sie zeichnen sich i.a. durch die
487 <tt>.deb</tt> Dateierweiterung aus. Binärpakete können mit Debians
488 <tt>dpkg</tt> Programm ausgepackt werden; Details sind in der Manual-Page
489 beschrieben.
490
491 <item><strong>Quellpakete</strong>, welche eine <tt>.dsc</tt> Datei
492 enthalten, die das Quellpaket beschreibt (inklusive der Namen der folgenden
493 Dateien), ebenso wie eine <tt>.orig.tar.gz</tt> Datei, welche den
494 ursprünglichen unveränderten Quellcode in gzip-komprimiertem tar Format
495 enthält und gewöhnlich eine <tt>.diff.gz</tt> Datei, die Debian spezifische
496 Änderungen zu den Originalquellen enthält. Das Programm
497 <tt>dpkg-source</tt> packt und entpackt Debian Quellpakete; Details sind
498 in der Manual-Page enthalten.
499 </list>
500
501 <p>Die Installation der Software durch das Paketsystem nutzt
502 "Abhängigkeiten", welche sorgfältig vom Paketbetreuer bestimmt wurden.
503 Diese Abhängigkeiten sind in der <tt>control</tt> Datei, welche jedem Paket
504 zugeordnet wird, enthalten.
505 Das Paket, welches den GNU C Compiler enthält (<package/gcc/), "hängt" z.B.
506 von dem Paketen <package/binutils/ "ab", das den Linker und Assembler
507 enthält. Versucht ein Benutzer <package/gcc/ zu installieren, ohne zuvor
508 <package/binutils/ installiert zu haben, so wird das Paketverwaltungssystem
509 (dpkg) die Fehlermeldung ausgeben, dass es <package/binutils/ benötigt
510 und die Installation von <package/gcc/ abbrechen. (Dennoch kann dieses
511 Verhalten vom Nutzer geändert werden; vergleiche <manref name="dpkg"
512 section="8">.) Für weitere Einzelheiten wird auf <ref id="depends">
513 verwiesen.
514
515 <p>Debian's Paketverwaltungstools können benutzt werden um:
516 <list>
517 <item>Pakete oder Teile von Paketen zu manipulieren und handzuhaben,
518 <item>dem Nutzer im Aufteilen von Paketen zu helfen, welche mittels
519 kleiner Medien wie Disketten übertragen werden müssen,
520 <item>Entwickler beim Erzeugen von Paketarchiven zu helfen und um
521 <item>den Nutzern bei der Installation von Paketen, die sich auf
522 entfernten <!--FTP-->Debian Archiven befinden, zu helfen.
523 </list>
524
525 <sect1 id="deb-format">Debian <!--Binär-->Paketformat
526
527 <p>Ein Debian "Paket" oder eine Debian Archivdatei enthält ausführbare
528 Dateien, Bibliotheken und Dokumentationen, welche einem bestimmten Programm
529 oder einer Menge von zugehörigen Programmen zugeordnet sind. Normalerweise
530 hat eine Debian Archivdatei einen Dateinamen der mit <tt>.deb</tt> endet.
531
532 <p>Die internen Einzelheiten dieses Debian Binärpaketformats werden in der
533 <manref name="deb" section="5"> Manual-Page beschrieben. Da dieses interne
534 Format in Zukunft geändert werden kann (zwischen verschiedenen Ausgaben von
535 &debian;), sollte stets <manref name="dpkg-deb" section="8"> für Änderungen
536 der <tt>.deb</tt> Dateien verwendet werden.
537
538 <!-- Below added by Osamu Not sure but should be right -->
539
540 <p>Zumindest in der Woody Distribution kann auf alle Debian Archivdateien
541 mit den Standard Unix Kommandos <prgn>ar</prgn> und <prgn>tar</prgn>
542 zugegriffen werden, auch wenn das <prgn>dpkg</prgn> Kommando nicht
543 verfügbar ist.
544
545 <sect1 id="pkgname">Namenskonventionen für Debians Paketdateinamen
546 <!--
547 Why are Debian package file names so long?
548 -->
549 <p>Die Debian <!--binary--> Paketdateinamen folgen den Konventionen:
550 <example>
551 <var>foo</var>_<var>Versionsnummer</var>-<var>DebianRevisionsnummer</var>.deb
552 </example>
553 wobei <var>foo</var> für den Paketnamen steht. Zur Kontrolle kann man den
554 Paketnamen, welcher einer bestimmten Debian Archivdatei (<tt>.deb</tt> Datei)
555 zugeordnet ist, durch eine der folgenden Möglichkeiten bestimmen:
556 <list>
557 <item>betrachten der "Packages" Datei in dem Verzeichnis, wo sich die
558 <tt>.deb</tt> Datei im Debian <!--FTP--> Archiv befand. Diese Datei enthält
559 für jedes Paket einen Eintrag, welcher es genau beschreibt; das erste
560 Feld in jedem Eintrag ist der formale Paketname.
561
562 <item>man benutzt das Kommando <tt>dpkg --info
563 <var>foo_VVV-RRR</var>.deb</tt> (wobei <var>VVV</var> und <var>RRR</var>
564 die Versions- bzw. Revisionsnummer des abgefragten Pakets sind). Dies
565 zeigt unter anderen den Paketnamen an, welcher der zu entpackenden
566 Archivdatei entspricht.
567 </list>
568
569 <p>Der <var>VVV</var> Teil ist die Versionsnummer, die vom Entwickler des
570 Programms vergeben wurde. Es gibt dafür kein allgemein gültiges Format,
571 sowohl "19990513" als auch "1.3.8pre1" ist denkbar.
572
573 <p>Der <var>RRR</var> Teil ist die Debian Revisionsnummer und wird vom
574 Debian Entwickler angegeben (oder von einem Nutzer, wenn dieser das Paket
575 selbst baut). Diese Nummer entspricht dem Revisionslevel des Debian Pakets;
576 eine neues Revisionslevel kennzeichnet in der Regel Änderungen in Debians
577 Makefile (<tt>debian/rules</tt>), in Debians Kontrolldatei
578 (<tt>debian/control</tt>), in Installations- oder Deinstallationsskripten
579 (<tt>debian/p*</tt>) oder in den Konfigurationsdateien, die mit dem Paket
580 genutzt werden.
581
582
583 <!-- This get too detailed
584 <sect1 id="controlfile">The Debian control file
585 -->
586
587 <sect1 id="conffile">Bewahren der lokalen Konfiguration
588 <!--
589 What is a Debian conffile
590 -->
591 <p>Die durch den Nutzer konfigurierbaren Dateien werden durch &debian;'s
592 "conffiles" Mechanismus bewahrt. Konfigurationsdateien (diese befinden sich
593 im Allgemeinen in <file>/etc</file>) werden in den <tt>conffiles</tt>
594 innerhalb von Debian's Paketsystem angegeben. Das Paketverwaltungssystem
595 garantiert, dass diese Dateien bei einer Paketaktualisierung (einem Upgrade)
596 nicht überschrieben werden.
597 <p>
598 Wenn es möglich ist, das System ohne Modifizierungen von Dateien anzupassen,
599 welche zu verschiedenen &debian; Paketen gehören, so ist es in der Regel
600 eine gute Idee, diese nicht zu verändern, selbst wenn es sich um
601 "conffiles" handelt. Dies ermöglicht schnellere und sauberere
602 Aktualisierungen.
603 <!--
604 <p>Conffiles is a list of configuration files (usually placed in <tt>/etc</tt>)
605 that the package management system will not overwrite when the package is
606 upgraded. This ensures that local values for the contents of these files
607 will be preserved, and is a critical feature enabling the in-place upgrade
608 of packages on a running system.
609 -->
610 <p>Um zu bestimmen, welche Dateien während eines Upgrades bewahrt werden,
611 kann man
612 <example>
613 dpkg --status <var>Paket</var>
614 </example>
615 ausführen und nach "Conffiles:" schauen.
616
617 <p>
618 Einzelheiten zum Inhalt einer Debian <tt>conffiles</tt> Datei sind im
619 Debian Policy Manual, Abschnitt 11.7 (vergleiche <ref id="references">)
620 zu finden.
621
622 <sect1 id="maintscripts">Debian Wartungsskripte
623 <!--
624 What is a Debian preinst, postinst, prerm, and postrm
625 script?
626 -->
627 <p><!--These files-->
628 Debian Wartungsskripte sind ausführbare Skripte, welche automatisch
629 gestartet werden bevor oder nachdem ein Paket installiert wird.
630 Zusammen mit einer Datei namens <tt>control</tt> sind all diese Dateien
631 Teil des "control" Abschnitts einer Debian Archivdatei.
632
633 <p>Die einzelnen Dateien sind:
634 <taglist>
635 <tag/preinst/
636 <item>Dieses Skript wird ausgeführt, bevor das Paket aus der Debian
637 Archivdatei (<tt/.deb/) ausgepackt wird. Viele "preinst" Skripte beenden
638 Dienste von Paketen, welche aktualisiert werden, bis deren Installation
639 oder Upgrade vollzogen ist (d.h. nach der erfolgreichen Ausführung des
640 "postinst" Skriptes).
641
642 <tag/postinst/
643 <item>Dieses Skript schließt typischerweise jede nötige Konfiguration
644 eines Paketes ab, nachdem es aus der Debian Archivdatei (<tt/.deb/)
645 ausgepackt wurde. Oft fragen "postinst" Skripte die Nutzer nach Daten,
646 und/oder weisen sie darauf hin, dass, wenn sie die Standardwerte
647 akzeptieren, sie später die Möglichkeit haben zurückzugehen und das Paket
648 zu rekonfigurieren, sollte dies nötig sein.
649 Viele "postinst" Skripte führen Kommandos aus, welche nötig sind, um
650 Dienste zu starten oder nach der Installation oder dem Upgrade neu zu
651 starten.
652
653 <tag/prerm/
654 <item>Dieses Skript beendet typischerweise Daemonen, welche dem Paket
655 zugeordnet sind. Es wird ausgeführt, bevor die zum Paket gehörenden
656 Dateien gelöscht werden.
657
658 <tag/postrm/
659 <item>Dieses Skript modifiziert typischerweise Links oder andere Dateien,
660 welche dem Paket zugeordnet sind und/oder entfernen Dateien, welche von
661 ihm erzeugt wurden. (Siehe auch <ref id="virtual">.)
662 </taglist>
663
664 <p>Zur Zeit können all diese Kontrolldateien im Verzeichnis
665 <file>/var/lib/dpkg/info</file> gefunden werden. Die auf das Paket
666 <tt>foo</tt> bezogenen Dateien beginnen mit "foo" und haben die
667 entsprechende Dateierweiterungen "preinst", "postinst", u.s.w. Die Datei
668 <tt>foo.list</tt> in diesem Verzeichnis enthält alle Dateien, welche mit dem
669 Paket <tt>foo</tt> installiert wurden.
670 (Es ist zu beachten, dass die Position dieser Dateien eine interne dpkg
671 Eigenschaft ist und sich in der Zukunft ändern kann.)
672
673 <sect1 id="priority">Paket Prioritäten
674 <!--
675 What is a Required/Important/Standard/Optional/Extra
676 package?
677 -->
678 <p>Jedem Debian Paket ist eine <strong>Priorität</strong> vom
679 Distributionsbetreuer zugeordnet worden, um die Arbeit des
680 Paketverwaltungssystems zu vereinfachen. Die Prioritäten sind:
681
682 <list>
683 <item><strong>Erforderliche</strong> Pakete werden benötigt für die
684 zuverlässige Funktionalität des Systems.
685 <p>
686 Dies schließt alle Tools, welche nötig sind, um das System zu
687 reparieren, ein. Diese Pakete dürfen nicht entfernt werden,
688 andernfalls kann das System komplett versagen und man ist nicht
689 einmal in der Lage <prgn>dpkg</prgn> zum Wiederherstellen zu nutzen.
690 Systeme die nur die erforderlichen Pakete enthalten, sind
691 wahrscheinlich ungeeignet für die meisten Aufgaben, jedoch kann der
692 Systemadministrator jederzeit neue Software installieren.
693 <item><strong>Wichtige</strong> Pakete sollten auf jedem Unix-artigen
694 System gefunden werden.
695 <p>
696 Andere Pakete ohne die das System nicht gut oder brauchbar arbeitet,
697 haben diese Priorität. Dies schließt <strong>nicht</strong> Emacs,
698 X11, TeX oder andere große Anwendungen ein. Diese Pakete erzeugen
699 nur die nötige Infrastruktur.
700 <item><strong>Standard</strong>pakete sind auf jedem Linuxsystem üblich,
701 inklusive einem kleinen aber nicht zu sehr beschränkten textbasierten
702 System.
703 <p>
704 Dies ist der Standardinstallationsumfang, solange der Nutzer nichts
705 anderes wählt. "Standard" enthält nicht viele große Anwendungen, aber
706 es enthält Emacs (das ist mehr eine Infrastruktur als eine Anwendung)
707 und eine geeignete Teilmenge von TeX und LaTeX (sofern dies ohne X
708 möglich ist).
709 <item><strong>Optionale</strong> Pakete enthalten all diese, welche man
710 vernünftigerweise installieren möchte, auch wenn man damit nicht
711 vertraut ist und keine speziellen Anforderungen daran hat.
712 <p>
713 Dies schließt X11, eine vollständige TeX Distribution und viele
714 Anwendungen mit ein.
715 <item><strong>Zusätzliche</strong> Pakete sind entweder nicht mit anderen
716 Paketen mit höherer Priorität verträglich, sind wahrscheinlich nur
717 nützlich, wenn man sie bereits näher kennt oder haben spezielle
718 Anforderungen, die sie für "Optional" ungeeignet machen.
719 </list>
720
721 <sect1 id="virtual">Virtuelle Pakete
722
723 <p>Ein virtuelles Paket ist ein allgemeiner Name, welcher für eine Gruppe
724 von Paketen steht, die alle ähnliche Funktionalitäten bereitstellen. Die
725 Programme <tt>tin</tt> und <tt>trn</tt> sind beispielsweise beide
726 News-Reader und einer von beiden sollte deshalb die Abhängigkeiten eines
727 Programms, welches einen News-Reader im System benötigt um richtig
728 funktionieren zu können, erfüllen. Deshalb sagt man, dass beide das
729 "virtuelle Paket" <tt>news-reader</tt> bereitstellen.
730
731 <p>Analog stellen <tt>exim</tt> und <tt>sendmail</tt> die Funktionalität
732 eines Mail Transport Agent bereit. Deshalb wird das virtuelle Paket
733 "mail-transport-agent" von beiden angeboten.
734 Wenn eines dieser Programme installiert ist, dann wird jedes Programm, das
735 von der Installation von <tt>mail-transport-agent</tt> abhängt, mit der
736 Existenz dieses virtuellen Paketes zufrieden sein.
737
738 <p>Debian besitzt einen Mechanismus so dass, wenn mehr als ein Paket,
739 welches das selbe virtuelle Paket bereitstellt, auf dem System installiert
740 ist, der Systemadministrator ein Programm bevorzugt auswählen kann. Das
741 entsprechende Kommando ist <tt>update-alternatives</tt> und wird genauer in
742 <ref id="alternatives"> beschrieben.
743
744 <sect1 id="depends">Paketabhängigkeiten
745 <!--
746 What is meant by saying that a package
747 Depends/Recommends/Suggests/Conflicts/Replaces/Provides another package?
748 -->
749 <p>Das Debian Paketsystem enthält "Paketabhängigkeiten", welche (in einem
750 einzelnen Eintrag) festhalten, wie ein Programm A unabhängig von der
751 Existenz eines Programms B auf einem System arbeiten kann.
752 <list>
753 <item>Paket A <strong>hängt</strong> von Paket B <strong>ab</strong>,
754 wenn B unbedingt installiert sein muss, um A starten zu können. In
755 einigen Fällen hängt A nicht nur von B, sondern einer speziellen
756 Version von B ab. In diesem Fall ist die Versionsabhängigkeit im
757 Allgemeinen eine untere Schranke, d.h. A hängt von einer beliebigen
758 Version von B ab, welche aktueller als eine angegebene Version ist.
759 <item>Paket A <strong>empfiehlt</strong> Paket B, wenn der Paketbetreuer
760 meint, dass die meisten Nutzer A nicht ohne die von B bereitgestellte
761 Funktionalität haben wollen.
762 <item>Paket A <strong>schlägt</strong> Paket B <strong>vor</strong>, wenn
763 B Dateien enthält, welche sich auf die Funktionalität von A beziehen
764 (und diese eventuell erweitern).
765 <item>Paket A <strong>kollidiert</strong> mit Paket B, wenn A nicht
766 funktioniert, sofern B auf dem System installiert ist. Sehr oft
767 bestehen solche <strong>Konflikte</strong> darin, dass A Dateien
768 enthält, die gegenüber denen in B verbessert wurden.
769 Der "Konflikt" Status wird oft mit "ersetzt" kombiniert.
770 <item>Paket A <strong>ersetzt</strong> Paket B, wenn Dateien, die von
771 B installiert wurden, von A entfernt und (in einigen Fällen) durch
772 Dateien in A überschrieben werden.
773 <item>Paket A <strong>unterstützt</strong> Paket B, wenn alle Dateien
774 und Funktionalitäten von B in A verfügbar sind. Dieser Mechanismus
775 steht für Nutzer mit geringem Plattenplatz zur Verfügung, um nur den
776 Teil von A zu installieren, welcher absolut nötig ist.
777 </list>
778
779 <p>Weitere detaillierte Informationen zur Verwendung dieser Terme können im
780 Packaging Manual und dem Policy Manual gefunden werden.
781
782 <p>Es ist zu beachten, dass <prgn>dselect</prgn> eine bessere Kontrolle
783 über Pakete, die mit <strong>empfiehlt</strong> und <strong>schlägt
784 vor</strong> spezifiziert werden, bietet als <file>apt-get</file>, was
785 einfach alle <strong>hängt ab</strong> Pakete wählt und
786 <strong>empfiehlt</strong> und <strong>schlägt vor</strong> ignoriert.
787 Beide Programme nutzen in aktuellen Versionen APT als Back-end.
788
789 <sect1 id="pre-depends">Die Bedeutung von "pre-depends"
790
791 <p>"Pre-depends" ist eine spezielle Abhängigkeit. Im Falle eines
792 gewöhnlichen Pakets entpackt <prgn>dpkg</prgn> die Archivdatei (d.h. dessen
793 <tt>.deb</tt> Datei) unabhängig davon, ob die Dateien, von denen es abhängt,
794 im System existieren oder nicht. Entpacken bedeutet im wesentlichen, dass
795 <prgn>dpkg</prgn> die Dateien aus der Archivdatei extrahiert und korrekt
796 im Dateisystem plaziert. <strong>Hängen</strong> diese Pakete von der
797 Existenz anderer Pakete auf dem System <strong>ab</strong>, dann wird
798 sich <prgn>dpkg</prgn> weigern, die Installation zu beenden (durch Ausführen
799 des "konfigurieren" Schritts), bis die anderen Pakete installiert sind.
800
801 <p>Dennoch gibt es einige Pakete, bei denen sich <prgn>dpkg</prgn> sogar
802 weigert, sie zu entpacken, bis gewisse Abhängigkeiten aufgelöst sind. Solche
803 Pakete hängen vom Vorhandensein anderer Pakete im Sinne von "pre-depend"
804 ab. Das Debian Projekt führte diesen Mechanismus ein, um das System sicher
805 vom <tt>a.out</tt> auf das ELF Format zu aktualisieren, wobei die
806 <strong>Reihenfolge</strong> in welcher die Pakete entpackt werden,
807 bedeutend ist. Es gibt weitere große Update Situationen, wo diese Methode
808 nützlich ist, z.B. für Pakete mit der "erforderlich" Priorität und deren
809 libc Abhängigkeit.
810
811 <p>Erneut wird für detailliertere Informationen über dies auf das Packaging
812 Manual verwiesen.
813
814 <sect1 id="pkgstatus">Paket Status
815 <!--
816 What is meant by unknown/install/remove/purge/hold in
817 the package status?
818 -->
819 <p>Der Paket Status kann "unbekannt", "installieren", "entfernen",
820 "säubern" oder "halten" sein.
821 Diese "gewünschten" Werte kennzeichnen, was der Nutzer mit einem Paket
822 beabsichtigte (entweder durch Anwahl des "[A]uswählen" Punktes in
823 <prgn>dselect</prgn> oder durch direkten Aufruf von <prgn>dpkg</prgn>).
824
825 <p>Deren Bedeutung ist:
826 <list compact>
827 <item><strong>unbekannt</strong> - der Nutzer hat niemals angegeben, ob
828 er das Paket will.
829 <item><strong>installieren</strong> - der Nutzer will das Paket installiert
830 oder aktualisiert haben.
831 <item><strong>entfernen</strong> - der Nutzer will das Paket entfernen
832 lassen, ohne das existierende Konfigurationsdateien gelöscht
833 werden.
834 <item><strong>säubern</strong> - der Nutzer will das Paket komplett
835 entfernt haben, inklusive der Konfigurationsdateien.
836 <item><strong>halten</strong> - der Nutzer will das Paket nicht
837 verarbeiten lassen, d.h. er möchte die aktuelle Version im
838 aktuellen Status belassen, unabhängig vom Wert.
839 </list>
840
841 <sect1 id="puttingonhold">Zurückhalten von Paketen von einem Upgrade
842 <!--
843 How do I put a package on hold?
844 Made major rewrite to accommodate new /etc/apt/preferences in progress
845 -->
846 <p>Es gibt zwei Mechanismen zum Zurückhalten von Paketen von einem Upgrade,
847 durch <prgn>dpkg</prgn> oder in Woody durch APT.
848
849 <p>Mit <prgn>dpkg</prgn> ist zuerst die Paketauswahlliste zu exportieren:
850 <example>
851 dpkg --get-selections \* &gt; <var>Paketauswahl.txt</var>
852 </example>
853 Dann muss die erzeugte Datei <file><var>Paketauswahl.txt</var></file>
854 editiert werden, indem die Zeile, welche das zu haltende Paket, z.B.
855 <package/libc6/, enthält, von:
856 <example>
857 libc6 install
858 </example>
859 auf:
860 <example>
861 libc6 hold
862 </example>
863 geändert wird.
864 Nach dem Speichern ist die Datei in die <prgn>dpkg</prgn> Datenbank
865 zurückzuladen mit:
866 <example>
867 dpkg --set-selections &lt; <var>Paketauswahl.txt</var>
868 </example>
869 Kennt man den Paketnamen des zu haltenden Pakets, kann man auch einfach
870 <example>
871 echo libc6 hold | dpkg --set-selections
872 </example>
873 starten. Wann immer der Installations Prozess dieses Paket bearbeitet (zu
874 upgraden versucht), hält er es zurück.
875 <!-- FIXME
876 This procedure holds packages at the install process of each package file.
877 -->
878
879 <p>Der selbe Effekt kann mit <prgn>dselect</prgn> erreicht werden. Dazu ist
880 einfach der Punkt [A]uswählen und dann das Paket zu wählen, dessen Status
881 beibehalten werden soll sowie schließlich `=' (oder `H') zu drücken. Die
882 Änderungen werden sofort aktiv, nachdem das [A]uswählen Menü beendet wird.
883
884 <p>Das APT System in der Woody Distribution hat einen neuen "Alternativen"
885 Mechanismus zum Halten von Paketen während des Archivabfrageprozesses unter
886 Verwendung von <tt>Pin-Priority</tt>. Vergleiche die Manual-Page
887 <manref name="apt_preferences" section="5"> sowie <url id="&apt-howto;">
888 oder das <package>&p-apt-howto;</package> Paket.
889
890 <sect1 id="sourcepkgs">Quellpakete
891
892 <p>
893 Quellpakete befinden sich in einem Verzeichnis namens <tt>source</tt> und
894 können entweder manuell heruntergeladen werden oder durch
895 <example>
896 apt-get source <var>foo</var>
897 </example>
898 (vergleiche die <manref name="apt-get" section="8"> Manual-Page wie man APT
899 dazu bringt, dies zu tun).
900
901
902 <sect1 id="sourcebuild">Erzeugen von Binär- aus Quellcodepaketen
903
904 <p>Für ein Paket <tt><var>foo</var></tt> benötigt man alle
905 <file><var>foo_*</var>.dsc</file>, <file><var>foo_*</var>.tar.gz</file> und
906 <file><var>foo_*.diff</var>.gz</file> Dateien, um die Quellen zu übersetzen
907 (Bemerkung: es gibt keine <tt>.diff.gz</tt> Datei für ein natives Debian
908 Paket).
909
910 <p>Sind diese Dateien vorhanden und ist das <package/dpkg-dev/ Paket
911 installiert, so extrahiert das Kommando
912 <example>
913 $ dpkg-source -x <var>foo_version-revision</var>.dsc
914 </example>
915 das Paket in ein Verzeichnis namens <tt><var>foo-version</var></tt>.
916
917 <p>Zum Erzeugen des Binärpakets ist folgendes auszuführen:
918 <example>
919 $ cd foo-version
920 $ su -c "apt-get update; apt-get install fakeroot"
921 $ dpkg-buildpackage -rfakeroot -us -uc
922 </example>
923 Und danach
924 <example>
925 # su -c "dpkg -i ../<var>foo_version-revision_arch</var>.deb"
926 </example>
927 zum Installieren des neu gebildeten Pakets. Vergleiche <ref id="port">.
928
929 <!-- woody has simpler commands and build-depends -->
930
931 <sect1 id="creatingdebs">Erzeugen neuer Debian Pakete
932
933 <p>Für detaillierte Informationen zum Erzeugen neuer Pakete sollte der New
934 Maintainers' Guide gelesen werden, verfügbar im <package/maint-guide/ Paket,
935 oder unter <url id="&maint-guide;" name="&urlname;">.
936 <!--
937 <url id="ftp://ftp.debian.org/debian/doc/package-developer/maint-guide.html.tar.gz">.
938 -->
939 <!--
940 <sect id="pkgtools">Package Management Tools
941 Once many were moved up here but now moved down
942 -->
943
944 <!--
945 Rarely use command for woody, exclude but mention its manual page above.
946 <sect2 id="dpkg-deb">dpkg-deb
947 Removed below
948 -->
949
950 <!--
951 move up contents as a part of APT
952 <sect2 id="apt-get">apt-get
953 -->
954
955 <!--
956 Rarely use command for woody, exclude but mention its manual page above.
957 <sect2 id="dpkg-split">dpkg-split
958 removed
959 -->
960
961 <!--
962 Moved down
963 <sect1 id="updaterunning">Upgrade running system
964 Debian claims to be able to update a running program;
965 how is this accomplished?
966 -->
967
968 <!--
969 <sect1 id="whatpackages">How can I tell what packages are already installed
970 on a Debian system?
971 removed dpkg list and status things here
972 -->
973
974 <!-- these information are in debian.sgml and above
975 <sect1 id="filesearch">How can I find out what package produced a particular
976 file?
977 removed dpkg list and status things here
978 -->
979
980 <sect id="uptodate">Aktualisierung eines Debian Systems
981
982 <p>Einer von Debian's Vorzügen ist die Unterstützung eines konsistenten
983 Upgrade Wegs sowie ein sicherer Upgrade Prozess und es wird stets versucht,
984 eine ältere Ausgabe problemlos zu aktualisieren. Pakete warnen den Nutzer,
985 sollten bedeutende Bemerkungen während des Upgrade Prozesses auftreten und
986 bieten oft eine Lösung zu einem möglichen Problem.
987
988 <p>Man sollte auch die Release Notes lesen, das Dokument, das die Details zu
989 spezifischen Upgrades enthält. Es wird mit allen Debian CDs ausgeliefert und
990 ist im WWW unter <url id="&stable-release;"> oder
991 <url id="&testing-release;"> verfügbar.
992
993 <p>
994 Eine praktische Anleitung zum Aktualisieren wird in <ref id="package">
995 bereitgestellt. Dieser Abschnitt beschreibt die grundlegenden Einzelheiten.
996
997 <!-- Obsolete, removed
998 <sect1 id="libc5to6upgrade">How can I upgrade my Debian 1.3.1 (or earlier)
999 distribution, based on libc5, to 2.0 (or later), based on libc6?
1000 ...
1001 This paragraph is obsolete.
1002 -->
1003
1004 <sect1 id="howtocurrent">Methoden zum Aktualisieren eines Debian Systems
1005
1006 <p>Man kann immer einfach einen anonymen FTP oder <prgn>wget</prgn> Aufruf
1007 zu einem Debian Archiv starten, die Verzeichnisse durchsehen, bis man die
1008 gewünschte Datei gefunden hat, diese herunterladen und schließlich mittels
1009 <prgn>dpkg</prgn> installieren. (Es ist zu beachten, dass <prgn>dpkg</prgn>
1010 die aktualisierten Dateien immer in das korrekte Verzeichnis installiert,
1011 auch in einem laufenden System.) Manchmal kommt es dennoch vor, dass ein
1012 überarbeitetes Paket die Installation einer neuen Version eines anderen
1013 Paketes erfordert. In diesem Fall schlägt die Installation fehl, wenn das
1014 andere Programm nicht installiert ist.
1015
1016 <p>Viele Personen finden dieses manuelle Vorgehen zu Zeit aufwendig, da
1017 Debian sich so schnell entwickelt &ndash; typischerweise werden ein Dutzend
1018 oder mehr Pakete jede Woche hochgeladen. Diese Zahl ist kurz vor einer neuen
1019 Veröffentlichung noch größer. Um dies besser handhaben zu können, bevorzugen
1020 viele Personen ein automatisches Programm zum Upgraden. Einige
1021 spezialisierte Paketmanagement Tools sind für diesen Zweck verwendbar.
1022
1023 <sect1 id="pkgtools">Überblick über Paketverwaltungstools
1024
1025 <!-- reorganize this and following section in a compact section -->
1026 <!--
1027 <sect1 id="pkgprogs">What programs does Debian provide for managing its
1028 packages?
1029 Insert overview and
1030 bump sect2 to sect1
1031 -->
1032 <p>Das Debian Paketverwaltungssystem hat zwei Aufgaben: die Manipulation
1033 der Paketdatei und das Herunterladen von Paketdateien aus dem Debian Archiv.
1034 <prgn>dpkg</prgn> erfüllt die erste Aufgabe, APT und <prgn>dselect</prgn>
1035 die letztere.
1036
1037 <sect1 id="dpkg"><prgn>dpkg</prgn>
1038
1039 <p>Dies ist das wichtigste Programm zum Manipulieren von Paketdateien. Für
1040 eine ausführliche Beschreibung ist <manref name="dpkg" section="8"> zu
1041 lesen.
1042 <!-- "install dpkg" deleted because it's a required package -->
1043
1044 <p><prgn>dpkg</prgn> wird mit einigen wichtigen Programmen ausgeliefert.
1045
1046 <list>
1047 <item>dpkg-deb: Manipuliert <tt>.deb</tt> Dateien.
1048 <manref name="dpkg-deb" section="1">
1049 <item>dpkg-ftp: Ein älteres Programm zum Herunterladen von Paketen.
1050 <manref name="dpkg-ftp" section="1">
1051 <item>dpkg-mountable: Ein älteres Programm zum Herunterladen von Paketen.
1052 <manref name="dpkg-mountable" section="1">
1053 <item>dpkg-split: Teilt ein größeres Paket in kleinere Dateien auf.
1054 <manref name="dpkg-split" section="1">
1055 </list>
1056
1057 <prgn>dpkg-ftp</prgn> und <prgn>dpkg-mountable</prgn> wurden durch das
1058 APT System ersetzt.
1059
1060 <!-- Insert APT and apt-get here: -->
1061 <sect1 id="apt">APT
1062
1063 <p>APT, das zukunftsweisende Paket-Tool (Advanced Packaging Tool) ist eine
1064 fortschrittliche Schnittstelle zu Debian's Paketsystem und besteht aus
1065 verschiedenen Programmen, deren Namen oft mit "apt-" beginnen.
1066 <prgn>apt-get</prgn>, <prgn>apt-cache</prgn> und <prgn>apt-cdrom</prgn>
1067 sind die Kommandozeilen Tools zum Umgang mit Paketen. Diese werden auch von
1068 anderen Programmen, wie <prgn/dselect/ und <prgn/aptitude/ genutzt.
1069
1070 <p>Für weitere Informationen ist das <package/apt/ Paket zu installieren
1071 und
1072 <manref name="apt-get" section="8">,
1073 <manref name="apt-cache" section="8">,
1074 <manref name="apt-cdrom" section="8">,
1075 <manref name="apt.conf" section="5">,
1076 <manref name="sources.list" section="5">,
1077 <manref name="apt_preferences" section="5"> (woody) sowie
1078 <file>/usr/share/doc/apt/guide.html/index.html</file> zu lesen.
1079
1080 <p>Weitere Informationen finden sich im
1081 <url id="&apt-howto;" name="APT HOWTO">. <!-- FIXME check de -->
1082 Dazu kann in Sarge <package/apt-howto-de/ installiert werden und steht
1083 dann unter
1084 <file>&f-apt-howto;</file>
1085 zur Verfügung (Woody enthält nur die englische Version <package/apt-howto/).
1086
1087 <p><tt>apt-get upgrade</tt> und <tt>apt-get dist-upgrade</tt> installieren
1088 nur die Pakete, die unter "Depends:" ("hängt ab:") aufgeführt sind und
1089 übersieht alle unter "Recommends:" ("empfiehlt:") und "Suggests:" ("schlägt
1090 vor:") gelisteten Pakete. Um dies zu vermeiden, sollte <prgn>dselect</prgn>
1091 verwendet werden.
1092
1093 <!-- removed boring APT info -->
1094
1095 <!-- bump from sect2 to sect1 -->
1096 <sect1 id="dselect-basics"><prgn>dselect</prgn>
1097
1098 <p>Dieses Programm besitzt eine Menüoberfläche zu Debian's
1099 Paketverwaltungssystem. Es ist besonders für die Erstinstallation und große
1100 Upgrades nützlich. Vergleiche <ref id="dselect">.
1101
1102 <p>Für weitere Informationen sollte das <package/install-doc/ Paket
1103 installiert und
1104 <file>/usr/share/doc/install-doc/dselect-beginner.en.html</file> oder
1105 <url id="&dselect-beginner;" name="dselect Documentation for Beginners">
1106 gelesen werden.
1107
1108 <!-- removed boring dselect info -->
1109
1110 <!-- move this up and make this sect1
1111 <sect2 id="apt">APT
1112 -->
1113 <!-- remove this and mention above in dpkg
1114 <sect2 id="dpkg-ftp">dpkg-ftp
1115 -->
1116 <!-- remove this
1117 <sect2 id="mirror">mirror
1118 -->
1119
1120 <!-- remove this section and mention above in dpkg
1121 <sect2 id="dpkg-mountable">dpkg-mountable
1122 -->
1123
1124 <!--
1125 <sect1 id="upgradesingle">Must I go into single user mode in order to
1126 upgrade a package?
1127
1128 <p>No. Packages can be upgraded in place, even in running systems.
1129 Debian has a <tt>start-stop-daemon</tt> program that is invoked to stop,
1130 then restart running process if necessary during a package upgrade.
1131 -->
1132
1133 <sect1 id="updaterunning">Aktualisieren eines laufenden Systems
1134
1135 <p>Der Kernel (das Dateisystem) in &debian; Systemen unterstützt das Ersetzen
1136 von Dateien auch während sie benutzt werden.
1137
1138 <p>Es wird auch ein Programm namens <prgn/start-stop-daemon/ bereitgestellt,
1139 das verwendet wird, um Dämonen während des Bootens zu starten oder zum
1140 Stoppen von Dämonen, wenn der Kernel-Runlevel geändert wird (z.B. von
1141 Mehrbenutzer- zu Einzelbenutzermodus oder zu "halt"). Das gleiche Programm
1142 wird von Installationsskripten genutzt, wenn ein Paket, das einen Dämon
1143 enthält, installiert wird, um laufende Dämonen zu stoppen und bei Bedarf
1144 neuzustarten.
1145
1146 <p>Es wird darauf hingewiesen, dass das Debian System den Einzelnutzermodus
1147 nicht erfordert, um ein laufendes System zu aktualisieren.
1148
1149
1150 <sect1 id="savedebs">Heruntergeladene und zwischengespeicherte <tt>.deb</tt>
1151 Archiv Dateien
1152
1153 <p>Hat man Paketdateien manuell auf die Festplatte heruntergeladen (was
1154 nicht unbedingt notwendig ist, vergleiche die obige Beschreibung von
1155 <prgn>dpkg-ftp</prgn> oder APT), dann kann man die <tt>.deb</tt> Dateien
1156 nach der Installation der Pakete aus dem System entfernen.
1157
1158 <p>Wenn APT verwendet wird, so werden diese Dateien im
1159 <file>/var/cache/apt/archives/</file> Verzeichnis zwischengespeichert. Sie
1160 können nach der Installation gelöscht werden (<tt>apt-get clean</tt>) oder
1161 auf einen anderen Rechner ins <file>/var/cache/apt/archives/</file>
1162 Verzeichnis kopiert werden, um das Herunterladen während mehrerer
1163 Installationen zu vermeiden.
1164
1165 <sect1 id="keepingalog">Aufbewahren des Datensatzes für Upgrades
1166
1167 <p><prgn/dpkg/ bewahrt einen Datensatz aller Pakete, die ausgepackt,
1168 konfiguriert, entfernt und/oder gesäubert wurden, auf. Jedoch wird (zur
1169 Zeit) kein Protokoll der Terminaleingaben, während der Paketmanipulation,
1170 erzeugt.
1171
1172 <p>Der einfachste Weg, dieses Problem zu umgehen, ist Sitzungen von
1173 <prgn>dpkg</prgn>, <prgn>dselect</prgn>, <prgn>apt-get</prgn>, etc.
1174 innerhalb des <manref name="script" section="1"> Programms ablaufen zu
1175 lassen.
1176
1177 <sect id="boot">Der Debian Bootvorgang
1178
1179 <sect1 id="init">Das <tt>init</tt> Programm
1180
1181 <p>Wie alle Unices, wird Debian durch das Programm <tt>init</tt> gestartet.
1182 Die Konfigurationsdatei für <tt>init</tt> (dies ist <tt>/etc/inittab</tt>)
1183 gibt an, dass das erste zu startende Skript <tt>/etc/init.d/rcS</tt> ist.
1184 Dieses Skript startet alle anderen Skripte in <tt>/etc/rcS.d/</tt>, entweder
1185 indem diese eingebunden oder explizit als Unterprozess aufgerufen werden,
1186 je nach Dateierweiterung. Diese Skripte initialisieren das System indem sie
1187 z.B. Dateisysteme überprüfen und einbinden, Module laden, Netzwerk Dienste
1188 starten und die Uhrzeit setzen. Danach werden zwecks Kompatibilität die
1189 Dateien (mit Ausnahme der mit einem `.' im Dateinamen) in
1190 <tt>/etc/rc.boot/</tt> ausgeführt. Jedes Skript in diesem Verzeichnis ist
1191 normalerweise dem Systemadministrator vorbehalten, die Verwendung dieser in
1192 Paketen wird missbilligt. Vergleiche <ref id="init-hints"> für weitere
1193 Informationen.
1194
1195 <sect1 id="runlevels">Runlevel
1196
1197 <p>Nach dem Bootprozess führt <tt>init</tt> alle Startskripte in einem
1198 durch den Standard-Runlevel festgelegten Verzeichnis aus. (Dieses Runlevel
1199 wird durch den Eintrag <tt>id</tt> in <tt>/etc/inittab</tt> festgelegt).
1200 Wie viele <!-- all? SGK --> System V kompatible Unices hat Linux 7 Runlevel:
1201 <list compact>
1202 <item>0 (Anhalten des Systems),
1203 <item>1 (Einzelnutzer Modus),
1204 <item>2 bis 5 (verschiedene Mehrbenutzer Modi) und
1205 <item>6 (Neustart des Systems).
1206 </list>
1207 <p>
1208 Für Debian Systeme gilt <tt>id=2</tt>, was bedeutet, dass der
1209 Standard-Runlevel 2 sein wird, wenn der Mehrbenutzer Modus aktiv ist und die
1210 Skripte in <tt>/etc/rc2.d/</tt> werden ausgeführt.
1211
1212 <p>In Wirklichkeit sind die Skripte in den Verzeichnissen
1213 <file>/etc/rc<var>N</var>.d/</file> nur symbolische Links zu Skripten in
1214 <file>/etc/init.d/</file>. Dennoch werden die <strong>Namen</strong> der
1215 Dateien in jedem der <file>/etc/rc<var>N</var>.d/</file> Verzeichnisse
1216 individuell gewählt, um anzugeben <strong>wie</strong> die Skripte in
1217 <file>/etc/init.d/</file> gestartet werden. Speziell werden bevor ein
1218 Runlevel aktiv wird, alle Skripte die mit `K' beginnen ausgeführt; diese
1219 Skripte beenden Dienste. Danach werden alle Skripte die mit `S' beginnen
1220 gestartet; diese Skripte starten Dienste. Die zweistellige dem `K' oder `S'
1221 folgende Nummer bestimmt die Reihenfolge der Ausführung. Skripte mit kleinerer
1222 Nummer werden zuerst ausgeführt.
1223
1224 <p>Dieses Vorgehen funktioniert, da die Skripte in <tt>/etc/init.d/</tt> alle
1225 ein Argument akzeptieren, das entweder "start", "stop", "reload", "restart"
1226 oder "force-reload" sein kann und eine dem Argument entsprechende Aktion
1227 ausführen (starten, stoppen, neuladen, neustarten, erzwinge Neustart).
1228 Diese Skripte können auch ausgeführt werden, nachdem das System gebootet
1229 wurde, um verschiedene Prozesse zu kontrollieren.
1230
1231 <p>Zum Beispiel führt das Argument "reload" im Kommando
1232 <example>
1233 # /etc/init.d/sendmail reload
1234 </example>
1235 dazu, dass der sendmail Dämon ein Signal zum erneuten Einlesen der
1236 Konfigurationsdatei erhält.
1237
1238 <sect1 id="custombootscripts">Anpassen des Bootvorgangs
1239 <p>
1240 Debian verwendet kein BSD typisches <tt>rc.local</tt> Verzeichnis, um den
1241 Bootvorgang anzupassen; stattdessen wird folgender Mechanismus angeboten.
1242
1243 <p>Angenommen <tt>foo</tt> sei ein Skript, das während des Startvorgangs
1244 oder beim Übergang in ein bestimmtes (System V) Runlevel aufgerufen werden
1245 soll. Dann sollte der Systemadministrator:
1246 <enumlist>
1247 <item>Das Skript <tt>foo</tt> in das Verzeichnis <file>/etc/init.d/</file>
1248 verschieben.
1249 <item>Das Debian Kommando <prgn>update-rc.d</prgn> mit entsprechenden
1250 Argumenten starten, um Links zwischen den (Kommandozeilen
1251 spezifischen) Verzeichnissen <tt>rc<var>?</var>.d</tt> und
1252 <file>/etc/init.d/foo</file> anzulegen.
1253 Dabei bezeichnet <var>?</var> eine Nummer von 0 bis 6, die einem der
1254 System V Runlevel entspricht.
1255 <item>Das System neu booten.
1256 </enumlist>
1257
1258 <p>Das Kommando <tt>update-rc.d</tt> setzt Links zwischen Dateien im
1259 Verzeichnis <tt>rc<var>?</var>.d</tt> und dem Skript in
1260 <file>/etc/init.d/</file>. Jeder Link beginnt mit einem `S' oder `K',
1261 gefolgt von einer Nummer, gefolgt vom Namen des Skripts. Skripte in
1262 <file>/etc/rc<var>N</var>.d/</file> die mit `S' beginnen, werden ausgeführt,
1263 wenn in das Runlevel <var>N</var> gewechselt wird. Skripte die mit `K'
1264 beginnen, werden beim Verlassen des Runlevel <var>N</var> gestartet.
1265
1266 <p>Man kann z.B. das Skript <tt>foo</tt> beim Booten ausführen lassen, indem
1267 man es nach <file>/etc/init.d/</file> verschiebt und die Links mit
1268 <tt>update-rc.d foo defaults 19</tt> erstellt. Das Argument <tt>defaults</tt>
1269 bezieht sich auf den Standard-Runlevel, welcher zwischen 2 und 5 liegt. Das
1270 Argument <tt>19</tt> sichert, dass <tt>foo</tt> vor allen Skripten, welche
1271 die Nummern 20 oder größer enthalten, gestartet wird.
1272
1273 <sect id="diverse">Unterstützung von Vielfalten
1274 <p>
1275 Debian unterstützt verschiedene Möglichkeiten zum Anpassen des Systems, ohne
1276 das System zu beeinträchtigen.
1277 <list>
1278 <item><prgn>dpkg-divert</prgn>, vergleiche <ref id="dpkg-divert">.
1279 <item><prgn>equivs</prgn>, vergleiche <ref id="equivs">.
1280 <item><prgn>update-alternative</prgn>, vergleiche <ref id="alternatives">.
1281 <item><prgn>make-kpkg</prgn> kann viele Boot-Loader anpassen.
1282 Vergleiche <manref name="make-kpkg" section="1"> und
1283 <ref id="kernel-debian">.
1284 </list>
1285 Alle Dateien unter <file>/usr/local/</file> gehören dem Systemadministrator
1286 und &debian; wird sie nicht verändern. Viele (oder alle) Dateien unter
1287 <file>/etc</file> sind Konfigurationsdateien und &debian; wird
1288 sie nicht während eines Upgrades überschreiben, es sei denn der
1289 Systemadministrator erlaubt dies ausdrücklich.
1290
1291 <sect id="i18n">Internationalisierung
1292 <p>
1293 Das &debian; System ist internationalisiert und bietet Unterstützung zur
1294 Ein- und Ausgabe von Zeichen in vielen Sprachen, beides in der Konsole und
1295 unter X. Viele Texte, Manual-Pages und Systemausgaben wurden in eine ständig
1296 wachsende Anzahl von Sprachen übersetzt. Während der Installation fordert
1297 Debian den Nutzer zum Wahl der Installationssprache (und manchmal eines
1298 lokalen Dialekts) auf.
1299 <p>
1300 Sollte das installierte System nicht alle benötigten Eigenschaften der
1301 Sprache unterstützen, soll eine andere Sprache gewählt werden oder wurde
1302 eine neue Tastatur angeschlossen, um die Sprache zu unterstützen, vergleiche
1303 <ref id="l10n">.
1304
1305 <sect id="kernel-details">Debian und der Kernel
1306 <p>
1307 Vergleiche <ref id="kernel">.
1308
1309 <sect1 id="non-debian-kernel">Kompilierung eines Kernel aus Debian fremden
1310 Quellen
1311
1312 <p><!--Yes. But you have-->
1313 Man sollte die Debian Politik bezüglich der Header verstanden haben, bevor
1314 man startet.
1315
1316 <p>Die Debian C Bibliotheken wurden mit der aktuellsten
1317 <strong>stabilen</strong> Version der <strong>Kernelheader</strong>
1318 erstellt.
1319
1320 <p>Zum Beispiel nutzte die Debian 1.2 Ausgabe Version 5.4.13 der Header.
1321 Dieses Vorgehen unterscheidet sich von den Linux Kernelquellpaketen, die
1322 auf allen Linux FTP Archiv Seiten verbreitet werden, welche aktuellere
1323 Versionen der Header verwenden. Die Kernelheader aus den Kernelquellen
1324 befinden sich in <file>/usr/include/linux/include/</file>.
1325
1326 <p>Wenn es nötig ist, ein Programm mit aktuelleren Kernelheadern als in
1327 <package/libc6-dev/ zu übersetzen, so muss
1328 <tt>-I/usr/src/linux/include/</tt> zur Kommandozeile beim Kompilieren
1329 hinzugefügt werden. Dies ist z.B. für das Packen des automounter Dämon
1330 (<package/amd/) von Bedeutung. Als neue Kernel einige NFS bezogene Internals
1331 änderten, musste dies <prgn>amd</prgn> mitgeteilt werden. Dies erforderte
1332 die Einbindung der aktuellsten Kernelheader.
1333
1334 <sect1 id="customkernel">Tools zum Erzeugen angepasster Kernel
1335
1336 <p>Nutzern die einen angepassten Kernel erzeugen wollen (oder müssen), wird
1337 empfohlen, das Paket <package/kernel-package/ herunterzuladen. Dieses Paket
1338 enthält das Skript zur Kernelerstellung und bietet die Möglichkeit, ein
1339 Debian kernel-image Paket einfach durch Aufruf von
1340 <example>
1341 # make-kpkg kernel_image
1342 </example>
1343 im Kernelquellverzeichnis zu starten. Hilfe ist durch Ausführung von
1344 <example>
1345 # make-kpkg --help
1346 </example>
1347 verfügbar und durch die Manual-Page <manref name="make-kpkg" section="8">
1348 sowie <ref id="kernel">.
1349
1350 <p>Nutzer müssen den Quellcode für den aktuellsten Kernel (oder den Kernel
1351 ihrer Wahl) separat vom bevorzugten Linux Archiv herunterladen, wenn kein
1352 <package/kernel-source-<var>version</var>/ Paket (dabei steht
1353 <var>version</var> für die Kernel Version) vorhanden ist. Das Debian
1354 <file>initrd</file> Bootskript erfordert einen speziellen Kernel Patch namens
1355 <prgn>initrd</prgn>; vergleiche <url id="&bug-initrd;">.
1356
1357 <p>Detaillierte Anweisungen zur Benutzung des <package/kernel-package/ Pakets
1358 sind in der Datei <tt>/usr/doc/kernel-package/README</tt> zu finden.
1359
1360 <!-- TODO: check out a new source of details, this README isn't too useful,
1361 I'm told (joy) -->
1362
1363 <sect1 id="alt-boot">Alternative Boot Loader
1364 <p>
1365 Zur Verwendung von alternativen Boot Loader wie <package/grub/ oder
1366 <package/loadlin/ ist der kompilierte Linux Kernel <file>bzimage</file> in
1367 ein anderes Verzeichnis (wie <file>/boot/grub</file> oder auf eine MS-DOS
1368 Partition) zu kopieren.
1369 </sect1>
1370
1371 <sect1 id="custombootdisk">Erzeugen von Boot Disketten
1372
1373 <p>Die Erstellung einer angepassten Boot Diskette wird durch das Debian
1374 Paket <package/boot-floppies/ unterstützt, das normalerweise im
1375 <tt>admin</tt> Abschnitt des Debian FTP Archivs gefunden wird. Shellskripte
1376 in diesem Paket erzeugen Boot Disketten im <prgn>syslinux</prgn> Format. Dies
1377 sind MS-DOS formatierte Disketten, deren Master-Bootrecord so modifiziert
1378 wurde, dass sie direkt Linux (oder irgend ein anderes Betriebssystem, das in
1379 der <tt>syslinux.cfg</tt> Datei auf der Diskette definiert wurde) booten
1380 können. Andere Skripte in diesem Paket erzeugen Notfall Disketten und können
1381 auch die Basisdisketten neu erzeugen.
1382
1383 <p>Mehr Informationen darüber können in der
1384 <file>/usr/doc/boot-floppies/README</file> Datei nach der Installation des
1385 <package/boot-floppies/ Paketes gefunden werden.
1386
1387 <sect1 id="modules">Spezielle Regeln für den Umgang mit Modulen
1388
1389 <p>Debian's <package/modconf/ Paket enthält ein Shellskript
1390 (<file>/usr/sbin/modconf</file>), dass zur Anpassung der Modulkonfiguration
1391 genutzt werden kann. Dieses Skript besitzt eine Menü basierte Schnittstelle,
1392 die den Nutzer nach Einzelheiten über ladbare Gerätetreiber im System fragt.
1393 Die Antworten werden benutzt, um die Datei <file>/etc/modules.conf</file>
1394 (welche Aliase enthält sowie andere Argumente, die in Verbindung mit
1395 verschiedenen Modulen verwendet werden müssen) anzupassen, auf Grund von
1396 Dateien in <file>/etc/modutils/</file> und <file>/etc/modules</file> (die
1397 die Module auflistet, die zur Bootzeit geladen werden müssen).
1398
1399 <p>Wie die (neuen) Configure.help Dateien, die nun verfügbar sind, um
1400 angepasste Kernel zu unterstützen, kommt das <package/modconf/ Paket
1401 mit einer Reihe von Hilfe Dateien (in <file>/usr/lib/modules_help/</file>),
1402 die detaillierte Informationen über passende Argumente für jedes Modul
1403 enthalten. Vergleiche <ref id="kernel-modules"> für Beispiele.
1404
1405 <sect1 id="removeoldkernel">Deinstallation eines alten Kernel Pakets
1406
1407 <p>Das <tt>kernel-image-<var>NNN</var>.prerm</tt> Skript überprüft, ob der
1408 aktuell laufende Kernel mit dem zu entfernenden Kernel übereinstimmt.
1409 Deshalb können ungewünschte kernel-image Pakete sicher mittels
1410 <example>
1411 dpkg --purge --force-remove-essential kernel-image-<var>NNN</var>
1412 </example>
1413 entfernt werden. (<var>NNN</var> ist durch die entsprechende Kernelversion und
1414 Revisionsnummer zu ersetzen.)
1415 </sect>

  ViewVC Help
Powered by ViewVC 1.1.5