Programme werden bei Ubuntu in Form sogenannter Pakete installiert. Diese Pakete werden in Paketquellen (Repositories) im Internet zur Verfügung gestellt. Besteht jedoch keine oder nur eine langsame Internetverbindung, sollte man sich die Einrichtung einer [:Lokale_Paketquellen: lokalen Paketquelle] überlegen. Lokale Paketquellen sind Paketquellen auf Datenträgern (CD/DVD, USB-Stick, externer Festplatte) oder im LAN. {{{#!vorlage Hinweis Die [:Paketquellen_freischalten: Einbindung von Paketquellen] wird in einer eigenen Anleitung beschrieben. Die Seite [:sources.list:] enthält einige Beispiele für offizielle Quellen. }}} [[Inhaltsverzeichnis(2)]] = Unterscheidung der Begriffe = Die eigentliche '''Paketquelle''' (auch Paketdepot genannt) ist eine Internet-Adresse oder ein Medium (CD, DVD), wo die Pakete gespeichert sind, etwa ''archive.ubuntu.com/ubuntu''. Zudem wird nach '''Archiven''' unterschieden, etwa ''hardy'' oder ''hardy-security''. Diese Archive sind jeweils nochmal unterteilt in einzelne '''Komponenten'''. Komponenten werden manchmal auch Sektionen genannt, was eigentlich falsch ist. Im Zusammenhang mit der Paketverwaltung versteht man unter ''"Sektionen"'' Kategorien, in denen Programme nach ihrer Art einsortiert werden, etwa ''"Netzwerk"'', ''"GNOME"'', ''"Mathematik"''. Eine [http://packages.ubuntu.com/hardy Übersicht der Sektionen am Beispiel von Hardy Heron 8.04] {en} macht das deutlich. == Die unterschiedlichen Archive == Die Archive sind eigentlich bei allen Versionen gleich gestrickt. Aus Gründen der Leserlichkeit werden hier die einzelnen Archive anhand der Hardy-Heron-Version beschrieben. Das Wort ''hardy'' ist aber in den meisten Fällen durch die jeweils eingesetzte Ubuntu-Version austauschbar. === hardy === Das ist das eigentliche '''Haupt-Archiv''' der jeweiligen Ubuntu-Version. Sobald die jeweilige Ubuntu-Version fertig ist (Final Status), wie z.B. Hardy Heron (8.04), wird an diesem Archiv nichts mehr geändert. Es kommen weder neue Pakete hinzu, noch werden die vorhandenen Pakete in einer neuen Version zur Verfügung gestellt, geschweige denn einzelne Pakete aus dem Archiv entfernt. Selbst Sicherheits-Aktualisierungen oder Fehlerkorrekturen werden hier nach der Veröffentlichung nicht mehr eingepflegt. Dies geschieht über eigene Archive, siehe unten. === hardy-security === Da aber Aktualisierungen unvermeidlich oder gar zwingend notwendig sind, gibt es dieses '''Archiv mit Sicherheitsaktualisierungen'''. Neben dem Hauptarchiv sollte dieses Archiv definitv verwendet werden, damit Sicherheitslücken und gravierende Fehler durch neue Pakete behoben werden können. In dieses Archiv werden aber keine neuen Versionen mit neuen Funktionen hochgeladen, sondern lediglich die Versionen aus dem Hauptarchiv - um die Fehler korrigiert - aktualisiert. Diese Pakete nennt man deshalb im Englischen auch [wikipedia:Patch_(Software):'patched'], also fehlerbereinigt. (Wortsinn: gestopft/geflickt) Die Fehlerkorrekturen oder [wikipedia:Bugfix: Bugfixes] werden dadurch eingepflegt. === hardy-updates === In diesem '''Archiv für aktualisierte Pakete''' befinden sich ebenfalls lediglich fehlerbereinigte Pakete. Hier sind aber die behobenen Fehler nicht gravierend oder sicherheitsbedingt und daher ist die Installation nicht zwingend erforderlich, sollte aber auch nicht schaden. === hardy-backports === Die Backports enthalten neuere Programmversionen, die aus der aktuellen Entwicklerversion zurückportiert werden. Man sollte aus den Backports nur gezielt einzelne Programme installieren, die man wirklich braucht. Sie sind weder für sich genommen, noch im Zusammenspiel mit dem Rest des Systems, auch nur annähernd so gut getestet, wie die nur geringfügig älteren Versionen, die ohne diese Paketquelle installiert sind. === hardy-proposed === {{{#!vorlage Warnung Pakete aus den proposed-Quellen haben auf Produktiv-Systemen __nichts__ zu suchen. Pakete aus "proposed" können fehlerhaft sein und das komplette System unbrauchbar machen! }}} Dieses '''Archiv für vorgeschlagene Pakete''' gibt es seit Dapper. Dabei werden hier Kandidaten für hardy-updates vorgeschlagen. Ambitionierte und interessierte BenutzerInnen können die Pakete dann installieren und testen und mögliche Fehler oder Probleme melden. Manchmal entsteht durch das Lösen eines Problems, an einer ganz anderen Stelle wieder ein neues Problem. Somit sollen potenzielle Probleme durch breite Tests im Vorfeld gefunden und behoben werden. Dieses Archiv sollte man nur verwenden, wenn man sich einigermaßen mit Ubuntu auskennt und Lust hat, Fehler an das Ubuntu-Team zu melden. Weiterführende Informationen - insbesondere zum selektiven Einsatz dieser Paketquelle - findet man unter https://wiki.ubuntu.com/Testing/EnableProposed {en}. [[Anker(Komponenten)]] == Die Komponenten bei Ubuntu == Die vier Komponenten gelten für alle bisherigen Ubuntu-Versionen einheitlich. Die Pakete sind Komponenten zugeteilt, zum einen nach ihrer Unterstützung durch das Ubuntu-Team (''main'' und ''restricted'' im Gegensatz zu ''universe'' und ''multiverse''), und zum anderen gemäß ihres Status als freie Software (''main'' und ''universe'' im Gegensatz zu ''restricted'' und ''multiverse''). === Main === Die ''main''-Komponente umfasst nur die Pakete, die den Ubuntu-Lizenzanforderungen entsprechen und die das Ubuntu-Team tätig unterstützt. Damit soll ein allgemein nutzbares Linux-System zur Verfügung gestellt werden. Für alle Pakete in dieser Sektion garantiert das Ubuntu-Team technische Unterstützung und rechtzeitige Sicherheitspatches. In der Paketverwaltung [:Synaptic:] sind diese Pakete mit einem {*} markiert. === Restricted === Zur ''restricted''-Komponente gehört Software, die die Ubuntu-Entwickler wegen ihrer Wichtigkeit unterstützen, die aber nicht unter einer geeigneten freien Lizenz steht, um sie in ''main'' zu implementieren. Es handelt sich beispielsweise um binäre Pakete für Grafikkarten-Treiber. Der Grad an Unterstützung ist theoretisch eingeschränkter als für ''main'', weil die Ubuntu-Entwickler keinen Zugriff auf den Quellcode haben. Da diese Sektion aber ebenfalls vom Ubuntu-Team gepflegt wird, sind auch diese Pakete mit {*} gekennzeichnet. === Universe === Die ''universe''-Komponente umfasst ein breites Spektrum an freier Software, die unabhängig von ihrer Lizenz nicht vom Ubuntu-Team unterstützt wird. Damit hat der Benutzer die Möglichkeit, auch solche Programme innerhalb des Ubuntu-Paketverwaltungssystems zu installieren. Möchte man, dass ein Programm in den Ubuntu-Paketquellen enthalten ist, hat man die Möglichkeit ein [:Pakete_für_Universe_vorschlagen: Paket für Universe vorzuschlagen]. === Multiverse === Zur ''multiverse''-Komponente gehört Software, die das Ubuntu-Team nicht unterstützt, und die lizenzrechtlichen Einschränkungen unterliegt. Dazu gehören z.B. Multimediacodecs wie für MP3. === Partner (erst ab 7.10) === Die Komponente ''Partner'' ist erst seit Gutsy Gibbon (7.10) vorhanden und enthält kommerzielle Software, deren Quellcode nicht offen liegt. Damit man nicht immer die Version direkt vom Hersteller herunterladen muss und um ein regelmäßiges Update zu gewährleisten, wurde dieses Archiv eingerichtet. Es befinden sich unter anderem die Programme [:Opera:] und [:RealPlayer:] darin. Hinweis: dieses Archiv ist nicht über archive.ubuntu.com, sondern nur über ''archive.canonical.com'' erreichbar. ([:Canonical_Partner: mehr]) ([wikipedia:Ubuntu#Komponenten:Quelle]) {{{#!vorlage Hinweis Die CD-Version von Ubuntu enthält dabei die Quellen ''main'' und ''restricted'', die DVD-Version enthält keine Pakete aus ''universe'', sondern nur ein paar zusätzliche Pakete aus ''restricted''. }}} = Aufstellung wichtiger Paketquellen = == Die offiziellen Quellen: Stabil und zuverlässig == Es wird empfohlen, Ubuntu direkt aus den offiziellen Quellen zu verwenden. Bei einer Installation sind diese auch voreingestellt. In manchen Betrieben oder Netzen gibt es lokale Mirror-Server (komplette Kopien der Paketquellen). Solange diese immer auf dem aktuellen Stand sind, ist die Verwendung solcher Mirror-Server unproblematisch und sogar vorteilhaft, da sie schneller sind und Kosten und Bandbreite sparen können. Die offiziellen Quellen befinden sich unter '''de.archive.ubuntu.com/ubuntu/'''. [[Anker(Backports)]] == Neuere Programme: Backports und Extras == In die offiziellen Ubuntu-Quellen fließen nach Veröffentlichung einer Ubuntu-Version keine neuen Programme mehr ein, und von neueren Versionen werden nur die Teile übernommen, die eventuelle Sicherheitslücken beheben. Wer neuere Programme verwenden will, muss daher auf die sogenannten [https://help.ubuntu.com/community/UbuntuBackports Backports] {en} ausweichen. Auch zusätzliche, nicht in Ubuntu vorhandene Programme können dort zu finden sein. Backportquellen sind ebenfalls in die Sektionen ''main'', ''restricted'', ''universe'' und ''multiverse'' gegliedert, die auch einzeln aktiviert werden können. {{{#!vorlage Warnung Bei nicht offiziellen Paketquellen kann es zu gravierenden Schwierigkeiten kommen, wenn die Pakete nicht auf Ubuntu abgestimmt oder nicht sorgfältig "gepackt" sind. Selbst bei den nicht unterstützten, aber offiziellen Backports oder etwa auch bei ''universe'' ist die Qualitätssicherung und Abstimmung auf Ubuntu meist entscheidend besser. Siehe hierzu auch den Artikel über [:Fremdquellen:Fremdquellen und Fremdpakete]. Man kann sich viel Ärger sparen, wenn man lieber ein paar Monate auf das nächste Ubuntu oder den offiziellen Backport wartet, bevor man wichtige Sachen, wie etwa das Firefox-Profil (Lesezeichen, Einstellungen, ...) beschädigt. Man sollte Backports nur verwenden, wenn man __genau__ weiß, was man macht. }}} == Binärdateien und Quellcode == Neben den Binärpaketen gibt es auch noch den Quellcode jedes einzelnen Ubuntu-Paketes zum Download. Die Binärpakete werden dabei in der sources.list durch ein '''deb''' am Anfang gekennzeichnet, die Quellcode-Quellen durch ein '''deb-src'''. So stellt z.B. {{{deb-src http://de.archive.ubuntu.com/ubuntu/ hardy universe }}} den Quellcode für alle Pakete aus der ''universe''-Sektion zur Verfügung. == Weitere Quellen == {{{#!vorlage Warnung Es dürfen nur Quellen benutzt werden, deren Eignung für Ubuntu belegt ist. Fremdquellen oder fehlerhaft erstellte Pakete können Abhängigkeiten zerstören und beispielsweise Systemupdates unmöglich machen. Siehe hierzu auch den Artikel über [:Fremdquellen:Fremdquellen und Fremdpakete]. Nach der Installation eines Paketes aus einer solchen Quelle sollte man diese wieder deaktivieren, um ungewollte Aktualisierungen anderer Programme auf die Version aus dieser Quelle zu verhindern. }}} In einigen Wikiartikeln werden solche Fremdquellen angegeben. Die bekanntesten sind: * PPA - Die '''p'''ersönlichen '''P'''aket'''a'''rchive auf [:Launchpad:], die Adressen unterscheiden sich je nach Inhaber, die Wikiartikel enthalten jeweils die genauen Angaben * [:Medibuntu:] - Quelle für freie und unfreie Pakete * [:GetDeb:GetDeb/PlayDeb] - Quelle für möglichst aktuelle Anwendungen und Spiele = Quellen, die nicht für Ubuntu gedacht sind = In ganz seltenen Fällen ist ein Programm in keiner Paketquelle für Ubuntu zu finden. Wenn diese Software aber in einer anderen Distribution wie Debian "testing" oder "unstable" oder einem neueren Ubuntu-Release enthalten ist, scheint es verlockend, sie einfach aus diesen Quellen zu installieren. Das kann aber leicht zu Problemen führen. Warum? Eine Linux-Distribution setzt sich aus einer Vielzahl von Paketen zusammen, die "Hand in Hand" arbeiten und dadurch voneinander abhängig sind. Diese Abhängigkeiten können bei verschiedenen Distributionen sehr unterschiedlich sein. Durch die Installation von Paketen aus einer anderen Distribution, wie Debian "testing" oder "unstable" oder einem anderen Ubuntu-Release, kann es deshalb zu verschiedenen Problemen kommen: * Möglicherweise harmoniert das installierte Paket nicht mit einem der anderen installierten Pakete. Wenn eine selten genutzte Software betroffen ist, fällt das vielleicht erst einmal gar nicht auf. * Außerdem ist es üblich, dass ein Paket die Installation anderer Pakete voraussetzt. Wenn nun eines dieser Pakete in der "fremden" Distribution in einer neueren Version vorhanden ist, kann es sein, dass die im Basissystem bereits installierte Version ersetzt wird. Besonders heimtückisch ist das bei Paketen aus Distributionen, die sich regelmäßig ändern, wie Debian "testing" und "unstable" oder der jeweiligen Entwicklerversion von Ubuntu. Wo heute die Installation eines einzelnen Paketes noch keine Probleme bereitet, können morgen schon durch eine neue Version Dutzende weiterer Pakete benötigt werden. Ob die mit dem Basissystem funktionieren, ist reine Glückssache. Aus diesem Grund sollte man beim Eintragen von Quellen einer anderen Distribution sehr vorsichtig sein! Wer schon etwas Erfahrung hat, sollte lieber auch die [:Programme_kompilieren:Installation aus dem Quellcode] in Erwägung ziehen. # tag: Paketverwaltung