##Bitte hier den eigenen Benutzernamen und das geplante Fertigstellungsdatum eintragen [[Vorlage(Baustelle, 31.05.2012, leo.moll)]] ##Bitte hier die Versionen kommagetrennt eintragen, mit denen getestet wurde. [[Vorlage(Getestet, lucid,hardy)]] ##Bitte hier alle wesentlichen Wikiartikel auflisten, deren Kenntnis vorausgesetzt wird {{{#!vorlage Wissen [:sudo: Root-Rechte erlangen] [:Pakete installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] [:sources.list: Paketquellen Einrichten] [:chroot: Der Befehl chroot] [:fstab: Laufwerke in /etc/fstab statisch einbinden] [:Packprogramme: Archive entpacken] [:Partitionierung/Grundlagen: Grundlagen der Partitionierung] [:Kernelmodule: Umgang mit Kernelmodulen (Treibern)] }}} ## eine vollständige Befehlsübersicht befindet sich im Wiki unter http://wiki.ubuntuusers.de/Wiki/Syntax [[Inhaltsverzeichnis()]] In diesem Artikel geht es um die Erstellung eines angepassten Minimalbetriebssystem auf dem ALIX-Board entweder mittels PXE oder einer zuvor präparierten CF-Karte, welches es erlaubt, anschließend das maßgeschneiderte Betriebssystem zu von der Pike aus zu installieren (Bottom-Up). = Vorteile einer Bottom-Up Installation = Entgegen der im Artikel "[:Alix:]" vorgestellten Standardinstallation, hat eine optimierte Bottom-Up Installation den Vorteil, dass man genau weiss und insbesondere genau steuern kann, was Bestandteil der Installation wird, was beim Design einer Hardware-Appliance von großen Vorteil ist, da die Ressourcen der benutzten Hardware in der Regel recht beschränkt sind. Dabei muss eine solche gar nicht besonders aufwändig sein oder sehr fortgeschrittene Kenntnisse erfordern, da sie sehr wohl mit Hilfe entsprechender Werkzeuge automatisierbar ist. Da die vollständig manuelle Herangehensweise im Artikel "[:Alix/CF-Bootmedium_erstellen:ALIX CF-Bootmedium erstellen]" bereits größtenteils behandelt wurde, wird dieser Artikel auf die automatisierte Variante eingehen. = Grundsätzlicher Ablauf = * Herstellung einer starbaren CF-Karte mit einem Live-Rettungssystem entweder auf einem anderen Rechner oder auf dem Alix-System selbst, was mit dem Live-Rettungssystem über PXE gestartet wurde * Start des Live-Rettungssystems auf dem Board * Aufspielen des gewünschten Systems * Eintragen des Systems im Bootmanager = Voraussetzungen = Um mit der Installation zu beginnen, muss folgendes vorhanden sein: * Ein funktionierendes Netzwerk, welches Zugriff auf das Internet erlaubt. * Ein funktionsfähiges Alix-Board. Mit Hilfe des Verfahrens, welches in dieser Anleitung beschrieben wird, wurden Systeme für verschiedene Alix-Boards der Serie 2Dxx aufgesetzt. Prinzipiell sollte diese Anleitung für alle Alix-Boards mit nur einer serieller Schnittstelle geeignet sein. * Eine möglichst schnelle Compact Flash Karte, die mindestens 2GB groß sein sollte. Die Gesamtkapazität ist allerdings vom späteren Verwendungszweck abhängig. * Ein beliebiger Rechner mit serieller Schnittstelle der als Terminal für das Board genutzt wird. '''Für die "PXE Start"-Variante wird des weiteren benötigt:''' * Ein DHCP Server im Netz in dem man die entsprechenden Network-Boot-Optionen setzen kann * Ein Rechner, Router oder NAS auf dem das Minimalsystem per TFTP und NFS zur Verfügung gestellt werden kann '''Für die "Start mit vorbereiteter CF Karte"-Variante wird des weiteren benötigt:''' * Ein Linux-Rechner, auf dem das Paket SYSLINUX vorhanden ist. * ein externer Kartenleser Sind alle diese Voraussetzungen erfüllt, kann mit der Installation begonnen werden. = Vorbereitung der CF Karte = Benötigt wird hierfür das [http://www.yeasoft.com/site/projects:alix-rescue Alix Rescue and PE System] {en}, ein Live-System welches für Alix-Boards optimiert wurde, sehr einfach einzusetzen ist, und alle Features bietet, die für diese Anleitung erforderlich sind. '''alix-rescue''' ist in seiner aktuellsten Version in 3 Varianten verfügbar: Ubuntu 8.04, Ubuntu 10.04 und Debian squeeze. Hier sollte jene Version geladen werden, die auch für die Installation geplant ist. Das dieses Minimalsystem nur aus 3 Dateien besteht, bietet es sich an, es auch als Notfall-System auf dem Alix-System zu belassen, da es ein Mindestmaß an Funktionalität für den Notfall zur Verfügung stellt. {{{#!vorlage Hinweis '''Warum keine neuere Ubuntu Version?''' Ab [:Maverick_Meerkat:Ubuntu 10.10] werden nur noch i686-Prozessoren unterstützt. Dadurch kommen ältere i586-Prozessoren wie Intel Pentium (MMX), AMD K5 und ältere Geode-CPUs für Ubuntu nicht mehr in Frage. Daher ist es empfehlenswert, eine LTS Version wie z.B. [:Lucid_Lynx:Ubuntu 10.04] zu installieren, da dieses noch bis 2015 (Serverversion) unterstützt wird. }}} Wenn auch die PXE-Installation das Herz des Puristen höher schlagen lässt, da jedes Byte welches auf der CF-Karte Installiert wird, vom Alix-System selber darauf geschrieben wird, so sei dem Benutzer doch empfohlen auf die Variante mit vorbereiteter CF-Karte zurückzugreifen da: 1. Das Aufsetzen einer PXE Boot-Umgebung wenn nicht bereits vorhanden, recht Aufwendig ist und in einem Home-Umfeld mit erheblichen Problemen verbunden ist (z.B.: doppelte DHCP Server wenn der Router selber nicht die Zusatzoptionen im DHCP Server für Network Boot beherrscht) 1. Das Alix-System mit der vorbereiteten CF-Karte direkt über ''ssh'' erreichbar ist, und man sich so den ganzen Aufwand mit der seriellen Schnittstelle und dem seriellen Terminal sparen kann. 1. Diese Methode am Ende '''exakt das gleiche Resultat''' liefern wird es also keinen qualitativen Vorteil bringt, die PXE Methode zu verwenden. Der Vollständigkeit halber, soll diese aber nicht undokumentiert bleiben. == Vorbereitung der PXE Installation == Da das ALIX-Board über [:PXE-Boot:PXE] gestartet wird, sind weiterhin die Installation eines DHCP-Servers (falls im Netzwerk nicht vorhanden) und eines TFTP-Servers notwendig. Näheres findet sich im Artikel [:PXE-Installation:]. Das Benötigte '''alix-rescue''' kann '''[http://www.yeasoft.com/downloads/alix-rescue/ hier heruntergeladen werden]'''. Da der Inhalt des Live-Rettungssystem Archivs in einem beliebigen Verzeichnis in der PXE Umgebung entpackt werden kann (welches per NFS erreichbar sein muss!), müssen, die Pfade und die IP Adresse des NFS Servers in der mitgelieferten Datei '''pxelinux.cfg/default''' entsprechend angepasst werden. {{{ SERIAL 0 38400 0 CONSOLE 0 # YOU HAVE TO ADAPT ALL PATHS AND # IP ADDRESSES TO YOUR ENVIRONENT DEFAULT alix-rescue-1004/axrescue.vmlinuz APPEND initrd=alix-rescue-1004/axrescue.initrdn rootdelay=2 root=/dev/nfs nfsroot=169.254.19.65:/mnt/data/tftproot ip=dhcp loop=/yeaboot/alix-rescue-1004/axrescue.squashfs branch=/dev/ram console=ttyS0,38400n8 }}} Damit das ALIX-Board allerdings auch über das Netzwerk bootet, muss diese Fähigkeit im BIOS erst mal aktiviert werden. Also das Nullmodem-Kabel anschließen und ein Terminal mit den passenden Parametern starten (38400 baud, 8 Datenbits, 1 Stopbit, keine Parität und XON/XOFF flow control). Dies kann z.B. so erfolgen: {{{#!vorlage Befehl $ sudo cu -e -o -s 38400 -l /dev/ttyUSB0 }}} wobei der Gerätename `/dev/ttyUSB0` gegebenenfalls durch den entsprechenden Gerätenamen der seriellen Schnittstelle zu ersetzen ist (bei eingebauten Schnittstellen kann dieser z.B. `/dev/ttyS0` sein). Nun kann man das Gerät unter Strom setzen, und wenn alles richtig angeschlossen ist, wird man auf dem Terminal sehen, wie der Speichertest ausgeführt wird. Um ins Setup zu gelangen, ist '''noch während des Speichertests''' ein Druck auf die Taste [[Vorlage(Tasten, s)]] erforderlich. Ist dies rechtzeitig gelungen, gelangt man ins Hauptmenü des tinybios: {{{ PC Engines ALIX.2 v0.99h 640 KB Base Memory 261120 KB Extended Memory 01F0 Master 848A TOSHIBA THNCF256MQG Phys C/H/S 978/16/32 Log C/H/S 978/16/32 BIOS setup: (9) 9600 baud (2) 19200 baud *3* 38400 baud (5) 57600 baud (1) 115200 baud *C* CHS mode (L) LBA mode (W) HDD wait (V) HDD slave (U) UDMA enable (M) MFGPT workaround (P) late PCI init *R* Serial console enable (E) PXE boot enable (X) Xmodem upload (Q) Quit }}} Mit Druck auf die Taste [[Vorlage(Tasten, E)]] aktiviert man den PXE Boot, was beim erneuten Erscheinen des Hauptmenüs dadurch angezeigt wird, dass der Buchstabe '''E''' im Hauptmenü nun nicht mehr durch Klammern, sondern durch Sterne gerahmt ist. Sollte die CF-Karte dies unterstützen (was eine moderne Karte sicherlich tun wird), ist die Aktivierung von UDMA sinnvoll, da dadurch die Zugriffe auf der Karte effektiver durchgeführt werden. Durch Druck auf die Taste [[Vorlage(Tasten, Q)]] verlässt man das Hauptmenü. Vorher sollte noch das Netzwerkkabel angeschlossen werden, da der Bootvorgang unmittelbar beginnen wird. Die erste Netzwerkschnittstelle (von der der Bootvorgang stattfindet) ist bei Boards mit mehreren Schnittstellen übrigens jene, die direkt neben dem USB Anschluss liegt. Wenn nun alles korrekt konfiguriert ist, wird das Alix-System das '''alix-rescue''' Live-System starten. Da dieses einen ssh Server zur Verfügung stellt, ist eine Anmeldung über SSH empfehlenswert, um die Installation fortzusetzen, da die Eingabemöglichkeiten im seriellen Terminal nicht so komfortabel sind. Die IP-Adresse kann durch Eingabe des Befehls {{{#!vorlage Befehl ip addr show eth0 }}} ermittelt werden. Zum weiteren Vorgehen wird nun noch das Paket '''syslinux''' benötigt, welches nicht Teil des Live-Systems ist. Dieses kann jedoch komfortabel durch Eingabe folgender Befehle nachinstalliert werden: {{{#!vorlage Befehl apt-get update apt-get install syslinux }}} Die Eingabe von '''apt-get update''' ist fundamental, da das Live-System aus Platzgründen keinen Paketindex enthält. Bevor es nun weiter geht, ist es wichtig den Gerätenamen der CF-Karte zu kennen. Dies wird in der Regel '''/dev/sda''' sein, sollten aber am USB-Port noch andere Geräte angeschlossen sein, so muss das nicht unbedingt der Fall sein. Können aus welchem Grund auch immer, die USB Geräte nicht entfernt werden, so kann man sich mit folgendem Befehl einen Überblick über die vorhandenen angeschlossenen Laufwerke machen: {{{#!vorlage Befehl grep . /sys/block/sd*/size | sed -e "s/\/sys\/block/\/dev/g" | sed -e "s/\/size//g" }}} Der Befehl listet alle vorhandenen Gerätenamen der Laufwerke und deren Größe in Blöcken (512 byte) auf. Folgende Ausgabe zum Beispiel {{{ /dev/sda:31293360 /dev/sdb:15701759 }}} listet ein 16GB und ein 8GB Laufwerk auf. Damit dürfte es ohne Probleme möglich sein die CF-Karte zu identifizieren. Nachfolgend wird für die CF-Karte der Gerätename '''/dev/sdx''' benutzt. Weiter geht es nun mit dem [:#Partitionieren:] ## Artikeltext ##nicht auf diesen Artikel zutreffenden Kategorien bitte löschen! #tag: Netzwerk, Hardware, Ubuntu, System, Installation, Server