Software Installatiebronnen

Uit openSUSE

(Doorverwezen vanaf Software Repositories)
Software Installatiebronnen
YaST - YaST inhoud - Metadata beschrijvingen - Media - Repomd


Inhoud

Software installatiebronnen

Wat is een software installatiebron?

Een software installatiebron maakt software beschikbaar voor het systeem. Het doet dat in twee delen:

  1. metadata
  2. payload data (bijvoorbeeld pakketten)

De meeste software installatiebronnen bevatten alleen pakketten. SUSE installatiebronnen ondersteunen ook patches, patronen en producten.

Metadata

Metadata stelt de inhoudstafel voor van een software installatiebron.

Die metadata bevat verscheidene informatie over de sofware (gewoonlijk RPM pakketten) die beschikbaar is in een installatiebron, zoals:

  • (pakket) naam, versie, uitgave, architectuur, distributie;
  • samenvatting, beschrijving, licentie, project website;
  • wat het vereist;
  • wat het bevat (, en de lijst van bestanden die in het pakket zitten).
  • De wijzigingslog van de software.

Deze metadata informatie is nodig voor package managers zoals zypper, rug, apt-rpm, smart, yum... om in de mogelijkheid te zijn te berekenen hoe pakketinstallaties te doen, upgrades, verwijderingen (de vereist/bevat informatie is vooral hier interessant).

De metadata is niet voldoende voor de effectieve installatie van software - pakketten zijn deel van de payload (zie lager)

Metadata wordt compleet gedownload wanneer een installatiebron voor de eerste keer wordt ververst wanneer onderdelen veranderd zijn (bijvoorbeeld een pakket toegevoegd of geüpgrade).

Het grootste verschil tussen verschillende types van installatiebronnen (zie lager) is de manier waarop de metadata is voorgesteld. De inhoud in de metadata is immers praktisch identiek.

Er zijn verschillende metadata formaten:

  • REPOMD (Repository MetaData), ook wel "rpm-md" (RPM Metadata) genoemd, alsook "yum" (omdat het het gedegen formaat is voor de yum package manager);
  • yast2;
  • apt-rpm (voor RPM) en apt-deb (voor DEB);
  • Red Carpet (ook Open Carpet genoemd);
  • RPM-HDL (RPM Header List);
  • URPMI (voor Mandriva's package manager);
  • slack, voor Slackware's "package manager";

en misschien nog een paar andere.

Dus, helaas, is er min of meer een metadata-formaat voor elke package manager.

Tegenwoordig lijken de meeste package managers richting REPOMD ondersteuning te gaan, dewelke min of meer standaard aan het worden is:

  • YaST2 ondersteunt het in SUSE Linux 10.0;
  • libzypp ondersteunt het in SUSE Linux 10.1;
  • yum ondersteunt het, kennelijk, want het is het yum-specifiek formaat ;);
  • apt-rpm ondersteunt het ook, sinds één of twee versies (thans niet de versie die is geleverd SUSE Linux 10.1);
  • smart ondersteunt het, natuurlijk ;) (meer informatie hierover vind je hieronder).


Payload data

De payload data - gewoonlijk de pakketten - word alleen opgevraagd op aanvraag, bijvoorbeeld wanneer een pakket aangeduid is om geïnstalleerd te worden.

Beide delen - metadata en payload data - worden gewoonlijk samengehouden op eenzelfde server. Maar er is niets wat dit eigenlijk vereist. De pakketten zelf kunnen gehost worden door meerdere/verscheidene servers voor het spreiden van de belasting of om beveiligingsredenen.

Andere namen voor installatiebronnen

De volgende termen worden gebruikt door verschillende package managers en zijn alle referenties naar installatiebronnen. Zulke referenties bevatten gewoonlijk informatie zoals

  • de basis URL, waar de metadata en de pakketten opgehaald worden
  • een naam

maar ook aanvullende informatie afhankelijk van wat de package manager aankan en ondersteund.

  • YaST2 noemt ze "installatiebronnen" of "software catalogen";
  • ZMD/rug noemt ze "catalogen";
  • smart noemt ze "channels" (Red Carpet noemt ze ook "channels")
  • apt-rpm noemt ze "sources";
  • yum noemt ze "repos" (afkorting van repositories)

Uiteindelijk zijn ze allemaal hetzelfde: referenties naar (RPM pakket) installatiebronnen ;).

Types installatiebronnen

openSUSE ondersteunt de volgende types installatiebronnen :

YaST

Het YaST formaat wordt gewoonlijk gebruikt voor installatiemedia, zoals CD en DVD. Het wordt ook gebruikt wanneer installatiemedia gekopieerd wordt naar een server. Dit formaat wordt enkel gebruikt door openSUSE.

repomd

rpm XML metadata installatiebron formaat is een gestandardiseerd, veelgebruikt formaat voor online installatiebronnen. openSUSE ondersteunt een uitgebreid formaat welk patches, patronen, en producten omvat. (repomd wordt soms nog steeds yum genoemd, maar deze term is eigenlijk afgekeurd.)

Mappen

plaindir - een map die RPM pakketten bevat - wordt ook ondersteund maar telt niet mee als installatiebron zoals deze bovenaan dit artikel wordt gedefiniëerd.

Toegang tot een installatiebron

Toegang tot een installatiebron wordt gespecificeerd door middel van een URL, welke het protocol (bijvoorbeeld http), de server (bijvoorbeeld ftp.opensuse.org), en de map op de server (bijvoorbeeld pub/opensuse/10.1) bevat.

De URL vermeld niet over welk type installatiebron het gaat. Het volgende voorbeeld illustreert dit.

(1) http://ftp.g(...).de/pub/linux/misc/suser-guru/rpm/10.1
(2) http://ftp.g(...).de/pub/linux/misc/suser-guru/rpm/10.1/RPMS
(3) http://ftp.g(...).de/pub/linux/suse/apt/SuSE/10.1-i386
  • (1) is een yast2 installatiebron
  • (2) is een REPOMD installatiebron;
  • (3) is een APT-RPM installatiebron.