Linux From Scratch
Linux From Scratch (LFS, „Linux von Grund auf“) ist ein Projekt, das eine Schritt-für-Schritt-Anleitung zur Erstellung eines auf die persönlichen Wünsche angepassten Linux-Betriebssystems von Grund auf aus den Quelltexten anbietet.
Linux From Scratch | |
---|---|
Projekt zum Bau einer Linux-Distribution | |
Entwickler | Linux-From-Scratch-Team[1] |
Lizenz(en) | CC, MIT[2] (Freie Software) |
Erstveröff. | 16. Dezember 1999 |
Akt. Version | 10.1 (1. March 2021[3]) |
Abstammung | GNU/Linux ↳ Linux From Scratch |
Architektur(en) | IA-32 und weitere |
Sprache(n) | Englisch und (teilweise veraltet) andere Sprachen, darunter Deutsch |
Sonstiges | Monolithischer Kernel |
www.linuxfromscratch.org |
Geschichte
Die erste Version von Linux From Scratch wurde am 16. Dezember 1999 veröffentlicht.[4][5]
Die aktuelle Version 10.0 wurde am 1. September 2020 freigegeben.[3] Zudem gibt es auch eine deutschsprachige Version, die zurzeit bei der Versionsnummer 6.4 steht und am 23. November 2008 veröffentlicht wurde.[6]
Unterprojekte
Die Anleitung Linux From Scratch (LFS) erklärt die Installation eines einfachen Grundsystems, mit dem gerade so gearbeitet werden kann – sie kann jedoch auch als kleiner Distributionsbaukasten betrachtet werden. Die Installation eines vor-kompilierten Linux einer Linux-Distribution ist schneller, da keine oder nur wenige Installationspakete übersetzt werden müssen. Weiterführende Komponenten wie die Installation verschiedener Server oder Desktop-Umgebungen (wie z. B. KDE oder Gnome) werden in der Dokumentation Beyond LFS (kurz BLFS) beschrieben.
Des Weiteren existiert das Projekt Automated LFS (kurz ALFS), bei dem versucht wird, die Installation eines LFS, die langwierig und kompliziert ist, zu automatisieren und zu vereinfachen. Es richtet sich an Benutzer, die bereits einige Male durch den LFS und BLFS Installationsprozess durchgegangen sind und eine Automatisierung wünschen. Hardened LFS (kurz HLFS) dagegen setzt sich mit der Absicherung des LFS-Grundsystemes auseinander und befindet sich in der Entwicklung.
Das ursprüngliche LFS-Projekt beschäftigt sich mit der Installation auf einem IA-32-System. Für andere Architekturen wurde das Projekt Cross Linux From Scratch (kurz CLFS) ins Leben gerufen, das sich speziell mit den Problemen des Cross-Compilings inklusive der Kompilierung von headless und eingebetteten Systemen beschäftigt. CLFS unterstützt eine breite Palette von Prozessoren und verwendet weiterführende Techniken, die nicht im ursprünglichen LFS Buch enthalten sind. Dazu gehören cross-build Toolchains und multilibrary Unterstützung. In der Version 7.0 soll auch in der Grunddokumentation eine 64-Bit-Unterstützung eingebaut werden.[7]
Ein weiteres Unterprojekt, Hints (englisch für „Tipps“), sammelt Kurzrezepte rund um LFS.
Live-CD
Eine Live-CD diente als Basissystem, von dem aus ein LFS-System gebaut werden konnte.
Da Linux zum Bauen eines LFS-Systems notwendig ist und die CD außerdem ausgiebig auf die Kompatibilität zu LFS getestet wurde, war es empfehlenswert, mit der CD zu beginnen.
Sie enthielt alle Werkzeuge, die zum Übersetzen der Quellen notwendig sind. Ebenso waren das Linux-From-Scratch-Buch und der Quelltext auf der CD enthalten. Somit war keine Internetverbindung beim Bau des Systems erforderlich.
Am 30. November 2007 wurde die letzte Live-CD-Version der Reihe 6.3 (mit der Revisionsnummer 2160) veröffentlicht.[8] Am 30. März 2008 wurde das LiveCD-Projekt mangels Beteiligung eingestellt. Sie kann mittlerweile nicht mehr verwendet werden, da die Programme zu alt zum Kompilieren einiger Quelltexte sind.[9]
Andere Baukästen
Neben Linux From Scratch sind auch die folgenden Distributionsbaukästen bekannt:
- Arch Linux
- Crux
- Gentoo Linux
- Morphix
- T2 SDE
- NuTyX
Liste der Bestandteile von LFS
Folgende Programmquellen sind in der LFS Version 8.4 enthalten:[10]
- ACL 2.2.53
- Attr 2.4.48
- Autoconf 2.69
- Automake 1.16.1
- Bash 5.0
- Bc 1.07.1
- Binutils 2.32
- Bison 3.3.2
- Bzip2 1.0.6
- Check 0.12.0
- Coreutils 8.30
- DejaGnu 1.6.2
- Diffutils 3.7
- Eudev 3.2.7
- E2fsprogs 1.44.5
- Elfutils 0.176
- Expat 2.2.6
- Expect 5.45.4
- File 5.36
- findutils 4.6.0
- Flex 2.6.4
- Gawk 4.2.1
- GCC 8.2.0
- GDBM 1.18.1
- Gettext 0.19.8.1
- Glibc 2.29
- GMP 6.1.2
- Gperf 3.1
- Grep 3.3
- Groff 1.22.4
- GRUB 2.02
- Gzip 1.10
- Iana-Etc 2.30
- Inetutils 1.9.4
- intltool 0.51.0
- IPRoute2 4.20.0
- KBD 2.0.4
- Kmod 26
- Less 530
- Libcap 2.26
- Libffi 3.2.1
- Libpipeline 1.5.1
- Libtool 2.4.6
- Linux 4.20.12
- M4 1.4.18
- Make 4.2.1
- Man-DB 2.8.5
- Man-pages 4.16
- Meson 0.49.2
- MPC 1.1.0
- MPFR 4.0.2
- Ninja 1.9.0
- Ncurses 6.1
- OpenSSL 1.1.1a
- Patch 2.7.6
- Perl 5.28.1
- Pkg-config 0.29.2
- Procps 3.3.15
- Psmisc 23.2
- Python 3.7.2
- Readline 8.0
- Sed 4.7
- Shadow 4.6
- Sysklogd 1.5.1
- Systemd 240
- SysVinit 2.93
- Tar 1.31
- Tcl 8.6.9
- Time Zone Data 2018i
- Texinfo 6.5
- Udev-lfs Tarball
- Util-linux 2.33.1
- Vim 8.1
- Xml::Parser 2.44
- XZ Utils 5.2.4
- Zlib 1.2.11
Weblinks
- Linux From Scratch! (englisch) – offizielle Projektseite
- Deutsche Übersetzung von Linux From Scratch – Projektseite bei erdfunkstelle.de
- Cross Linux From Scratch (englisch) – Projektseite
Einzelnachweise
- Thank You – The LFS Credits (englisch) – offizielle Webseite; Stand: 29. November 2013
- Legalnotice
- Linux from Scratch (stable) – Onlineversion LFS
- Linux From Scratch HOWTO (Memento vom 30. April 2001 im Internet Archive) (englisch)
- Linux From Scratch – Vortragsseite beim Chaos Computer Club Ulm, vom 17. August 2008
- Deutsche Übersetzung von Linux From Scratch – Projektseite bei erdfunkstelle.de
- Milestone 7.0 (englisch) – Wikiseite bei linuxfromscratch.org; Stand: 1. Februar 2008
- Download the Official LFS LiveCD (englisch) – offizielle Seite bei linuxfromscratch.org; Stand: 10. März 2011
- The LFS LiveCD project is dead. Officially. Archiviert vom Original am 11. Januar 2010; abgerufen am 7. Mai 2017. (englisch) – Brief bei linuxfromscratch.org, vom 30. März 2008
- Programmpakete