Programme werden bei Ubuntu in Form sogenannter Pakete installiert. Diese Pakete werden in Paketquellen (Repositories) im Internet zur Verfügung gestellt. Natürlich können auch Datenträger wie CDs in eine Paketquelle verwandelt werden[[Anmerkung([:Lokale Paketquellen: Anleitung] zum Erstellen von Paket-CDs oder -DVDs)]]. {{{#!Hinweis Die [:Paketquellen freischalten: Einbindung von Paketquellen] wird in einer eigenen Anleitung beschrieben. }}} [[TableOfContents(2)]] = Aufstellung wichtiger Paketquellen = == Stabil und zuverlässig: die offiziellen Ubuntu-Quellen == === Main === Die main-Sektion umfasst nur die Pakete, die den Ubuntu-Lizenzanforderungen entsprechen und die das Ubuntu-Team 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-Sektion gehört Software, die die Ubuntu-Entwickler wegen ihrer Wichtigkeit unterstützen, die aber nicht unter einer geeigneten freien Lizenz stehen, 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-Sektion 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, solche Programme innerhalb des Ubuntu-Paketverwaltungssystems zu installieren, aber sie sind getrennt von unterstützten Paketen wie in main und restricted. === Multiverse === Zur multiverse-Sektion 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. (Quelle: [http://de.wikipedia.org/wiki/Ubuntu#Komponenten Wikipedia] {de}) {{{#!Hinweis Die CD-Version von Ubuntu enthält dabei die Quellen ''main'' und ''restricted'', die DVD-Version zusätzlich noch ''universe''. }}} == 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 Backports 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. === offizielle Backports === In den offiziellen Backports finden sich zahlreiche neuere Programmversionen, die recht gut getestet und funktionsfähig sein sollten. Quellen sind: {{{#!Text deb http://de.archive.ubuntu.com/ubuntu/ dapper-backports main restricted universe multiverse deb http://de.archive.ubuntu.com/ubuntu/ breezy-backports main restricted universe multiverse deb http://de.archive.ubuntu.com/ubuntu/ hoary-backports main restricted universe multiverse }}} == 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. {{{#!Text deb-src http://de.archive.ubuntu.com/ubuntu/ dapper universe }}} den Quellcode für alle Pakete aus der der ''universe''-Sektion zur Verfügung. == Weitere Quellen == Spezielle Pakete können aus weiteren Quellen installiert werden, diese sind meist bei der entsprechenden Software angegeben. Beispiele sind: * Audiosoftware, siehe [https://wiki.ubuntu.com/MOTUAudio] {en}. {{{#!Text deb http://easynews.dl.sourceforge.net/sourceforge/linuxrpms/ ./ }}} * Pakete für die Paravirtualisierung des Systems mit Xen, siehe [http://www.ubuntuforums.org/showthread.php?t=60833] {en} und [http://www.cl.cam.ac.uk/Research/SRG/netos/xen/] {en} {{{#!Text deb http://mirror.clarkson.edu/pub/distributions/xenophilia/xen-debs/ubuntu/ xen-stable main }}} * Zahlreiche KDE-Programme in den aktuellsten Versionen ([http://www.czessi.net/ Czessi.net Paketquellen] {de}) * für Ubuntu 5.10 "Breezy Badger" ([http://www.czessi.net/breezy.php Paketliste]) {{{#!Text deb http://odin.czessi.net/ubuntu breezy main restricted universe multiverse i18n-de deb-src http://odin.czessi.net/ubuntu breezy main restricted universe multiverse i18n-de }}} * für Ubuntu 6.06 "Dapper Drake" ([http://www.czessi.net/dapper.php Paketliste]) {{{#!Text deb http://odin.czessi.net/ubuntu dapper main restricted universe multiverse i18n-de deb-src http://odin.czessi.net/ubuntu dapper main restricted universe multiverse i18n-de }}} {{{#!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. 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. }}} == Für Spezialisten: Gewichtung der Quellen durch Apt-Pinning == {{{#!Wissen * [1]: [:Editor: Einen Editor öffnen] * [2]: [:Terminal: Ein Terminal öffnen] }}} ''Apt Pinning'' nennt man eine Technik, bei der in der Sourcelist verschiedene Repositories "gewichtet" werden. So kann man getrost bei ''main'' bleiben, kann aber Pakete gezielt aus ''universe'' oder ''multiverse'' ziehen. Dies wird hier als Beispiel dargestellt. Zuerst muß die Datei '''/etc/apt/preferences''' mit folgendem Inhalt in einem Editor mit Root-Rechten [1] angelegt werden: {{{#!Text Package: * Pin: release a=main Pin-Priority: 700 Package: * Pin: release a=universe Pin-Priority: 650 Package: * Pin: release a=multiverse Pin-Priority: 600 Package: * Pin: release a=testing Pin-Priority: 100 Package: * Pin: release a=unstable Pin-Priority: 50 }}} Editieren der Listen in der Datei '''/etc/apt/sources.list''': {{{#!Text deb http://ftp.inf.tu-dresden.de/os/linux/dists/ubuntu/ hoary main restricted universe multiverse deb http://ftp.inf.tu-dresden.de/os/linux/dists/ubuntu/ hoary-security main restricted universe multiverse deb http://ftp.inf.tu-dresden.de/os/linux/dists/ubuntu/ hoary-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ hoary main restricted universe multiverse deb-src http://archive.ubuntu.com/ubuntu/ hoary main restricted universe multiverse }}} Von nun an werden alle Pakete aus ''main'' geholt, und nur die Pakete, die es dort nicht gibt, aus ''universe''. Gibt es auch dort das Paket nicht, dann wird ''multiverse'' abgefragt. === Gezieltes Umgehen mit apt-get === Im Terminal [2] kann man mit apt-get die Prioritäten aber auch gezielt umgehen. Folgender Aufruf z.B. zieht mplayer aus dem ''multiverse''-Paketbereich. Dabei werden Abhängigkeiten nach der Priorität erfüllt: zuerst ''hoary'', dann ''universe'' usw. {{{ apt-get -t multiverse install mplayer-custom }}} {{{#!Experten Ausführlichere Informationen hierzu findet man in der Manpage: '''man apt_preferences'''. }}} = 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_compilieren: Installation aus dem Quellcode] in Erwägung ziehen. [http://www.ubuntu.com/support/faq#head-fe7677923437a9f865c60ba1eff560c040a0b6f8 Offizielle Stellungnahme] {en} von Ubuntulinux.org zu diesem Thema ---- *["Kategorie/Paketverwaltung"]