apt-ftparchive

Autres langues

Langue: de

Version: 17\&. August 2009 (ubuntu - 25/10/10)

Section: 1 (Commandes utilisateur)

NAME

apt-ftparchive - Hilfsprogramm zum Generieren von Indexdateien

SYNOPSIS

apt-ftparchive [-hvdsq] [--md5] [--delink] [--readonly] [--contents] [--arch architecture] [-o config=string] [-c=file] {[packages path... [override [pathprefix]]] | [sources path... [override [pathprefix]]] | [contents path] | [release path] | [generate config-file section...] | [clean config-file]}

BESCHREIBUNG

apt-ftparchive

ist das Befehlszeilenwerkzeug, das Indexdateien generiert, die APT zum Zugriff auf eine Distributionsquelle benutzt. Die Indexdateien sollten auf der Ursprungs-Site auf Basis des Inhalts dieser Stelle generiert werden.

apt-ftparchive ist eine Obermenge des dpkg-scanpackages(1)-Programms, das dessen ganze Funktionalität über den packages-Befehl enthält ist ein durchdachtes Mittel den Generierungsprozess für ein komplettes Archiv zu »skripten«.

Intern kann apt-ftparchive von Programmdatenbanken Gebrauch machen, um die Inhalte einer .deb-Datei zwischenzuspeichern und es verlasst sich nicht auf irgendwelche externen Programme, abgesehen von gzip(1). Wenn eine vollständige Generierung erfolgt, werden automatisch Dateiänderungsprüfungen durchgeführt und die gewünschten gepackten Ausgabedateien erzeugt.

Außer, wenn die -h- oder --help-Option angegeben wurde, muss einer der Befehle unterhalb vorkommen.

packages

Der »packages«-Befehl generiert eine Paketdatei aus einem Verzeichnisbaum. Er nimmt ein vorgegebenes Verzeichnis und durchsucht es rekursiv nach .deb-Dateien, wobei es für jede einen Paketdatensatz auf stdout ausgibt.Dieser Befehl entspricht etwa dpkg-scanpackages(1).
Die Option --db kann benutzt werden, um eine Datenbank zum Zwischenspeichern von Programmen anzugeben.

sources

Der sources-Befehl generiert eine Quellenindexdatei aus einem Verzeichnisbaum. Er nimmt ein vorgegebenes Verzeichnis und durchsucht es rekursiv nach .dsc-Dateien, wobei es für jede einen Quelldatensatz auf stdout ausgibt. Dieser Befehl entspricht etwa dpkg-scansources(1).
Wenn eine Override-Datei angegeben ist, wird nach einer Quellen-Override-Datei mit einer .src-Dateiendung gesucht. Die Option »--source-override« kann benutzt werden, um die Quellen-Override-Datei, die benutzt wird, zu ändern.

contents

Der contents-Befehl generiert eine Inhaltsdatei aus einem Verzeichnisbaum. Er nimmt ein vorgegebenes Verzeichnis und durchsucht es rekursiv nach .deb-Dateien und liest die Dateiliste von jeder Datei. Dann sortiert er die Liste der passenden Pakete und schreibt sie nach stdout. Verzeichnisse werden nicht in die Ausgabe geschrieben. Falls mehrere Pakete die gleiche Datei besitzen, dann befindet sich jedes Paket durch Komma getrennt in der Ausgabe.
Die Option --db kann benutzt werden, um eine Datenbank zum Zwischenspeichern von Programmen anzugeben.

release

Der release-Befehl generiert eine Release-Datei aus einem Verzeichnisbaum. Er durchsucht das vorgegebene Verzeichnis rekursiv nach Packages-, Packages.gz-, Packages.bz2-, Sources-, Sources.gz-, Sources.bz2-, Release- und md5sum.txt-Dateien. Dann schreibt es eine Releasedatei nach stdout, die einen MD5- und SHA1-Hash für jede Datei enthält.
Values for the additional metadata fields in the Release file are taken from the corresponding variables under APT::FTPArchive::Release, e.g. APT::FTPArchive::Release::Origin. The supported fields are: Origin, Label, Suite, Version, Codename, Date, Valid-Until, Architectures, Components, Description.

generate

Der generate-Befehl wurde entworfen, um von einem Cron-Skript ausführbar zu sein und bildet Indizes, die der angegebenen Konfigurationsdatei entsprechen. Die Konfigurationssprache stellt eine flexible Möglichkeit bereit, um anzugeben, welche Indexdateien von welchen Verzeichnissen gebildet wurden, ebenso wie sie eine einfache Möglichkeit zur Verwaltung der erforderlichen Einstellungen bereitstellt.

clean

Der clean-Befehl räumt die Datenbanken auf, die von der angegebenen Konfigurationsdatei benutzt wurden, indem es nicht länger nötige Datensätze entfernt.

DIE GENERATE-KONFIGURATION

Der generate-Befehl benutzt eine Konfigurationsdatei, um die Archive zu beschreiben, die generiert werden sollen. Es folgt dem typischen ISC-Konfigurationsformat, wie es in ISC-Werkzeugen wie Bind 8 oder DHCP gesehen werden kann. apt.conf(5) enthält eine Beschreibung der Syntax. Beachten Sie, dass die generate-Konfiguration abschnittsweise ausgewertet wird, apt.conf(5) aber baumartig ausgewertet wird. Dies hat nur Auswirkungen, wenn die Markierung »scope« behandelt wird.

Die generate-Konfiguration hat vier getrennte Abschnitte, jeder ist unterhalb beschrieben

Dir-Abschnitt

Der Dir-Abschnitt definiert die Vorgabeverzeichnisse, die zum Orten der benötigten Dateien während des Generierungsprozesses gebraucht werden. Diese Verzeichnisse werden bestimmten relativen Pfaden, die in späteren Abschnitten definiert werden, vorangestellt, um einen vollständigen absoluten Pfad zu bilden.

ArchiveDir

Gibt die Wurzel des FTP-Archivs an. In einer Debian-Standardkonfiguration ist das das Verzeichnis, das die ls-LR- und dist-Knoten enthält.

OverrideDir

Gibt den Ort der Override-Dateien an

CacheDir

Gibt den Ort der Zwischenspeicherdateien an

FileListDir

Gibt den Ort der Dateilistendateien an, wenn die FileList unterhalb gesetzt ist.

Vorgabe-Abschnitt

Der Default-Abschnitt gibt Vorgabewerte an und Einstellungen, die den Betrieb des Generators steuern. Andere Abschnitte können diese Vorgaben mit einer Einstellung pro Abschnitt überschreiben.

Packages::Compress

Setzt das Vorgabe-Kompressionsschema, das für die Paketindexdateien benutzt wird. Es ist eine Zeichenkette, die eine durch Leerzeichen getrennte Liste mit mindestens einem der folgenden Dinge enthält: ».« (keine Kompression), »gzip« und »bzip2«. Die Vorgabe für alle Kompressionsschemata ist ». gzip«.

Packages::Extensions

Setzt die Vorgabeliste von Dateierweiterungen, die Paketdateien sind. Vorgabe ist ».deb«.

Sources::Compress

Dies ist Packages::Compress ähnlich, außer dass es die Kompression der Quelldateien steuert.

Sources::Extensions

Setzt die Vorgabeliste von Dateierweiterungen, die Quelldateien sind. Vorgabe ist ».dsc«.

Contents::Compress

Dies ist Packages::Compress ähnlich, außer dass es die Kompression der Inhaltsdateien steuert.

Translation::Compress

This is similar to Packages::Compress except that it controls the compression for the Translation-en master file.

DeLinkLimit

Gibt die Anzahl von Kilobytes an, die pro Durchlauf delinkt (und durch Hardlinks ersetzt) werden sollen. Dies wird in Verbindung mit der External-Links-Einstellung pro Abschnitt benutzt.

FileMode

Gibt die Rechte für alle erstellten Indexdateien an. Vorgabe ist 0644. Alle Indexdateien werden ohne Beachtung von umask auf diese Rechte gesetzt.

LongDescription

Sets if long descriptions should be included in the Packages file or split out into a master Translation-en file.

TreeDefault-Abschnitt

Setzt Vorgaben speziell für Tree-Abschnitte. All diese Variablen sind Platzhaltervariablen und haben die Zeichenketten $(DIST), $(SECTION) und $(ARCH) durch ihre jeweiligen Werte ersetzt.

MaxContentsChange

Setzt die Anzahl der Kilobytes der Inhaltdateien, die jeden Tag generiert werden. Die Inhaltdateien werden reihum ersetzt, so dass sie über mehrere Tage alle neu gebildet werden.

ContentsAge

Steuert die Anzahl der Tage, die eine Inhaltsdatei erlaubt ist ohne Änderung geprüft zu werden. Wenn die Grenze überschritten ist, wird die mtime der Inhaltsdatei aktualisiert. Dieser Fall kann auftreten, wenn die Package-Datei auf einem Weg geändert wurde, der nicht in einer neuen Inhaltsdatei resultierte [überschreibendes Bearbeiten zum Beispiel]. Ein Aufhalten ist erlaubt, in der Hoffnung dass neue .debs installiert werden, die sowieso eine neue Datei benötigen. Die Vorgabe ist 10, die Einheiten sind Tage.

Directory

Setzt den Beginn des .deb-Verzeichnisbaumes. Vorgabe ist $(DIST)/$(SECTION)/binary-$(ARCH)/

SrcDirectory

Setzt den Beginn des Quellpaketverzeichnisbaumes. Vorgabe ist $(DIST)/$(SECTION)/source/

Packages

Setzt die Ausgabe-Packages-Datei. Vorgabe ist $(DIST)/$(SECTION)/binary-$(ARCH)/Packages

Sources

Sets the output Sources file. Defaults to $(DIST)/$(SECTION)/source/Sources

Translation

Set the output Translation-en master file with the long descriptions if they should be not included in the Packages file. Defaults to $(DIST)/$(SECTION)/i18n/Translation-en

InternalPrefix

Setzt die Pfad-Präfix, die bewirkt, dass ein symbolischer Verweis wie ein interner anstatt wie ein externer Verweis behandelt wird. Vorgabe ist $(DIST)/$(SECTION)/

Contents

Setzt die Ausgabe-Contens-Datei. Vorgabe ist $(DIST)/Contents-$(ARCH). Wenn diese Einstellung bewirkt, dass mehrere Paketdateien auf einer einzelnen Inhaltsdatei abgebildet werden (so wie es Vorgabe ist), dann wird apt-ftparchive diese Dateien automatisch integrieren.

Contents::Header

Setzt die Kopfdatendatei, um sie der Inhaltsausgabe voranzustellen.

BinCacheDB

Setzt die Programmzwischenspeicherdatenbank zur Benutzung in diesem Abschnitt. Mehrere Abschnitte können sich die gleiche Datenbank teilen.

FileList

Gibt an, dass apt-ftparchive die Liste der Dateien aus der vorgegebenen Datei liest, anstatt den Verzeichnisbaum zu durchlaufen. Relativen Dateinamen wird das Archivverzeichnis vorangestellt.

SourceFileList

Gibt an, dass apt-ftparchive die Liste der Dateien aus der vorgegebenen Datei liest, anstatt den Verzeichnisbaum zu durchlaufen. Relativen Dateinamen wird das Archivverzeichnis vorangestellt. Dies wird benutzt, wenn Quellindizes verarbeitet werden.

Tree-Abschnitt

Der Tree-Abschnitt definiert einen Standard-Debian-Dateibaum, der aus einem Basisverzeichnis, dann mehreren Abschnitten in diesem Basisverzeichnis und am Ende, mehreren Architekturen in jedem Abschnitt besteht. Die genaue benutzte Pfadeinstellung ist durch die Directory-Ersetzungsvariable definiert.

The Tree section takes a scope tag which sets the $(DIST) variable and defines the root of the tree (the path is prefixed by ArchiveDir). Typically this is a setting such as dists/lenny.

Alle im TreeDefault-Abschnitt definierten Einstellungen können in einem Tree-Abschnitt, sowie als drei neue Variablen benutzt werden.

When processing a Tree section apt-ftparchive performs an operation similar to:

 for i in Sections do 
    for j in Architectures do
       Generate for DIST=scope SECTION=i ARCH=j
      
 

Abschnitte

Dies ist eine durch Leerzeichen getrennte Liste der Abschnitte, die unter der Distribution erscheint, typischerweise etwas wie main contrib non-free

Architekturen

Dies ist eine durch Leerzeichen getrennte Liste aller Architekturen, die unter dem Suchabschnitt erscheinen. Die spezielle Architektur »source« wird benutzt, um anzugeben, dass dieser Baum ein Quellarchiv besitzt.

LongDescription

Sets if long descriptions should be included in the Packages file or split out into a master Translation-en file.

BinOverride

Setzt die Programm-Override-Datei. Die Override-Datei enthält Abschnitt, Priorität und Adressinformationen des Betreuers.

SrcOverride

Setzt die Quell-Override-Datei. Die Override-Datei enthält Abschnittsinformationen.

ExtraOverride

Setzt die zusätzliche Programm-Override-Datei.

SrcExtraOverride

Setzt die zusätzliche Quell-Override-Datei.

BinDirectory-Abschnitt

Der bindirectory-Abschnitt definiert einen Programmverzeichnisbaum ohne spezielle Struktur. Die scope-Markierung gibt den Ort des Programmverzeichnisses an und die Einstellungen sind denen des Tree-Abschnitts ohne Platzhaltervariablen oder AbschnittArchitektur ähnlich.

Packages

Setzt die Packages-Dateiausgabe.

Sources

Setzt die Sources-Dateiausgabe. Entweder Packages oder Sources ist erforderlich.

Contents

Setzt die Contents-Dateiausgabe. (optional)

BinOverride

Setzt die Programm-Override-Datei.

SrcOverride

Setzt die Quell-Override-Datei.

ExtraOverride

Setzt die zusätzliche Programm-Override-Datei.

SrcExtraOverride

Setzt die zusätzliche Quell-Override-Datei.

BinCacheDB

Setzt die Zwischenspeicherdatenbank.

PathPrefix

Hängt einen Pfad an alle Ausgabepfade an.

FileList, SourceFileList

Gibt die Dateilistendatei an.

DIE PROGRAMM-OVERRIDE-DATEI

Die Programm-Override-Datei ist vollständig zu dpkg-scanpackages(1) kompatibel. Sie enthält vier durch Leerzeichen getrennte Felder. Das erste Feld ist der Paketname, das zweite ist die Priorität zu der das Paket erzwungen wird, das dritte ist der Abschnittzu der das Paket erzwungen wird und das letzte Feld ist das Betreuerumsetzungsfeld.

Die allgemeine Form des Betreuerfelds ist:

 alt [// oldn]* => neu
 

oder einfach

 neu
 

. Die erste Form erlaubt es, eine durch Doppelschrägstrich getrennte Liste alter E-Mail-Adressen anzugegeben. Wenn eine davon gefunden wird, wird die neue für das Betreuerfeld ersetzt. Die zweite Form ersetzt das Betreuerfeld bedingungslos.

DIE QUELL-OVERRIDE-DATEI

Die Quell-Override-Datei ist vollständig kompatibel zu dpkg-scansources(1). Sie enthält zwei durch Leerzeichen getrennte Felder. Das erste Feld ist der Quellpaketname, das zweite ist der Abschnitt, dem er zugeordnet ist.

DIE ZUSäTZLICH OVERRIDE-DATEI

Die zusätzlich Override-Datei erlaubt jeder beliebigen Markierung zur Ausgabe hinzugefügt oder darin ersetzt zu werden. Sie hat drei Spalten. Die erste ist das Paket, die zweite ist die Markierung und der Rest der Zeile ist der neue Wert.

OPTIONEN

Alle Befehlszeilenoptionen können durch die Konfigurationsdatei gesetzt werden, die Beschreibung gibt die zu setzende Option an. Für boolesche Optionen können Sie die Konfigurationsdatei überschreiben, indem Sie etwas wie -f-, --no-f, -f=no oder etliche weitere Varianten benutzen.

--md5

Generiert MD5-Summen. Dies ist standardmäßig an, wenn es ausgeschaltet ist, haben die generierten Indexdateien keine MD5Sum-Felder, sofern dies möglich ist. Konfigurationselement: APT::FTPArchive::MD5

-d, --db

Benutzt eine Programmzwischenspeicherdatenbank. Dies hat keine Auswirkung auf den »generate«-Befehl. Konfigurationselement: APT::FTPArchive::DB.

-q, --quiet

Still; erzeugt eine Ausgabe, die für Protokollierung geeignet ist und Fortschrittsanzeiger weglässt. Mehr »q«s unterdrücken mehr Ausgaben, bis zu einem Maximum von 2. Sie können außerdem -q=# benutzen, um die Stillestufe zu setzen, was die Konfigurationsdatei überschreibt. Konfigurationselement: quiet.

--delink

Führt Delinking aus. Wenn die External-Links-Einstellung benutzt wird, schaltet diese Option das Delinking zu Dateien ein. Standardmäßig ist es an und kann mit --no-delink ausgeschaltet werden. Konfigurationselement: APT::FTPArchive::DeLinkAct.

--contents

Führt Inhaltsgenerierung durch. Wenn diese Option gesetzt ist und Paketindizes mit einer Zwischenspeicherdatenbank generiert werden, dann wird die Dateiliste auch extrahiert und für spätere Benutzung in der Datenbank gespeichert. Wenn der »generate«-Befehl benutzt wird, erlaubt diese Option außerdem die Erzeugung beliebiger Contents-Dateien. Die Vorgabe ist an. Konfigurationselement: APT::FTPArchive::Contents.

-s, --source-override

Wählt die Quell-Override-Datei, die mit dem sources-Befehl benutzt wird. Konfigurationselement: APT::FTPArchive::SourceOverride.

--readonly

Gibt der Zwischenspeicherdatenbank nur Lesezugriff. Konfigurationselement: APT::FTPArchive::ReadOnlyDB.

-a, --arch

Accept in the packages and contents commands only package files matching *_arch.deb or *_all.deb instead of all package files in the given path. Configuration Item: APT::FTPArchive::Architecture.

APT::FTPArchive::AlwaysStat


apt-ftparchive(1) caches as much as possible of metadata in a cachedb. If packages are recompiled and/or republished with the same version again, this will lead to problems as the now outdated cached metadata like size and checksums will be used. With this option enabled this will no longer happen as it will be checked if the file was changed. Note that this option is set to "false" by default as it is not recommend to upload multiply versions/builds of a package with the same versionnumber, so in theory nobody will have these problems and therefore all these extra checks are useless.

APT::FTPArchive::LongDescription

This configuration option defaults to "true" and should only be set to "false" if the Archive generated with apt-ftparchive(1) also provides Translation files. Note that the Translation-en master file can only be created in the generate command.

-h, --help

Ein kurze Aufrufzusammenfassung zeigen.

-v, --version

Die Version des Programms anzeigen.

-c, --config-file

Configuration File; Specify a configuration file to use. The program will read the default configuration file and then this configuration file. If configuration settings need to be set before the default configuration files are parsed specify a file with the APT_CONFIG environment variable. See apt.conf(5) for syntax information.

-o, --option

Eine Konfigurationsoption setzen; Dies wird eine beliebige Konfigurationsoption setzen. Die Syntax lautet -o Foo::Bar=bar. -o und --option kann mehrfach benutzt werden, um verschiedene Optionen zu setzen.

BEISPIELE

Um eine gepackte Paketdatei für ein Verzeichnis zu erstellen, das Programmpakete (.deb) enthält:

 apt-ftparchive Pakete Verzeichnis | gzip > Pakete.gz
 

SIEHE AUCH

apt.conf(5)

DIAGNOSE

apt-ftparchive gibt bei normalen Operationen 0 zurück, dezimal 100 bei Fehlern.

FEHLER

m[blue]APT-Fehlerseitem[][1]. Wenn Sie einen Fehler in APT berichten möchten, lesen Sie bitte /usr/share/doc/debian/bug-reporting.txt oder den reportbug(1)-Befehl. Verfassen Sie Fehlerberichte bitte auf Englisch.

ÜBERSETZUNG

Die deutsche Übersetzung wurde 2009 von Chris Leick c.leick@vollbio.de angefertigt in Zusammenarbeit mit dem Deutschen l10n-Team von Debian debian-l10n-german@lists.debian.org.

Note that this translated document may contain untranslated parts. This is done on purpose, to avoid losing content when the translation is lagging behind the original content.

AUTHORS

Jason Gunthorpe

APT-Team

NOTES

1.
APT-Fehlerseite
http://bugs.debian.org/src:apt