Provided by: apt-utils_1.6.17_amd64 

NAME
apt-ftparchive - Hulpprogramma om indexbestanden te maken
SAMENVATTING
apt-ftparchive [-dsq] [--md5] [--delink] [--readonly] [--contents] [--arch architecture]
[-o=configuratietekenreeks] [-c=configuratiebestand]
{packages pad... [override-bestand [padprefix]] |
sources pad... [override-bestand [padprefix]] | contents pad | release pad |
generate configuratiebestand sectie... | clean configuratiebestand | {-v | --version} |
{-h | --help}}
OMSCHRIJVING
apt-ftparchive is een gereedschap voor de commandoregel dat de indexbestanden maakt die APT gebruikt om
toegang te hebben tot een distributiebron. De indexbestanden moeten aangemaakt worden op de site van
oorsprong en gebaseerd zijn op de inhoud van die site.
apt-ftparchive is een uitbreiding van het programma dpkg-scanpackages(1) dat diens volledige
functionaliteit incorporeert via het commando packages. Het bevat ook een programma, contents, voor het
aanmaken van contents-bestanden en degelijk ontwikkelde middelen om dit aanmaakproces voor een volledig
archief door een script te laten uitvoeren.
apt-ftparchive kan uit zichzelf gebruik maken van binaire databases om de inhoud van een .deb-bestand te
bufferen en het is van geen enkel extern programma afhankelijk met uitzondering van gzip(1). Wanneer een
volledige aanmaak gebeurt, zal het automatisch een controle uitvoeren op gewijzigde bestanden en de
gewenste gecomprimeerde uitvoerbestanden bouwen.
Tenzij de optie -h, of --help opgegeven werd, moet een van de onderstaande commando's gebruikt worden.
packages
Het commando packages maakt vertrekkend vanuit een mappenboom een package-bestand aan. Het begint bij
de opgegeven map en doorzoekt de onderliggende mappen op de aanwezigheid van .deb-bestanden en
schrijft voor elk ervan een pakketfiche weg naar de standaarduitvoer. Dit commando is bij benadering
analoog aan dpkg-scanpackages(1).
De optie --db kan gebruikt worden om een bufferende binaire database op te geven.
sources
Het commando sources maakt vertrekkend vanuit een mappenboom een indexbestand over broncodebestanden
aan. Het begint bij de opgegeven map en doorzoekt de onderliggende mappen op de aanwezigheid van
.dsc-bestanden en schrijft voor elk ervan een broncodebestandsfiche weg naar de standaarduitvoer. Dit
commando is bij benadering analoog aan dpkg-scansources(1).
Indien een override-bestand opgegeven werd, zal gezocht worden naar een broncode-override-bestand met
de extensie .src. De optie --source-override kan gebruikt worden om op te geven dat een ander
broncode-override-bestand gebruikt zal worden.
contents
Het commando contents maakt voor een mappenboom een contents-bestand aan. Het begint bij de opgegeven
map en doorzoekt de onderliggende mappen op de aanwezigheid van .deb-bestanden en leest van elk
bestand de bestandenlijst. Daarna sorteert het de lijst van bestanden en schrijft die gekoppeld aan
een pakket weg naar de standaarduitvoer. Mappen worden niet naar standaarduitvoer geschreven. Indien
hetzelfde bestand aan meerdere pakketten toebehoort, worden in de uitvoer de pakketten door een komma
gescheiden.
De optie --db kan gebruikt worden om een bufferende binaire database op te geven.
release
Het commando release maakt voor een mappenboom een Release-bestand aan. Het begint bij de opgegeven
map en zoekt daar en in de onderliggende mappen standaard naar niet-gecomprimeerde en gecomprimeerde
Packages-, Sources, Contents, Components en icons-bestanden, alsook naar Release-, Index- en
md5sum.txt-bestanden. (APT::FTPArchive::Release::Default-Patterns). Bijkomende bestandsnaampatronen
kunnen toegevoegd worden door ze op te sommen inAPT::FTPArchive::Release::Patterns. Het commando
schrijft vervolgens naar de standaarduitvoer eenRelease-bestand dat (standaard) voor elk bestand een
MD5-, SHA1-, SHA256 en SHA512-verzameling bevat.
De waarden voor de bijkomende velden met metagegevens in het Release-bestand worden ontleend aan de
overeenkomstige variabelen uit APT::FTPArchive::Release, bijvoorbeeld
APT::FTPArchive::Release::Origin. De ondersteunde velden zijn: Origin, Label, Suite, Version,
Codename, Date, NotAutomatic, ButAutomaticUpgrades, Acquire-By-Hash, Valid-Until, Signed-By,
Architectures, Components en Description.
generate
Het commando generate werd ontworpen voor gebruik in een cron-script en bouwt indexen volgens het
opgegeven configuratiebestand. De configuratietaal voorziet in een flexibel instrument om op te geven
welke indexbestanden over welke mappen gemaakt moeten worden en ze voorziet ook in een eenvoudig
instrument voor het onderhoud van de vereiste instellingen.
clean
Het commando clean schoont de door het opgegeven configuratiebestand gebruikte gegevensbestanden op
door er de niet langer gebruikte fiches uit te verwijderen.
DE CONFIGURATIE VAN HET GENERATE-COMMANDO
Het commando generate gebruikt een configuratiebestand met de beschrijving van de archieven die
gegenereerd moeten worden. Het gebruikt het typische ISC configuratieformaat dat men aantreft in
ISC-gereedschap zoals bind 8 en dhcpd. apt.conf(5) bevat een beschrijving van de syntaxis. Noteer dat de
configuratie van generate per sectie ontleed wordt, maar dat apt.conf(5) per boom ontleed wordt. Dit
heeft enkel invloed op de manier waarop met het bereiklabel omgesprongen wordt.
De configuratie van generate bevat vier aparte secties die hierna besproken worden.
De sectie Dir
De sectie Dir definieert de standaardmappen waarin men de bestanden kan lokaliseren die nodig zijn
tijdens het maakproces. Deze mappen worden voorafgegaan door bepaalde relatieve paden die in de volgende
secties gedefinieerd worden om zo een volledig en absoluut pad te bekomen.
ArchiveDir
Geeft de basismap van het FTP-archief op. In een standaardconfiguratie van Debian is dat de map die
de nodes ls-LR en dist bevatten.
OverrideDir
Geeft de locatie van de override-bestanden op.
CacheDir
Geeft de locatie van de cachebestanden op.
FileListDir
Geeft de locatie van de bestandenlijst-bestanden op, indien de instelling FileList hieronder gebruikt
wordt.
De sectie Default
De sectie Default geeft standaardwaarden en instellingen op die de werking van de generator besturen.
Andere secties kunnen deze standaardwaarden overschrijven met een sectiegebonden instelling.
Packages::Compress
Stelt het standaard compressieschema in dat voor de pakketindexbestanden gebruikt wordt. Het is een
tekenreeks die bestaat uit een door spaties gescheiden lijst van minstens een van de
compressieprogramma's die via het configuratiebereik APT::Compressor geconfigureerd zijn. Voor alle
compressieschema's is de standaardinstelling '. gzip'.
Packages::Extensions
Stelt in wat de lijst is van bestandsextensies die er standaard op wijzen dat het pakketbestanden
betreft. Dit is standaard ingesteld op '.deb'.
Sources::Compress
Dit is gelijkaardig aan Packages::Compress, behalve dat het de compressie van de Sources-bestanden
regelt.
Sources::Extensions
Stelt in wat de lijst is van bestandsextensies die er standaard op wijzen dat het broncodebestanden
betreft. Dit is standaard ingesteld op '.dsc'.
Contents::Compress
Dit is gelijkaardig aan Packages::Compress, behalve dat het de compressie van de Contents-bestanden
regelt.
Translation::Compress
Dit is gelijkaardig aan Packages::Compress, behalve dat het de compressie van het Translation-en
hoofdbestand regelt.
DeLinkLimit
Geeft het aantal kilobytes op dat per doorloop ontkoppeld (en vervangen door harde koppelingen) moet
worden. Dit wordt gebruikt in samenhang met de sectiegebonden instelling External-Links.
FileMode
Stelt de modus in van alle aangemaakte indexbestanden. Standaard is dit ingesteld op 0644. Alle
indexbestanden worden op deze modus ingesteld ongeacht het umask.
LongDescription
Stelt in of de gedetailleerde beschrijvingen moeten opgenomen worden in het Packages-bestand of
afgesplitst en in een Translation-en hoofdbestand moeten geplaatst worden.
De sectie TreeDefault
Stelt standaarden in die specifiek zijn voor de secties Tree. Al deze variabelen zijn
substitutievariabelen waarbij de tekenreeksen $(DIST), $(SECTION) en $(ARCH) vervangen worden door hun
respectieve waarden.
MaxContentsChange
Stelt in voor welk aantal kilobytes er iedere dag contents-bestanden gegenereerd worden.
Contents-bestanden komen een na een aan de beurt, zodat ze over een periode van een aantal dagen
allemaal opnieuw gebouwd worden.
ContentsAge
Regelt het aantal dagen dat een contents-bestand mag gebruikt worden zonder dat het gewijzigd werd.
Indien die limiet overschreden wordt, zal het mtime van het contents-bestand bijgewerkt worden. Een
dergelijke situatie kan zich voordoen als het pakketbestand op zo een manier gewijzigd wordt dat het
niet resulteert in een nieuw contents-bestand [bijvoorbeeld een wijziging aan override]. Uitstel is
toegelaten als gehoopt mag worden dat nieuwe .deb-bestanden geïnstalleerd zullen worden wat hoe dan
ook een nieuw contents-bestand vereist. De standaard is 10, waarbij de eenheden in dagen uitgedrukt
worden.
Directory
Stelt de basis van de .deb-mappenboom in. Standaard is dat $(DIST)/$(SECTION)/binary-$(ARCH)/
SrcDirectory
Stelt de basis in van de mappenboom van broncodepakketten. Standaard is dat
$(DIST)/$(SECTION)/source/
Packages
Stelt in waar het Packages-bestand geschreven wordt. Standaard is dat
$(DIST)/$(SECTION)/binary-$(ARCH)/Packages
Sources
Stelt in waar het Sources-bestand geschreven wordt. Standaard is dat
$(DIST)/$(SECTION)/source/Sources
Translation
Stelt in waar het hoofdbestand Translation-en geschreven wordt met daarin de uitgebreide
beschrijvingen in het geval die niet in het bestand Packages opgenomen werden. De standaard is
$(DIST)/$(SECTION)/i18n/Translation-en
InternalPrefix
Stelt het pad-prefix in dat regelt wanneer een symbolische koppeling als een interne en niet als een
externe koppeling beschouwd moet worden. De standaard is $(DIST)/$(SECTION)/
Contents
Stelt in waar het Contents-bestand geschreven wordt. De standaard is
$(DIST)/$(SECTION)/Contents-$(ARCH). Indien deze instelling ertoe leidt dat meerdere
Packages-bestanden horen bij een enkel Contents-bestand (wat standaard het geval is), dan zal
apt-ftparchive deze pakketbestanden automatisch tot een geheel integreren.
Contents::Header
Stelt het koptekstbestand in dat aan het begin van het aangemaakte contents-bestand moet komen.
BinCacheDB
Stelt de binaire database in om als cache te dienen voor deze sectie. Meerdere secties kunnen gebruik
maken van dezelfde database.
FileList
Stelt in dat apt-ftparchive de lijst van bestanden moet halen uit het opgegeven bestand en niet moet
opmaken aan de hand van het doorlopen van de mappenboom. De archiefmap wordt als prefix aan relatieve
bestandsnamen toegevoegd.
SourceFileList
Stelt in dat apt-ftparchive de lijst van bestanden moet halen uit het opgegeven bestand en niet moet
opmaken aan de hand van het doorlopen van de mappenboom. De archiefmap wordt als prefix aan relatieve
bestandsnamen toegevoegd. Dit wordt gebruikt bij het verwerken van broncode-indexen.
De sectie Tree
De sectie Tree definieert een standaard bestandsboom voor Debian die bestaat uit een basismap met daarin
dan meerdere secties en binnen elke sessie tenslotte meerdere architecturen. Het exacte pad dat gebruikt
wordt, wordt gedefinieerd door de substitutievariabele Directory.
De sectie Tree werkt met een bereiklabel dat de variabele $(DIST) instelt en de basis van de
boomstructuur definieert (vooraan aan het pad wordt ArchiveDir toegevoegd). Doorgaans is dat een
instelling zoals dists/stretch.
Alle in de sectie TreeDefault gedefinieerde instellingen kunnen ook in een Tree-sectie gebruikt worden
evenals drie nieuwe variabelen.
Als apt-ftparchive een Tree-sectie verwerkt, voert het een operatie uit die vergelijkbaar is met:
for i in Sections do
for j in Architectures do
Generate for DIST=scope SECTION=i ARCH=j
Sections
Dit is een door spaties gescheiden lijst van secties die onder de distributie te vinden zijn.
Doorgaans is dat iets zoals main contrib non-free
Architectures
Dit is een met spaties gescheiden lijst van alle architecturen die voorkomen onder de sectie waarin
gezocht wordt. De bijzondere architectuur 'source' wordt gebruikt om aan te geven dat deze
boomstructuur een archief met broncode bevat. De architectuur 'all' signaleert dat
architectuurspecifieke bestanden zoals Packages, niet telkens in elk bestand informatie moeten
opnemen over pakketten van het architectuurtype all, aangezien die te vinden is in een specifiek
bestand.
LongDescription
Stelt in of de gedetailleerde beschrijvingen moeten opgenomen worden in het Packages-bestand of
afgesplitst en in een Translation-en hoofdbestand moeten geplaatst worden.
BinOverride
Stelt het binaire override-bestand in. Het override-bestand bevat informatie over sectie, prioriteit
en het adres van de onderhouder.
SrcOverride
Stelt het override-bestand van de broncode in. Het override-bestand bevat informatie over de sectie.
ExtraOverride
Stelt het binaire extra override-bestand in.
SrcExtraOverride
Stelt het extra override-bestand van de broncode in.
De sectie BinDirectory
De sectie bindirectory definieert een binaire mappenboom zonder bijzondere structuur. Het bereiklabel
specificeert de locatie van de binaire map en de instellingen zijn gelijkaardig aan die van de sectie
Tree zonder substitutievariabelen of instellingen van het type SectionArchitecture.
Packages
Stelt in waar het Packages-bestand aangemaakt wordt.
Sources
Stelt in waar het Sources-bestand aangemaakt wordt. Er is minstens een bestand Packages of Sources
vereist.
Contents
Stelt in waar het Contents-bestand aangemaakt wordt (optioneel).
BinOverride
Stelt het binaire override-bestand in.
SrcOverride
Stelt het override-bestand voor de broncode in.
ExtraOverride
Stelt het binaire extra override-bestand in.
SrcExtraOverride
Stelt het extra override-bestand van de broncode in.
BinCacheDB
Stelt de cache database in.
PathPrefix
Voegt een pad toe aan al de paden van de uitvoer.
FileList, SourceFileList
Specificeert het bestand met de bestandslijst.
HET BINAIRE OVERRIDE-BESTAND
Het binaire override-bestand is volledig compatibel met dpkg-scanpackages(1). Het bevat vier door spaties
gescheiden velden. Het eerste veld bevat de pakketnaam, het tweede bevat de prioriteit die aan dat pakket
gegeven moet worden, het derde bevat de sectie waarin dat pakket geplaatst moet worden en het laatste
veld is voorbehouden voor het opgeven van een vervangende onderhouder.
De algemene vorm van het onderhouder-veld is:
oude [// ouden]* => nieuwe
, of gewoon
nieuwe
De eerste vorm laat toe om een lijst van oude e-mailadressen, van elkaar gescheiden door een dubbele
slash, op te geven. Indien een ervan aangetroffen wordt, dan zal nieuw als de nieuwe waarde voor het
onderhouder-veld gebruikt worden. De tweede vorm vervangt onvoorwaardelijk de inhoud van het
onderhouder-veld.
HET OVERRIDE-BESTAND VOOR BRONCODE
Het override-bestand voor broncode is volledig compatibel met dpkg-scansources(1). Het bestaat uit twee
velden die van elkaar gescheiden worden door een spatie. Het eerste veld bevat de naam van het
broncodepakket en het tweede de sectie waartoe het moet behoren.
HET EXTRA OVERRIDE-BESTAND
Het extra override-bestand maakt het mogelijk om gelijk welk arbitrair label toe te voegen of te
vervangen in de uitvoer. Het bestaat uit drie kolommen. In de eerste staat het pakket vermeld, in de
tweede het label en de rest van de regel bevat de nieuwe waarde die eraan toegekend wordt.
OPTIES
Alle commandoregelopties kunnen via het configuratiebestand ingesteld worden. de omschrijving geeft de in
te stellen configuratieoptie op. Bij booleaanse opties kunt u instellingen uit het configuratiebestand
overschrijven door iets te gebruiken als -f-, --no-f, -f=no en meerdere andere variaties.
--md5, --sha1, --sha256, --sha512
De vermelde controlesom genereren. Standaard staan deze opties aan. Indien ze uitgezet worden, dan
zal het aangemaakte indexbestand zo mogelijk geen velden voor de controlesom bevatten.
Configuratie-items: APT::FTPArchive::Checksum en APT::FTPArchive::Index::Checksum waarbij Index kan
bestaan uit Packages, Sources of Release en Checksum kan bestaan uit MD5, SHA1, SHA256 of SHA512.
-d, --db
Een bufferende binaire database gebruiken. Dit heeft geen invloed op het commando generate.
Configuratie-item: APT::FTPArchive::DB.
-q, --quiet
Stille modus. Door het weglaten van de voortgangsindicatie produceert dit uitvoer die geschikt is om
opgeslagen te worden in een logbestand. Meer q's, met een maximum van 2, resulteren in een verhoogde
stille modus. U kunt ook -q=# gebruiken om het niveau van de stille modus in te stellen en op die
manier het configuratiebestand te overschrijven. Configuratie-item: quiet.
--delink
Ontkoppelingen uitvoeren. Indien de instelling External-Links gebruikt wordt, dan maakt deze optie
het eigenlijk mogelijk om de bestanden te ontkoppelen. Standaard staat dit aangezet en het kan
uitgezet worden met --no-delink. Configuratie-item: APT::FTPArchive::DeLinkAct.
--contents
Het aanmaken van het contents-bestand uitvoeren. Indien deze optie aangezet wordt en de pakketindexen
gegenereerd worden met een bufferende database, dan zal ook de bestandslijst geëxtraheerd worden en
voor later gebruik in de database opgeslagen worden. Als het commando generate gebruikt wordt, laat
deze optie ook toe om Contents-bestanden aan te maken. Standaard staat dit aangezet.
Configuratie-item: APT::FTPArchive::Contents.
-s, --source-override
Het override-bestand voor broncode selecteren om met het commando sources te gebruiken.
Configuratie-item: APT::FTPArchive::SourceOverride.
--readonly
De bufferende databases alleen lezen maken. Configuration Item: APT::FTPArchive::ReadOnlyDB.
-a, --arch
Voor de commando's packages en contents enkel pakketbestanden toelaten die overeenkomen met
*_arch.deb of *_all.deb in plaats van alle pakketbestanden in het opgegeven pad. Configuratie-item:
APT::FTPArchive::Architecture.
APT::FTPArchive::AlwaysStat
apt-ftparchive(1) buffert zoveel mogelijk metadata in een bufferende database. Indien er pakketten
opnieuw gebouwd en/of uitgebracht worden met dezelfde versie, zal dit tot problemen leiden, aangezien
de dan verouderde maar in de buffer aanwezige metadata, zoals grootte en controlesommen, gebruikt
zullen worden. Indien deze optie aangezet wordt, zal dit niet meer gebeuren, vermits gecontroleerd
zal worden of het bestand gewijzigd werd. Noteer dat deze optie standaard ingesteld staat op "false"
(uit), omdat het niet aangewezen is om meerdere versies/bouwversies van een pakket met hetzelfde
versienummer te uploaden. In theorie zal dus niemand met deze problemen geconfronteerd worden en
daarom zijn al deze extra controles nutteloos.
APT::FTPArchive::LongDescription
Deze configuratieoptie staat standaard ingesteld op "true" (aan) en zou enkel moeten ingesteld worden
op "false" (uit) indien het archief dat met apt-ftparchive(1) gegenereerd wordt ook
Translation-bestanden bevat. Merk op dat het hoofdbestand Translation-en enkel aangemaakt kan worden
via het commando generate.
-h, --help
Een korte samenvatting van het gebruik weergeven.
-v, --version
Het versienummer van het programma weergeven.
-c, --config-file
Configuratiebestand; Een te gebruiken configuratiebestand opgeven. Het programma zal het standaard
configuratiebestand inlezen en nadien dit configuratiebestand. Als configuratie-instellingen
opgegeven moeten worden vooraleer de standaard configuratiebestanden verwerkt worden, geef dan een
bestand op met de omgevingsvariabele APT_CONFIG. Raadpleeg apt.conf(5) voor informatie over de
syntaxis.
-o, --option
Een configuratieoptie instellen; Dit stelt een willekeurige configuratieoptie in. De syntaxis is -o
Foo::Bar=bar. -o en --option kunnen meermaals gebruikt worden om verschillende opties in te stellen.
VOORBEELDEN
Om voor een map met binaire pakketten (.deb) een gecomprimeerd Packages-bestand aan te maken:
apt-ftparchive pakketten map | gzip > Packages.gz
ZIE OOK
apt.conf(5)
DIAGNOSTIEK
apt-ftparchive geeft de terugkeerwaarde nul bij een normaal verlopen operatie, het decimaal getal 100 in
geval van een fout.
BUGS
APT bugpagina[1]. Indien u een bug in APT wilt rapporteren, raadpleeg dan
/usr/share/doc/debian/bug-reporting.txt of het reportbug(1) commando.
VERTALING
De Nederlandse vertaling werd in 2015 gemaakt door Frans Spiesschaert <Frans.Spiesschaert@yucom.be>, in
samenwerking met het Debian Dutch l10n Team <debian-l10n-dutch@lists.debian.org>.
Merk op dat de vertaling van dit document nog onvertaalde delen kan bevatten. Dit is intentioneel om te
vermijden dat inhoud verloren zou gaan door een vertaling die achterop loopt op het origineel.
AUTEURS
Jason Gunthorpe
APT-team
OPMERKINGEN
1. APT bugpagina
http://bugs.debian.org/src:apt
APT 1.6.17 25 november 2016 APT-FTPARCHIVE(1)