|
Als Teil seiner Arbeit benutzt APT eine Datei, die die Quellen, von
denen man Pakete beziehen kann, auflistet. Diese Datei heisst
/etc/apt/sources.list.
Die Einträge in dieser Datei sind von folgendem Format:
/etc/apt/sources.list
|
deb http://site.http.org/debian distribution sektion1 sektion2 sektion3
deb-src http://site.http.org/debian distribution sektion1 sektion2 sektion3
|
Natürlich sind obige Einträge erfunden und sollten nicht benutzt werden.
Das erste Wort jeder Zeile, deb oder deb-src zeigt den Typ des Archivs:
Entweder es enthält Binär-Pakete (deb), das sind die vorkompilierten
Pakete, die wir normalerweise benutzen, oder Quellpakete (deb-src),
welche die originalen Programmquellen, die Debian-Kontrolldatei
(.dsc) und das diff.gz, welches die Änderungen enthält, die für das
Debianisieren des Programms von Nöten sind.
Normalerweise finden wir folgendes in der Standard-Debian-sources.list:
/etc/apt/sources.list
|
# See sources.list(5) for more information, especialy
# Remember that you can only use http, ftp or file URIs
# CDROMs are managed through the apt-cdrom tool.
deb http://http.us.debian.org/debian stable main contrib non-free
deb http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
deb http://security.debian.org stable/updates main contrib non-free
# Uncomment if you want the apt-get source function to work
#deb-src http://http.us.debian.org/debian stable main contrib non-free
#deb-src http://non-us.debian.org/debian-non-US stable/non-US main contrib non-free
|
Dieses sind die Zeilen, die eine Debian-Basis-Installation benötigt. Die
erste deb-Zeile zeigt auf das offizielle Archiv, die zweite auf das
Archiv non-US und die dritte auf das Archiv der Sicherheits-Updates von
Debian.
Die letzten beiden Zeilen sind auskommentiert (mit einem # am Anfang).
Deshalb wird apt-get sie ignorieren. Sie sind deb-src-Zeilen, das
bedeutet, sie führen uns zu Debian-Quellpaketen. Wenn Sie öfters
Programm-Quellen herunterladen, um sie zu testen oder neu zu
kompilieren, sollten Sie die Kommentarzeichen entfernen.
Die Datei /etc/apt/sources.list kann verschiedene Typen von Zeilen
enthalten. APT kann mit Archiven der Typen http, ftp und file (lokale
Dateien, z. B. ein Verzeichnis, mit einem gemounteten
ISO9660-Dateisystem).
Vergessen Sie nicht, apt-get update auszuführen, nachdem die
/etc/apt-/sources.list editiert wurde. Dies ist notwendig, damit APT die
Paketlisten der spezifizierten Quellen bezieht.
|
Manchmal haben Sie vielleicht einige .debs, bei denen Sie APT für die
Installation benutzen wollen, so dass Abhängigkeiten automatisch
aufgelöst werden.
Um das zu tun, erstellen Sie ein Verzeichnis und legen die .debs, die
Sie indizieren wollen, dort hinein. Zum Beispiel:
root@linux #
mkdir /root/debs/
|
Es ist möglich, die Definitionen der paketeigenen Kontrolldatei
(debian/control) für das Repository mit Hilfe einer override-Datei zu
übergehen. In dieser Datei können Sie einige Optionen definieren, die
die paketeigenen Optionen überschreiben. Das Format sieht folgendermassen
aus:
Paket ist der Name des Pakets, die Priorität ist low (niedrig),
medium (mittel) oder high (hoch) und die Sektion ist die Sektion, zu
der das Paket gehört. Der Dateiname spielt keine Rolle, er muss als
Argument an dpkg-scanpackages übergeben werden. Wenn keine
override-Datei gebraucht wird, kann man dpkg-scanpackages auch /dev/null
übergeben.
Immer noch im Verzeichnis /root führen Sie folgendes aus:
root@linux #
dpkg-scanpackages debs Datei | gzip > debs/Packages.gz
|
In der obenstehenden Zeile ist Datei die override-Datei. Das Kommando
generiert eine Datei Packages.gz, welche verschiedene Informationen über
die Pakete enthält, die APT benötigt. Um die Pakete benutzen zu können,
fügen Sie folgendes der /etc/apt/sources.list hinzu:
/etc/apt/sources.list
|
deb file:/root debs/
|
Nachdem Sie das getan haben, können Sie einfach die gewöhnlichen
APT-Kommandos benutzen. Sie können ebenfalls ein Quellarchiv erstellen.
Die Prozedur ist dieselbe, aber die Dateien .orig.tar.gz, .dsc und
.diff.gz müssen sich in dem Verzeichnis befinden und statt Packages.gz
heisst es hier Sources.gz. Ausserdem müssen Sie ein anderes Programm
benutzen. Es heisst dpkg-scansources. Das Kommando sieht folgendermassen
aus:
root@linux #
dpkg-scansources debs | gzip > debs/Sources.gz
|
dpkg-scansources braucht keine override-Datei. Die Zeile in der
sources.list lautet:
/etc/apt/sources.list
|
deb-src file:/root debs/
|
|
Eine häufige Frage, der meist neuen Benutzer ist: Welchen Debian-Mirror
soll ich in die sources.list eintragen?. Es gibt viele Wege, sich für
einen Mirror zu entscheiden. Die fortgeschritteneren Benutzer haben
möglicherweise ein Skript, welches den Ping mehrerer Mirrors vergleicht.
Aber es gibt so ein Programm inzwischen auch für weniger erfahrene
Benutzer: netselect.
Installieren tut man netselect wie üblich:
root@linux #
apt-get install netselect
|
Wenn man es ohne Parameter ausführt, zeigt es seinen Hilfetext an. Führt
man es mit einer durch Leerzeichen separierten Liste von Hostnamen
(Mirrors) aus, gibt es uns einen Hostnamen zusammen mit der einer
Punktzahl zurück. Diese Punktzahl berücksichtigt die erwartete Pingzeit
und die Zahl der Hops (Rechner, die eine Netzwerkanfrage passiert, um
ihren Zielort zu erreichen) und ist antiproportional zur erwarteten
Downloadgeschwindigkeit (also je niedriger, desto besser). Angezeigt
wird nur der Host mit der niedrigsten Punktzahl (Die ganze Liste der
Mirrors kann mit der Option -vv angesehen werden). Zum Beispiel:
root@linux #
netselect ftp.debian.org http.us.debian.org ftp.at.debian.org download.unesp.br ftp.debian.org.br
365 ftp.debian.org.br
|
Das bedeutet, dass von den Mirrors, die als Parameter an netselect
übergeben wurden, ftp.debian.org.br der beste war mit einer Punktzahl
von 365. (Achtung! Weil es auf meinem Computer ausgeführt wurde und die
Netzwerktopographie extrem unterschiedlich und abhängig vom Standort des
Computers ist, ist dieser Wert nicht notwendigerweise die richtige
Geschwindigkeit für andere Computer).
Jetzt tragen Sie einfach den schnellsten Mirror in die
/etc/apt/sources.list ein (sehen Sie Die Datei /etc/apt/sources.list)
und befolgen Sie die Tips im Kapitel Paketverwaltung.
Hinweis: Die Liste der Mirrors ist immer auf
http://www.debian.org/mirror/mirrors_full zu finden.
Ab Version 0.3 enthält das netselect-Paket das netselect-apt-Skript, das
obigen Prozess automatisiert. Übergeben Sie einfach die Distribution als
Parameter (Der Defaultwert ist stable) und die sources.list wird mit den
besten main- und non-US-Mirrors generiert und im aktuellen
Verzeichnis gespeichert. Das folgende Beispiel generiert eine
sources.list für die stabile Distribution:
root@linux #
ls sources.list
ls: sources.list: File or directory not found
root@linux #
netselect-apt stable
(...)
root@linux #
ls sources.list
sources.list
|
Hinweis: Die sources.list wird im aktuellen Verzeichnis erzeugt und muss
nach /etc/apt verschoben werden.
Danach befolgen Sie die Tips im Kapitel Paketverwaltung.
|
Wenn Sie lieber eine CD-ROM zum Installieren von Paketen oder Updaten
ihres Systems durch APT verwenden möchten, können Sie sie in Ihre
sources.list eintragen. Um dieses zu tun, können Sie das Programm
apt-cdrom, wie im folgenden beschrieben, benutzen:
root@linux #
apt-cdrom add
|
Hierfür muss die Debian CD-ROM im Laufwerk liegen. Die CD-ROM wird
gemountet, und wenn sie eine gültige Debian-CD ist, wird nach
Paketinformationen gesucht. Wenn Ihre CD-ROM-Konfiguration ein wenig
ungewöhnlich ist, können Sie die folgenden Optionen benutzen:
-h
|
program help
|
-d directory
|
CD-ROM mount point
|
-r
|
Rename a recognized CD-ROM
|
-m
|
No mounting
|
-f
|
Fast mode, don't check package files
|
-a
|
Thorough scan mode
|
Zum Beispiel:
root@linux #
apt-cdrom -d /home/kov/mycdrom add
|
Eine CD kann auch identifiziert werden ohne sie zur sources.list
hinzuzufügen:
root@linux #
apt-cdrom ident
|
Obiges funktioniert nur, wenn das CD-ROM Laufwerk in der /etc/fstab
korrekt konfiguriert ist.
|
|
|