Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Web Analytics
Cookie Policy Terms and Conditions Gentoo Linux - Wikipedia

Gentoo Linux

aus Wikipedia, der freien Enzyklopädie

Gentoo Linux

Logo des Gentoo-Projektes
Basisdaten
Entwickler: Gentoo Foundation, Inc.
Version: 2006.1  (30. August 2006)
Stammbaum: \ Linux
  \ Gentoo Linux
Architekturen: alpha, AMD64, hppa, IA-64, ppc, SPARC, x86, x86-64, MIPS
Lizenz: GPL und andere Lizenzen
Sonstiges: {{{Sonstiges}}}
Website: www.gentoo.org

Gentoo Linux [ʤentuː 'lɪnʊks] ist eine quellbasierte Linux-Metadistribution für fortgeschrittene Linux-Benutzer, welche ihr System komplett individuell einrichten möchten. Voraussetzung dafür ist ein fundiertes Wissen über die technischen Abläufe eines Linux-Systems und entsprechend Zeit, um die ausführliche Dokumentation zu lesen. Gentoo ist ein Warenzeichen der Gentoo Foundation, Inc., einer Non-Profit-Organisation. Im europäischem Raum ist der deutsche Förderverein Gentoo e.V. der Inhaber der Markenrechte.

Inhaltsverzeichnis

[Bearbeiten] Name

Die Distribution hat ihren Namen von einer besonders schnellen, wenn auch kleinen Pinguinart, dem Eselspinguin (engl. gentoo pinguin). Der Gründer und langjährige Chef des Gentoo-Projekts ist Daniel Robbins. 2004 hat er das Projekt verlassen, um bei Microsoft zu arbeiten, hat aber bereits am 16. Januar 2006 das Redmonder Softwareunternehmen wieder verlassen. Seit dem Weggang von Robbins wird Gentoo von einem Board of Trustees der Gentoo Foundation geleitet, deren Mitglieder von und aus den Entwicklern gewählt werden. Am 27. Februar 2007 ist Daniel Robbins wieder als Entwickler zum Gentoo Projekt zurückgekehrt. Zwei Wochen nach der offiziellen Aufnahme hat Robbins die Distribution allerdings wieder verlassen. Als Gründe wurden Differenzen mit der neuen Führungstruktur bei Gentoo genannt, die nach seinem ersten Ausscheiden installiert wurde, um seine Aufgaben zu übernehmen.

[Bearbeiten] Kompilierstufen von Gentoo (Stages)

Die Distribution benutzt nicht wie die meisten anderen Distributionen vorkompilierte Programmpakete, sondern Quelltexte, die durch das distributionseigene Paketmanagement kompiliert werden. Sehr große Programme sind auch binär zu erhalten. Hierzu zählen u. a. OpenOffice.org und Mozilla. Anfangs konnte man nur die Grundelemente des Basissystem („Stage 2“) oder das ganze Basissystem („Stage 3“) optional fertig kompiliert installieren, aber seit 2004 werden beim Release auch CDs mit binären Paketen wie z.B. KDE vertrieben (GRP), die eine zeitraubende Erstinstallation vereinfachen. Stage 1 beinhaltet zudem das so genannte Bootstrapping, also den Aufbau eines Minimal- bzw. Basissystems, das zum weiteren Bau des Systems benötigt wird.

Durch die Nutzung einer „Stage1“-Installation erhält man als Benutzer ein System, das durch Optimierung des Compilers und durch die „USE-Flags“ an die eigene Hardware und Bedürfnisse angepasst ist. Allerdings wird im offiziellen Installationshandbuch nur noch auf eine Installation mittels „Stage3“ verwiesen. Bei „Stage1“-, oder „Stage2“-Installationen geschah es immer häufiger, dass Benutzer durch unsachgemäße Anpassungen oder zu starker Optimierung ihr System unbrauchbar installiert haben. Eine Installation von „Stage3“ schließt nahezu aus, dass sich Fehler im Basissystem befinden. Durch ein normales Systemupdate mit dem Paketmanager „portage“ kann auch eine „Stage3“-Installation durch Optimierung und Anpassung profitieren. Erfahrene Benutzer können jedoch auch weiterhin eine Installation von „Stage1“ oder „Stage2“ vornehmen.

[Bearbeiten] Installationsmethoden

Die Philosophie hinter Gentoo, dem Benutzer alle Freiheiten zu lassen, wird schon bei der Wahl der Installationsmethode klar. Unabhängig von der Verwendung der Stages (wie bereits beschrieben) kann der Benutzer auch hier von Anfang an entscheiden, auf welches Installationsmedium er zugreifen will, bzw. wie die Installation bewerkstelligt werden soll.

Die älteste Methode ist, von einer der Gentoo-Installations-CDs zu booten, die benötigten Stages und den Portagesnapshot herunterzuladen und durch die Eingabe der im Handbuch beschriebenen Befehle in einer Unix-Shell das Gentoo-System selbst zu bauen. Da es sich bei den Gentoo-Installations-CDs um LiveCDs, die alle Werkzeuge zur Installation und Konfiguration enthalten, handelt, kann man diese Methode mit jedem aktuellen Live-System wie z.B. Knoppix durchführen. Ebenso ist es möglich, Gentoo auf diese Weise aus einem bestehenden Linux-System zu installieren. Hierbei wird die Installation direkt über das Internet durchgeführt. Dies hat den Vorteil, dass die Pakete sehr aktuell sind.

Sollte man während der Installation nicht über eine Internetverbindung verfügen, hat man die Möglichkeit, mit einer der Universal-Install-CDs und einer Package-CD die Stage-Archive, den Portage-Snapshot und die Programme von CD aus zu installieren. Allerdings sind jene nach kurzer Zeit nicht mehr aktuell und man hat nur die Möglichkeit, die Programme zu installieren, die sich auch wirklich auf den CDs befinden. Sollte man sich für eine dieser Methoden entscheiden, empfiehlt es sich, in eines der älteren Handbücher zu schauen, da diese Art der Installation in den aktuellen Handbüchern nicht mehr beschrieben wird.

Mit Gentoo 2006.0 wird eine weitere Installationsmethode offiziell unterstützt. Hierbei handelt es sich um den erstmals bei Gentoo 2005.1 für x86 verwendeten Gentoo-Linux-Installer (GLI). Dies ist ein in Python geschriebener Installer, der in zwei Versionen vorhanden ist. Zum einen gibt es den komplett grafischen Installer, der GTK+ verwendet, alternativ gibt es noch einen Textbasierten, der kein Xorg benötigt.

Der Installer soll die Installation vereinfachen. Auch hier hat man – wie bei der altbekannten Methode – die Möglichkeit, komplett auszuwählen, welche Stages etc. verwendet werden sollen. Die aktuellen Handbücher wurden bereits komplett an diese neuen Installationsmethoden angepasst. Zur Zeit wird allerdings nur x86 offiziell unterstützt. Zwar gibt es schon eine Version für AMD64-Benutzer, doch befindet diese sich zur Zeit noch in der Testphase.

Will man den Installer verwenden, so sollte man sich die Gentoo 200x.x LiveCD herunterladen. Hierbei handelt es sich um eine etwas über 700 MiB großen Live-CD, die einen kompletten GNOME-Desktop mitbringt. Alternativ existiert die Möglichkeit, den Installer auf einem vorhandenden Gentoo-System zu installieren, oder eine Live-Distribution wie Sabayon Linux zu nutzen, die den Installer ebenso mitbringt.

[Bearbeiten] Paketverwaltung

Gentoo hat ein portsähnliches Paketverwaltungssystem namens Portage, das mit Hilfe des Tools emerge gesteuert wird. Für ein Software-Paket sind Abhängigkeiten, Downloadort der Quellen und der Ablauf der Kompilierung in sogenannten ebuildskripten festgelegt. Anhand dieser Informationen ist es Portage möglich, Abhängigkeiten selbständig aufzulösen, Updates durchzuführen und vieles mehr. Spezielle optionale Funktionen eines Paketes werden über USE-Flags gesteuert, die global oder pro Paket festgelegt werden.

[Bearbeiten] Portage

Portage gleicht die lokalen Daten ab
Portage gleicht die lokalen Daten ab

Der Paketmanager „Portage“ verfolgt den radikalen Ansatz, jedes Paket direkt aus dem Quelltext zu kompilieren. Das Steuerprogramm „emerge“ lädt die Quelldateien auf das System, wendet Patches an und steuert den Compiler.

Zuerst wird mittels emerge --sync über das Internet der lokale Portage tree auf der Festplatte aktualisiert. Dieser enthält Informationen über alle Pakete sowie ein s.g. „ebuild“-Skript, welches die korrekte Installation und Konfiguration des Paketes steuert.

Der Benutzer führt als root auf der Kommandozeile emerge paketname (z. B. emerge apache) aus. Portage sucht daraufhin das entsprechende „ebuild“ im Portage-Tree und überprüft, ob die Software andere Pakete benötigt, um zu funktionieren. Sollte eine solche Abhängigkeit bestehen, wird sie aufgelöst, indem die benötigten Pakete installiert werden. Ist das erledigt, lädt Portage den Quelltext des Programms als komprimierte Datei vom Server und stellt mithilfe einer MD5-Prüfsumme sicher, dass die Datei nicht beschädigt oder verfälscht ist. Anschließend wird sie temporär entpackt und das Makefile erstellt, das zur Kompilierung notwendig ist. Gegebenenfalls werden Patches angewendet. Der Quelltext wird nun in einer Sandbox kompiliert. Der Compiler ist dabei in der Lage, das Paket auf die benutzte Hardware zu optimieren. War die Kompilierung erfolgreich, werden Dokumentation (Manpages etc.), Konfigurationsdateien und natürlich die entstandenen Binärdateien in die entsprechenden Verzeichnisse auf dem System kopiert. Die Software ist nun installiert.

[Bearbeiten] USE-Flags

Portage zeigt die zu aktualisierenden Pakete inkl. USE-Flags
Portage zeigt die zu aktualisierenden Pakete inkl. USE-Flags

Spezielle Funktionen, die nur während des Kompiliervorgangs in einem Paket aktiviert werden können, werden über sogenannte „USE-Flags“ an- bzw. abgeschaltet. So kann jeder Benutzer die Pakete genau konfigurieren und an seine Bedürfnisse anpassen. Beispielsweise bedeutet ein globales USE-Flag xinerama, dass nach Möglichkeit mit Zweischirm-Unterstützung gearbeitet wird, −xinerama schaltet es grundsätzlich ab. Intern wird die Funktionalität der USE-Flags meist durch Patches oder Compileroptionen realisiert.

Die USE-Flags können, wenn sie oft verwendet werden, über eine zentrale Datei (/etc/make.conf) bestimmt werden, jedoch auch für jedes Paket extra definiert werden (mittels Eintrag in /etc/portage/package.use).

[Bearbeiten] Paketabhängigkeiten

Die Abhängigkeit eines Softwarepakets von anderen Softwarepaketen wird im wesentlichen zur Compilezeit festgelegt. Sie beruht in den meisten Fällen auf shared libraries, die zur Compilezeit dynamisch zum Programm gelinkt werden und dann zur Ablaufzeit zur Verfügung stehen müssen.

Abhängigkeiten von anderen Softwarepaketen können jedoch optional sein: in diesem Fall wird die Funktionalität, für die ein anderes Softwarepaket benötigt würde, abgeschaltet, wenn dieses zur Compilezeit nicht vorliegt. Das GNU Build System basierend auf autoconf automatisiert diesen Vorgang. Mit Hilfe der USE-Flags kann der Benutzer selbst entscheiden, ob die jeweilige Funktionalität benötigt wird und das andere Softwarepaket zuvor installiert werden soll. Bei Binärdistibutionen muss der Hersteller entscheiden, welche Funktionalität die Anwender erhalten. Typischerweise wird dann die Entscheidung getroffen, jegliche verfügbare Funktionalität einzuschalten, was zu einer Vielzahl von Abhängigkeiten und einem großen System führt.

Als einfaches Beispiel sei der Editor vim genannt. Er kann mit graphischer Oberfläche (USE=X) oder ohne (USE=-X) installiert werden. Nur in letzterem Falle ist der Editor auch auf Systemen ablauffähig, auf denen keine graphische Oberfläche installiert ist.

[Bearbeiten] Portierungen

Gentoo ist unter diversen Architekturen lauffähig. Dazu zählen Alpha, AMD64, Itanium, MIPS, PA-RISC, PowerPC, SPARC, UltraSparc und x86. Als Gentoox Linux ist Gentoo auch auf der Xbox lauffähig.

Es gibt auch Projekte, bei denen der Linux-Kernel durch einen FreeBSD- (Gentoo/FreeBSD) bzw. OpenBSD-Kernel ersetzt wurde. Zudem kann man unter Apples Mac OS X mittels Portage auf fast den gesamten Pool der eBuilds zugreifen, ohne Mac OS X ersetzen zu müssen.

[Bearbeiten] Versionen

Version Datum
1.0 31. März 2002
1.1a 4. April 2002
1.2 5. Juni 2002
1.4 5. August 2003
2004.0 31. März 2004
2004.1 28. April 2004
2004.2 26. Juli 2004
2004.3 15. November 2004
2005.0 28. März 2005
2005.1 8. August 2005
2005.1-r1 21. November 2005
2006.0 27. Februar 2006
2006.1 30. August 2006

Bei Gentoo Linux handelt es sich nicht um Versionen im eigentlichen Sinne, sondern um Snapshots eines Entwicklungsstandes, auf dessen Basis zum Beispiel die stage-Archive und Live-CDs erstellt werden. Die einzelnen Versionen gehen bei einem regelmäßigen Update des Portage-Trees (emerge --sync) ohne größere Umstellungen ineinander über.

[Bearbeiten] Unterschiede zu anderen Distributionen

Gentoo unterscheidet sich in mehreren Punkten entscheidend von vielen anderen Linux-Distributionen. So ist Gentoo eine quellbasierte Distribution, bei der in der Regel alle Pakete vor der Installation übersetzt werden. Der dafür nötige Zeit- und Rechenaufwand, aber auch der so mögliche tiefe Eingriff in Konfigurations- und Optimierungsmöglichkeiten ist bei anderen Distributionen nicht gegeben. Ebenso gibt es nur wenig automatisierte Abläufe, was eine hohe Kontrolle des Systems ermöglicht, die aber auch entsprechende Kenntnisse voraussetzt.

Die Tatsache, dass die Arbeitsweise des Gentoo-Projekts nicht versionsorientiert ist, führt zu einem kontinuierlichen Aktualisieren des Systems, im Gegensatz zu einer stufenartigen Aktualisierung, wie dies bei den meisten klassischen Distributionen der Fall ist. Auf diesem Weg ergeben sich Migrationsprobleme immer nur für einzelne Programmpakete, nicht aber für eine ganze Distributionsversion. Auch kann der Nutzer so über jede verwendete Version eines Programms selbst entscheiden.

Hinzu kommt, dass mit vergleichsweise einfachen Mitteln eigene Distributionen auf der Basis von Gentoo erstellt und distributiert werden können, um zum Beispiel für Spezialanwendungen wie Cluster oder Rechnerpools zu genügen. Gentoo kann als Distributionsbaukasten eingesetzt werden. Als Beispiel für die Flexibilität von Gentoo sei erwähnt, dass Gentoo benutzt wurde, um Linux auf Macintosh-Rechnern mit einer Intel-CPU zu portieren. [1]

[Bearbeiten] Andere Distributionsbaukästen

[Bearbeiten] Gentoo-Derivate

[Bearbeiten] Weblinks

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu