Archive for the ‘Technotrends’ Category

RILOE-ses Durcheinander

Wednesday, October 15th, 2008

Nachdem mir ein DL360 in Koeln abgestuerzt und eine Neuinstallation der Maschine notwendig war, stellte ich fest, dass es fuer die aktuellen Versionen von Debian letztmalig in etch Instalaltionsmedien fuer eine Floppyinstallation gibt (zu finden hier). Diese brauchte ich (so dachte ich zumindest) fuer die Installation von Debian via RILOE-Board (Remote Insight Lights Out Edition) erster Generation. Diese stellt eine “Virtual Floppy”-Methode zur Verfuegung, ueber die man ein virtuelles Floppy Image in ein ebenso virtuelles Floppy Laufwerk einlegen kann um zum Beispiel davon zu booten. Leider jedoch erwartet diese Karte die Floppy Images in einem proprietaeren Format (mit Image-Beschreibung). Zum erstellen dieser Images existiert ein Windows Tool, welches leider weder in Wine noch unter ReactOS im QEMU zur Arbeit zu ueberreden und somit unmoeglich mit freien Mitteln (oder auch aus freien Stuecken ;)) zur Arbeit zu ueberreden gewesen waere. Ich installierte also eine Windows XP VM mit VirtualBox und erstellte 5 Images.

Ich musste im Nachhinein feststellen, dass die Installation via Floppy remote nicht geht, da nach dem Laden des Kernels das Debian die Root Filesystem Floppy auf dem physikalischen Laufwerk im Server sucht. Da ist natuerlich keine drin. Die Images hatte ich aber nun und dachte “warum nicht mit den originalen vergleichen?”. So koennte man herausfinden, wie das Compaq Tool die Images erstellt und ein entsprechendes eigenes Tool implementieren. Tatsaechlich fuegt Compaq nur einen (mindestens) 22byte langen Header vor dem Anfang des Images hinzu, welcher das Image als Gueltig kennzeichnet (Beginn mit dem String ‘CPQRFBLO’) und einen Kommentar einfuegt. Des Weiteren sind noch einige Bytes unbekannter Bedeutung im Header vorhanden.

Ich machte mich also daran ein python script zu schreiben, welches in der Lage ist, RAW images (wie mit ‘dd’ erstellt) und CPQ-Images (RILOE verwendbare Images mit Header) in ihr Gegenstueck zu verwandeln. Das Script erstellte auch schon einige Images die auf der RILOE funktionierten… und bislang keines welches nicht funktionierte.

Da die etch-Installation jedoch via Floppy nicht funkionierte und ich auch eigentlich kein etch installieren wollte, kam ich auf eine Idee. Der PXE-loader des etherboot-Projektes - gPXE - ist in der Lage von einer Floppy geladen zu werden und kernel und initrd ueber unterstuetzte Netzwerkkarten unter anderem ueber HTTP zu laden - anders als der name (gPXE) vermuten liesse.

Letztendlich hat es so geklappt, ein Debian komplett ohne Debian-Quellmedien Remote zu installieren, ohne den Rechner auch nur einmal anzufassen. Danke!

Fuer alle, die im Netz genau so verzweifelt nach einem RILOE Disketten Image Konverter gesucht haben wie ich: jetzt gibt es ganz sicher einen. Ich habe mein Script und die Dokumentation der etwas hakelingen aber einfach zu bewaeltigenden Installation fuer euch zum Download in mein Wiki gestellt und die entsprechend benoetigten Debian Boot Images so verlinkt, dass wenig Arbeit fuer euch bleibt.

ALles Gute und Gruss vom Sternensucher!

Richtungsweisend…

Sunday, March 2nd, 2008

Hallo und ein schoenes Wochenende euch allen.

Gestern war ich mit Eimann und Bernie unterwegs in Koeln, weil ein paar Dinge zu erledigen waren (und der Ausfall von gestern hatte damit zu tun. Ich bin sicher den hat keiner bemerkt ;)). Als wir uns in Koeln nach einer kleinen Unachtsamkeit um mehrere Kilometer verfahren hatten, bat uns das Navi - ein Medion Navigationssystem mit Navigon Software - “halb links” abzubiegen. Wir waren uns einig, nicht wissen zu wollen, wie dann “links” oder gar “scharf links” ausgeschaut haette. Seht selbst:

Medions Auffassung von ‘halb links’
Medions Auffassung von ‘halb links’

Sansation! Explosion!

Wednesday, February 27th, 2008

Einen schoenen guten Abend.

Auf schmerzhafte Weise musste ich erfahren, wie die Technik in den Vergangenen Jahren in gewissen Bereichen an mir vorbei zog. Am vergangenen Wochenende verschied mein iPod mini und musste ersetzt werden. Was im folgenden geschah:

Ich setzte auf diesem seit Jahren die freie alternativ-Firmware “Rockbox” ein. Dies entledigte meinen iPod in der Vergangenheit der Notwendigkeit mit iTunes oder aehnlich-nerviger Verwaltungssoftware in Verbindung zu treten. Diese Eigenschaft wollte ich mir erhalten. Schwierig schwierig… die meisten Player auf denen die Firmware laeuft sind nicht mehr im Handel… und einen “normalen” MP3-Player? Nicht standesgemaess irgendwie :).
Nach Unterhaltung mit einigen (uebrigens sehr geselligen) Rockbox-Developern bestellte ich bei Amazon einen SanDisk sansa c250 FM mit 2 GB. Das Geraet nimmt microSD Karten auf, weshalb ich eine solche mit 4GB gleich mitbestellte. Zu der Gelegenheit fiel mir auf, wie guenstig Flash-Speicher inzwischen geworden ist… und wie klein vor allem. Ich hab mal ein Bild geschossen als kleinen groessenvergleich. Die microSD hat die gleiche Kapazitaet wie der darunterliegende Metallklotz.

4GB vs. 4GB
4GB vs. 4GB

Die genaueren Details eines geplatzen LiIon-Akkus im iPod und die Naeheren Umstaende dessen Feststellung in der Jackentasche (die es ueberlebt hat, genau so wie das Microdrive aus dem iPod) erspare ich euch. Die Platine hats bis auf den Audioausgang sogar auch ueberlebt) erspare ich euch lieber. Mit dem neuen: Reinstecken, Spass haben. Danke Rockbox :).

P.S.: Benutzer von Sansa-Playern sei gesagt: SDHC-Karten funktionieren nicht in der Originalfirmware. Rockbox funktioniert zur Zeit leider noch nicht auf Playern der Version 2 (Firmware nicht 1.xx.xx).

Hallo, wer da?

Sunday, February 17th, 2008

Nach meinem Umzug stand natuerlich auch noch eine neue Telefonanlage an. Da ich in diesen Sachen gerne selbst plane und mein Vermieter sowie auch ich beide relativ gerne an den Telefonanlagen basteln, dachte ich, ich baue eine eigene Asterisk. Ich besitze eh nur noch SIP-Telefone, kann Faxe auf einem Fax-Server empfangen und bediene mich fuer alles weitere einer sehr grossen Menge an Sipura/Linksys ATAs. Das reicht fuers Experimentieren und ist auch fuer mein geplantes Setup die geeignetste Loesung.

Zum Problem: In meiner alten Heimat steht bereits ein Asterisk-Server, der ueber das VPN von allen meinen Systemen aus erreichbar ist. Meine beiden Telefone hier in Dortmund verbinden zum Zweck der Kommunikation aktuell auch direkt ueber das VPN mit diesem Host. Das fuehrt zu unvorhergesehenen Sprachproblemen (Phone -> VPN Router DO -> VPN -> VPN Router Xanten -> Asterisk -> PSTN) bei Auslastung einer der DSL-Leitungen, hinter denen sich die VPN-Router aufhalten. Das ist relativ unpraktisch, auch wenn es aktuell das tut, was es soll. Meine Eltern koennen mich anrufen, ich kann das gleiche umgekehrt tun und zusaetzlich auch ueber meinen alten Telefonanschluss telefonieren und Telefonate empfangen. Das soll auch so bleiben. Ich haette allerdings gerne auch einen Uebergang ins Telefonnetz von Dortmund aus. Dies wuerde zu einer besseren Sprachqualitaet und angenehmeren Telefonaten fuehren und auf Dauer die Asterisk in Xanten nach und nach ueberfluessig machen. Was also tun?!

Ich dachte an das Einfuehren eines Zwischenschrittes… eine zwischen-Asterisk in Dortmund, die die Telefone an diesem Standort konzentriert und ueber IAX2 mit einer Asterisk in Netztechnischer Naehe zum VPN-Server in Duesseldorf verbindet. Die Asterisk in Xanten tut gleiches. So erreiche ich, dass ich weiterhin Telefonate von Dortmund nach Xanten und andersherum Routen kann und erreichbar bleibe. Zusaetzlich fuehre ich die inzwischen wachsende Zahl an Telefonanlagen an einem zentralen Punkt zusammen und erleichtere so den Ausbau der Infrastruktur. Sollte ich mich also klonen lassen -> kein Ding.

um diesen Zweck zu erfuellen, erreichen mich einige Hardware- und Softwareanforderungen, deren Erfuellung mit dem Minimax-Prinzip vergleichbar ist. Moeglichst viel Leistung und Aufgabenvereinigung in einem kleinen, stromsparenden und leisen - moeglichst geraeuschlosen Geraet. Mein Park an Hardware war also dahingehend zu durchforsten und: Ich hab was gefunden :). Aus meiner Zeit in der alten Firma besitze ich einen beachtlichen Park an Maxdata Thinclients in diversen Geschmacksrichtungen. Eines der Geraete ist mit einem PCI und einem PCMCIA Slot ausgestattet und somit auch fuer den Einbau einer ISDN-Karte bestens geeignet.

von hinten
Thinclient mit ISDN-Karte und leerem PCMCIA-Slot

Im Inneren werkelt ein VIA Samuel 2 mit etwas ueber 500Mhz, ein 128MB grosses Kurzzeitgedaechtnis auf einem handelsueblichen 133Mhz SD-DIMM und ein 4GB Microdrive aus einem anderweitig defekten iPod mini.

von innen
eingebaute ISDN-Karte und IDE-CF-carrier

Das Material-Lineup besteht also aus einem besagten Maxdata Thinclient (IGEL relabel eines IGEL 2 (232-CE4) mit OEM-Anpassungen), einem 4GB Microdrive, einer HFC-PCI ISDN-Karte mit HFC-s Chip und einem Schraubendreher (klar oder?)

Materialien
^- Thats the crew! -^

Zu dem Microdrive muss ich ergaenzend etwas sagen: Es ist der einzige halbwegs grosse CF-Datentraeger gewesen, der da war. Bei ebay wechseln diese Drives fuer etwa 20-30 Euro den Besitzer - deutlich weniger als die normalen Microdrives mit 4GB, die nicht aus ausgeschlachteten MediaPlayern stammen. Dies hat den Grund, dass diese Drives keine “echten” microdrives sind und nicht im PCMCIA/CF Modus sondern lediglich im IDE Modus laufen. Dies ist eine Huerde fuer die meisten Cardreader und Digitalkameras, nicht aber fuer unseren Carrier. Die Karte wird ueber diesen als normales IDE-Geraet ohne DMA angesprochen und laeuft somit - langsam aber ohne Probleme.

Das Softwarelineup gestaltet sich etwas komplizierter. Da ich mich fuer eine Asterisk Telefonanlage entschieden habe und debian meine Distribution der Wahl ist, entscheide ich mich dafuer, diese beiden Komponenten zu einem Bootbaren Festplattenimage zu kombinieren. Hierzu habe ich einen Ordner angelegt und darin eine aktuelle stable-Version von Debian mit dem debootstrap-script positioniert. Via chroot muessen nun hier Kernel und kernel-header nachinstalliert werden, alternativ kann auch ein eigener Kernel fuer den Thinclient gebaut werden. Eine kernel config fuer diejenigen, die diesen Thinclient zufaellig auch einsetzen habe ich hier bereitgestellt. Sie enthaelt ein paar Module mehr als noetig, unter anderem TUN devices, soundtreiber, bluetooth support. Diese Funktionen brauche ich fuer die anderen Anwendungsgebiete, die dieses Geraet nacher haben soll.

Das selberbauen der Asterisk und der mISDN module wird in vielen vielen tutorials bereits beschrieben, ich spare mir das in diesem informationellen post einfach mal. Die build config der Asterisk beinhaltet zumindest so ziemlich alles, was die asterisk 1.4 kann. Als ISDN Channel driver soll wie bereits angedeutet mISDN zum Einsatz kommen.

Die Asterisk kompilierte ich in der chroot umgebung meines debootstrap folders mit einer installierten toolchain. Dies ging, da der ThinClient wie auch mein Host system i386-kompatibel waren. Ebenso verfuhr ich mit mISDN und mISDNuser. Hier muessen die Pfade zu den kernel headern pinibel angegeben werden, das mISDN in einem Verzeichnis nach diesen sucht, die es aus der aktuell laufenden Kernel-version generiert. Dies funktionierte bei einem eigenbau natuerlich nicht.

FreePBX folgt, da ich eine Trennung von Extensions und Endgeraeten vorsehe und keine Lust habe, mir alle Features der Anlage selber zu scripten.

Auf das Microdrive bringe ich die Daten und den kernel via “cp -rav”. Der Bootloader wird etwas knifflig. Hierzu muessen /proc und nach moeglichkeit /sys im chroot verfuegbar sein. Danach wird grub im chroot installiert. Wir benoetigen fuer die Installation von Grub eine device.map, die die Situation angibt, wie sie aktuell in unserem System vorliegt. Die Konfiguration spaeter schaut allerdings ganz anders aus. Mein Microdrive steckt aktuell in /dev/sdb, spaeter im Geraet allerdings in /dev/hda…

Wir brauchen also voruebergehend fuer die Installation etwas, was etwa so ausschaut in /boot/grub/device.map um Grub installieren zu koennen:


(hd0) /dev/sdb

Vermutlich existiert in /dev/ im chroot kein Devicenode fuer dieses Geraet. Wir koennen mittels “MAKEDEV generic” allerdings dort die generischen devicenodes anlegen. Weiterhin muessen wir in der /etc/fstab voruebergehend flunkern und dort als Mountpoints die entsprechenden Geraetenamen eintragen, die zum Zeitpunkt der Installation gueltig sind, insbesondere wenn /boot und / auf verschiedenen Partitionen liegen. Ist das der fall, so lohnt es sich, in /boot einen symlink von boot nach ./ anzulegen, da einige scripte sich darauf verlassen.
Damit nun grub-install die /boot Partition - so es denn eine gibt - auch findet, muessen wir noch die /etc/mtab entsprechend anpassen. Hierher bezienen mount und und umount die Informationen ueber gemountete Dateisysteme. Ich erzeuge dort 3 Eintraege, die ich aus /proc/mounts ableite:


/dev/sdb2 / ext2 rw 0 0
/dev/sdb1 /boot ext2 rw 0 0
proc /proc proc rw 0 0

Mit “mount” sieht man sehr schnell, ob man alles richtig gemacht hat. Anschliessend sollte “grub-install /dev/sdb” den Bootloader an die passende Stelle installieren. “update-grub” erzeugt uns nun eine aktuelle menu.lst und wir vergewissern uns, das alles richtig ist: In /boot/grub sollten nun die stages fuer unseren Grub bootloader liegen. Hier editieren wir auch noch schnell die device.map auf die spaetere Konfiguration im System. Wir passen die /etc/fstab wieder an, so dass spaeter die Devicenamen auch passen. Die /etc/mtab koennen wir mit aller zuversichtlichkeit loeschen, bitte aber direkt mittels touch wieder anlegen. Da die grub installation in aller Regel leider nicht erkennt, dass hda1 nicht das tatsaechliche root ist, erweitern wir in der menu.lst auch nich die zeile mit “kopt” um “root=/dev/hda2 hda=nodma panic=5″ und ersetzen das alte “root=”. Ein “update-grub” regelt die Einzelheiten. Nach getaner Arbeit verlassen wir das chroot und testen unseren Erfolg im qemu - nachdem wir alle Verweise und mounts auf /dev/sdb aufgeloest haben versteht sich.
Zeigt “qemu -hda /dev/sdb” ein grub-menue, hat unsere Arbeit Erfolg gehabt.

Das Geraet bootet und ich kann die Asterisk wie gewuenscht konfigurieren :)

Man man man… manchmal aber echt ey!

Wednesday, February 21st, 2007

Hallo ihr Lieben! :)

Gerade hockte ich noch ein bisschen an meinem Musikrechner und suchte was passendes fuer den heutigen Tag. Ich hab sogar was schoenes gefunden, aber dazu schreib ich nochmal was seperates. Es lohnt sich :).

Bevor ich die Musik raussuchte, hab ich mich noch ein bisschen mit einem meiner alten iPaqs befasst. Vor ziemlich langer Zeit, ich glaube, inzwischen sind es schon fast 2 Jahre, hatte ich den mal bei uns in der Firma gekauft. Es handelt sich um einen iPaq 1940 von HP.

pic20660.gif

iPaq h1940

Dank der unermuedlichen Muehen des Familiar Projektes, die Linux auf den iPaq und andere PDAs mit ARM Architektur portieren, hatte ich einen wunderbaren Nachmittag. Warum? Pah! Voll der Witz ey! (sorry, ich hab gerade Berufsschule, da leidet meine Ausdrucksweise immer ein bisschen). Ich musste feststellen, dass - mittels des relativ neuen Linux LED interfaces - der Power Button des iPaq in vielen verschiedenen Farben zu leuchten vermag - sogar in rosa :). Seht selbst:

iPaq h1940 Power Led Collage

Farbenpraechtiges mobile-computing

Und anders als MaBU’s komischer krams *feix* braucht das noch nichtmal 230 Volt! :). Es geht, weil im Power-Button 3 Leds eingelassen sind: blau, gruen und rot. Irrsinnigerweise wird man als Windows Mobile Benutzer niemals dieses bunte Treiben beobachten. Die LEDs werden ausschliesslich dafuer benutzt orange zu leuchten oder zu blinken (rot && gruen. blinkt wenn akku geladen wird, leuchtet wenn voll) oder blau zu leuchten (Bluetooth) und selbst diese beiden Farben werden nie kombiniert. Der erfahrenere Benutzer wird allerdings feststellen, dass man mittels eines Tricks (Systemtest) die gruene LED auch alleine ans leuchten bekommen kann. Aber warum der Affentanz? wir haben doch Linux :).
Und waehrend ich da so sass und im sysfs led interface herumspielte, ueberkam mich der kalte Schlag: Wie gestoert (freakig, kaputt, nerd^2) muss man sein, um auf sowas so derart abzufahren? Naja, ich finds geil.

Auf bald und kauft nicht so viel Drogen!

Es gruesst der Sternensucher

Bitte keinen Schnupfen jetzt!

Tuesday, January 9th, 2007

Liebe geduldigen Ohrenpilgerer,

heute habe ich die wohl erquickungsvollste Entdeckung seit laengerem gemacht! Danke cosmo fuer das Geschenk, dass ich jetzt endlich verstanden habe. Was es ist? Na ich bitte! Eine Nasenfloete natuerlich! Wer haette es gedacht? Seit einigen Wochen schon versuche ich herauszufinden, wie sie funktioniert und heute Abend, quasi wie von selbst griff ich danach und setzte sie wie selbstverstaendlich an die Nase. Ein Ton, dann eine Melodie, wie ein Wunder.

Ansicht der Nasenfloete von beiden Seiten

Das Instrument von beiden Seiten

Zur Funktionsweise: Den Unterteil der Nase drueckt man sachte in die Beugung, so dass man leicht Luft durch das runde Loch saeuseln kann. Das Labium wird vor dem Mund positioniert und der dadurch entstehende Ton kann in selbigem nach belieben geformt werden (es ist etwas wie beim Pfeifen). Eigentlich sehr einfach, oder?

Ein Hoerbeispiel schicke ich sicher noch nach. Ihr koennt ja Wuensche aeussern, was ihr hoeren wollt :).

Es gruesst der Sternensucher.

Wie aus der Not die Tugend wurde

Tuesday, December 5th, 2006

oder: das Maerchen von der Treiber-CD.

Als Angestellter/Auszubildender mit Kontakt zum Einzelhandel im Bereich EDV (auch bekannt als Elektronische Devisen-Verbrennung) kommt man, wie es die Sache will, viel zu oft in Kontakt mit neuen Errungenschaften auf dem Markt. Diese, meist in den Computer eingebaut oder ueber - gaebe es diese schoenen und vor allem teuren Spielsachen nicht - voellig unnoetige Hochgeschwindigkeitsanschluesse mit diesem Verbunden, sind oft nur dann zu betreiben, wenn ihnen ein entsprechender Treiber zum Frasz vorgeworfen wird. Schon fast ohne es zu merken laesst der Windows-Benutzer vor Anschluss des Geraetes (oder in den Faellen, wo wir uns nacher meist nach den Regeln des im vorherigen Beitrag genannten Irrtums 1, 2 oder 4 treffen NACH Anschluss des Geraetes) die CD ins Laufwerk gleiten, um sich von den Werbeanimationen und bunten Installationsanleitungen, die der Hersteller ihm kostenlos dazuspendiert, berieseln zu lassen. Aber haben wir eigentlich vergessen wie es in Zeiten aussah, in denen der Platz auf Treiberdisketten noch begrenzt war? Wie war es damals in Zeiten der ersten Modems, wo die AT-Befehlssaetze und Eigenschaften des Geraetes noch von Hand in die Programme eingegeben werden mussten? Als Treiber schlicht unnoetig waren? Die Hersteller haben damals trotzdem Hardware verkauft. Und heute? Nehmen wir als Beispiel einen USB-Stick der Firma TrekStor. Der Stick - Packungsrueckseitig als Kompatibel mit Windows ME/2k/XP und Linuxbetriebssystemen Ausgewiesen - traegt zu unserer Überraschung was? Richtig! Eine suendhaft teure Treiber-CD im kleinen 8cm Format. Warum? Ein Blick verraet es uns. Werbematerialien und sog. Bonusprogramme (Shareware) werden uns angeboten, sowie ein Installationshandbuch (fuer eine vom Betriebssystem unterstuetzte Plug&Play/Hotplug Hardware). Fuer mich ein Einzeiler “Dranstecken, tut”.

Hardware, die schlicht keiner Treiber bedarf verursacht uns so Muell, Verwirrung und Kopfzerbrechen. Dem Hersteller, somit vor allem aber auch dem Kunden, verursacht dieser unnoetige Aufwand Kosten. Wuerde ich zaehlen, wie oft mich schon Kunden nach dem Sinn einer Treiber-CD gefragt haben, so muesste ich langsam Zettel und Stift zu Hilfe nehmen. Den Mehraufwand in Form von Kosten und Arbeitszat jedoch nimmt der Hersteller billigend in Kauf, weiss er doch schon, dass der Kunde, der das neu erworbene Geraet zuhause aus der Verpackung schaelt, fuer die Inbetriebnahme des selben als notwendig waehnt. Warum also nicht die Monitorflaeche des Kunden als Werbeflaeche nutzen, und diesen - waehrend man als Alibi ein bisschen Shareware installiert - seinen neu geweckten Begehrlichkeiten ueberlassen? Nichts wirkt als Kaufanreiz besser als ein “Diese Funktion, die Ihr Geraet noch nicht hat, erwerben Sie mit der naechst groesseren Version des Produktes.” - am liebsten noch in der Software, mit der das Geraet am Ende betrieben werden soll. Das gilt fuer Flachbildschirme und DVD-Brenner ebenso wie fuer Digitalkameras und Videokarten.
Liebe Kunden, wo bleibt eure Muendigkeit?

Mit diesen Worten wuensche ich euch einen schoenen Abend

Euer Sternensucher

“2 perfekte Kreise durchschneiden die Nacht” oder “Schneller als der eigenene Dunst”

Wednesday, March 1st, 2006

Guten Abend liebe Freundinnen und Freunde,

diese Welt ist schlecht… ganz ganz schlecht. Besonders ist sie, wenn wir davon ueberzeugt sind dass sie schlecht ist und uns in unserem Stuebchen verkriechen - wie ein Apfelkern darauf wartend, dass jemand aus versehen in unsere Persoenlichkeit beisst, ob des bitteren Beigeschmackes angewidert ausspuckt und uns somit in die Welt katapultiert - sehr sehr schlecht fuer unseren Koerper. Das hat mir mein Hausarzt, wenn auch mit etwas anderen Worten, schon vor etwa 10 Jahren ins Ohr gefluestert. Damals hat er mir verschrieben einmal am Tag koerperlich an meine Grenzen zu gehen. Heute weiss ich was er meinte. Haette ich eher auf ihn gehoert saesse ich jetzt nicht hier und wuerde das fuer euch bloggen, weil ich dann wahrscheinlich nicht so ein verdammter (und ich bin es irgendwie gerne :)) Freak geworden waere.

Auch wenn das jetzt so ist, meine koerperliche Verfassung der Form ist, dass ich nichtmal einen Waeschekorb die Treppen hoch tragen kann ohne ausser Puste zu geraten, moechte ich daran was aendern ohne mich zu aendern ;) Ich habe euch davon erzaehlt, dass ich mir vor dem Winter ein neues Fahrrad gekauft habe. Ich habe beschlossen ab sofort jeden Abend mindestens 11 Kilometer mit dem Rad zu fahren, komme was wolle… (wenn ich es schaffe mach ich auch gerne morgens nochmal die gleiche Runde). Gestern und heute habe ich die abendliche Rundfahrt um Xanten schon hinter mir. Ich umrunde je einmal die bebaute Flaeche auf einer Strecke.

Da ich das alleine nicht schaffe moechte ich euch bitten mir etwas zu helfen. Auf der (fuer die Profis unter euch laecherlichen) Strecke mag ich alleine sein, aber ihr koennte euch die Daten meiner Fahrten ansehen, mich loben oder mich schelten, wenn ich es eines abends mal wieder nicht schaffe mit der Tour :). Die Daten (Die gefahrene Strecke im GPStrans Format, damit ihr seht, dass ich nicth schummel und der Export der Auswertung) koennt ihr unter http://misc.jpoetry.net/rad_training/ ansehen und mit auswerten. Ich Danke euch.

Heute Abend waren die Bedingungen etwas unguenstig, denn es war verdammt glatt. Naesse macht einem Fahrrad nicht viel… Glaette ist aber beschissen da man mit den 2 Raedern keine besonders stabile Strassenlage hinbekommt (es sei denn man ist gerade hingeflogen, dann rutscht man ein Stueck und liegt dann sehr stabil auf der Strasse). Ich bin auch einmal in einer Kurve weggerutscht und hingeflogen, aber weder ich, noch mein Rad haben sich was getan. Ich musste auch beobachten wie 5 in einen Auffahrunfall an der B57 (Hoehe abfahrt Beek, Xanten) verwickelten Fahrerinnen und Fahrrer mit ihren Wagen am Strassenrand standen. Auf die Frage hin ob jemand verletzt sei oder Hilfe benoetige wuenschte man mir allerdings eine gute fahrt, gehiess Vorsicht und sagte, die Polizei waere unterwegs uns keiner sei verletzt. Ich konnte meine Durchschnittsgeschwindigkeit des weiteren auf etwas ueber 21km/h ausbauen. Das ist fuer mich schon gar nicht so schlecht :).

Ich wuensche euch in den naechten Tagen eine gute Fahrt, fahrt sicher und vorsichtig, es ist glatt. Tut euch nicht weh.

Der Sternensucher.

Lemon Tree

Thursday, February 23rd, 2006

Hallo und guten Abend.

Das Zimmerbehaengsel der besonderen Art habe ich am heutigen Abend in meine Kollektion aufgenommen. Es ist eine Art binaerer Suchbaum fuer Limonenfruechte, in diesem Fall ist eine Grapefruit das belittene Objekt des Wahnsinns.

Die die mich schon etwas laenger kennen wissen, dass ich gelegentlich vollkommen durchdrehe und eine Idee, moege sie noch so klein und verrueckt sein, mit aller Macht durchsetzen moechte. Wer mich noch nicht kennt darf trotzdem mitlachen, denn dieses machwerk Glaenzt schon durch eine gewisse Skurrilitaet. Zu betrachten war das Spektakel fuer wenige Minuten auf der StarCam (webcam.jpoetry.net). Die besten Bilder habe ich fuer euch aufgespart.

Was mag man aus einer Grapefruit alles bauen koennen? Wer jetzt an Wurfgeschosse oder Teelichte denkt ist zwar auch sehr kreativ, aber ich hatte eine andere Idee… Hat von euch schonmal jemand eine Mandarine vertrocknen lassen? Also nicht so, dass die dinger verschlimmeln oder so… ich meine einfach vertrocknen lassen. Die Teile werden Knochenhart. Die Schale wird richtig solide und bei dem versuch die dinger zu schaelen sollte man eher auf einen Hobel oder eine Flex zurueckgreifen als auf das gute alte Kuechenmesser. Diese Eigenschaft wolte ich mir zu Nutze machen und hab, mir mit einem Auge die Biathlon-Staffel der Herren im Fernsehen anschauend letzte Tage eine Grapefruit nach der anderen verputzt (ich liebe die), bis ich die dann mal so gut schaelen konnte, dass ich genuegend geeignete Streifen zur Hand hatte. Diese wollte ich, getrocknet zu einem Mobile zu kombinieren.

Heute Abend war es dann soweit, keine langen Worte, seht selbst:

001.jpg

Frickelkrams, dieses ausbalancieren und auf faeden aufreihen. Einige Schalenteile hatte ich auf der Nadel dauerhaft zum schweben gebracht.

002.jpg

Hier versuche ich gerade auf demuetigende Art und Weise mittels eines kleinen Taschenmessers, dass ich im Mund halte mit meinem Kopf einen Knoten aus dem Faden zu entfernen, den ich in der linken und rechten Hand habe. Gut dass ich auch mit der brille noch weitsichtig bin und noch besser, dass der Mensch 3 Arme hat. Das ist uebrigens der letzte Knoten den ich entfernen und nochmal neu machen muss, der Rest ist schon fertig.

done.jpg

Da haengt und baumelt es nun… und es ist fertig. Auch wenn es etwas klein geraten ist, so ist es doch ein kleines Stueck liebevoller Wahnsinn in meinen 4 Waenden.

Einen schoenen Abend wuensche ich euch allen noch und bewahrt euch euren Wahnsinn… :)

Der Sternensucher gruesst…

[tags]Wahnsinn, Schmuck, verrueckt, Deko, Grapefruit, Mobile, Knoten[/tags]

Denk-Fabrik

Friday, February 17th, 2006

Hallo liebe Freundinnen und Freunde,

Heute war ein guter Tag… koennte man meinen. Ich hatte nicht all zu schwer zu tun in der Firma und alles in allem war der Tag recht entspannt. Ich werde nur zusehens privat von Support-Anfragen von Bekannten meiner Eltern ueberhaeuft. Nervtoetend. Kann man nicht einfach mal Feierabend machen? Anscheinend nicht.

Als ich gestern mit meine Chef Marc einen Aussendienst-Kunden besuchte, bei dem es ein Paar Informationen einzuholen und einige Rechner abzuliefern gab, hatte ich die Chance, mal weider schoen gebaute Rechner zu beaeugen. Der Kunde bekam fuer seinen Betrieb 2 ThinkCentre E50 von Lenovo geliefert - Geraete aus einer traditonsschwangeren Serie - Denkfabriken fuer unter den Schreibtisch. Da wir ein paar mehr als nur die 2 Geraete geliefert bekommen hatten und ich das unglaubliche Glueck hatte, dass eines dieser Geraete mir zur Verfuegung stand verschaffte sich mein schon etwas laenger getragener Wunsch Luft, wieder einen stationaeren Rechner zu besitzen, den man anschaltet, an dem man arbeiten kann und den man nacher wieder ausschaltet. Notebooks sind eine feine Sache, aber manchmal braucht es auch einen Rechner, der so rumsteht ;). Ich habe mir also eins dieser ThinkCentre organisiert und schreibe hier fuer euch eine kleine Review. Eins kann ich jetzt schon versprechen, auch wenn die Geraete nicht die billigsten sind: Gefallen finde ich viel daran :).

Zur Hardware:

Die Variante mit der Modellnummer 921571G kommt ins Haus mit einem Celeron D Prozessor (Socket 775), getaktet mit 2.66Ghz. An Arbeitsspeicher bietet das System 256MB, in Form von DDR-DIMMs (Ein Slot bleibt zur eigenen Bestueckung frei). Optische Speichermedien werden gelesen von einem DVD-ROM-Laufwerk der Marke LG Electronics, Modell GDR8163B. Ein Geraet, mit dem wir in der Firma auch sehr zufrieden sind. Damit auch laengerfristig Daten nach dem Ausschalten verfuegbar bleiben hat Lenovo auch eine Festplatte eingebaut *juchu*. Hier setzen unsere IBM-Nachfolger-Freunde auf das Modell ST380011A von Seagate, eine 80GB PATA 100 Festplatte, drehend mit 7200 Umdrehungen udn besitzt einen niedlichen, 2MB grossen Cache. Damit gehts rund (seq. read stream schafft das Geraet mit bis zu 55MB/s… fuer eine Arbeitsstation gute werte finde ich :)). Damit die Hardware nicht lose verstreut unter dem Schreibtisch liegt, hat man sich noch ein Gehaeuse geleistet. Dieses ist optisch ansprechend, mit einem wohldimensionierten leisen Netzteil ausgestattet und bietet Frontanschluesse fuer ein Headset und 2 USB-Geraete. Auch der Luefter der CPU zeigt sich im Regelbetrieb als eher gemuetlicher geselle. Unter dem Schreibtisch ist das Geraet angenehm leise und gibt einem doch das bestimmte Geraeusch im Ohr, dass es laeuft und Funktioniert. Es klingt eben nach IBM.
Auf dem Mainboard aus dem Hause Gigabyte (das Softwareseitig von Lenovo umgebranded wurde) werkelt ein SiS Chipsatz (661 Series) mit Onboard Grafikchip (1 VGA ausgang steht zu Diensten). Damit Benutzer, die sich zur 3. Dimension berufen fuehlen auch auf ihre Kosten kommen, wurde der AGP Port nicht weggelassen. Das System laesst sich daher durch die Eigene Grafikkarte erweitern. Die Soundloesung, ebenfalls von SiS, ist 6-Kanal faehig (Port Sharing) und mittels eines AC97 Codec umgesetzt. Auch Onboard ist ein Realtek basierter Fast Ethernet Adapter. Alles alte Bekannte, aber keine alten Kamellen.
Zur Software:

Geliefert wird das System mit Windows XP Home. Dies ist weniger ein Betriebssystem, als ein Farbtest fuer den Monitor. Wer es dennoch benutzen moechte bekommt mit dem eingebauten IBM Rescue and Recovery System (dass wie hier gezeigt auch im unteren Preissegment Anwendung findet) die Moeglichkeit auch bei wiedereinmal kaputtgespieltem Windows Daten zu sichern und mit wenigen Klicks das gesamte System in den Auslieferungszustand zurueckzusetzen. Dazu wird weder eine CD, noch andere umstaendlich zu suchende Utensilien benoetigt. Es genuegt ein Druck auf die ENTER-Taste waehrend des BIOS-Logo-Screens… schon hilft einem das System wie von selbst aus der Patsche. Daumen hoch.

Erstes Fazit:

Das ThinkCentre E50 ist ein preiswertes (Normpreis um die 380 - 420 Euro) Komplettsystem fuer jeden, der in seinem Heimbuero einfach noch einen Rechner braucht. Seien es die Buero-Klassiker Textverarbeitung und Tabellenkalkulation oder aber das ansehen der Digitalkamerabilder aus dem letzten Urlaub. Mittels einiger freier Software meistert das ThinkCentre diese Aufgaben ohne aus dem Tritt zu kommen. Auch das Ansehen einer Video-DVD ist leicht moeglich. Internet ist mittels Fast-Ethernet Adapter ueber Breitband-Dienste ohne viel Aufwand moeglich. Alles in allem empfehlenswert fuer alle Einsteigerinnen und Einsteiger, die einfach einen Computer haben wollen, der das kann, was man normalerweise braucht (eventuell waere ueber einen Brenner nachzudenken).

Software Advanced:

Wer aufmerksam gelesen hat, hat vielleicht gemerkt, dass ich ein Freund freier Software bin. Ich gebe mich ungerne mit Windows zufrieden, da diesem Betriebssystem die Befiedigungsinstanzen fuer meinen technischen Speiltrieb schlichtweg fehlen. Ich stelle das System daher kurz unter dem Betrachtungswinkel eines Linux Benutzers vor.
Die Installation eines Debian Linux gestaltet sich auf diesem System als aeusserst unkompliziert. Hat man eine Netinstall CD und einen Internet-Anschluss so ist die Installation in ca 20 Minuten (+Herunterladen der Pakete, dass vollautomatisch geschieht) abgeschlossen und das System einsatzbereit. Ich vollzog bei der Installation des Debiansystems die Schritte des HowTos fuer das Crypto-Root nocheinmal nach und stellte einige kleine Fehlerchen fest.

Nach der Installation des X-Servers und meines favorisierten All-in-One Brechers KDE (inzwischen nahezu eine Killerapplikation) war das System quasi ohne manuelle Anpassungen an der Configuration der Kernelmodule, des X-Servers oder sonst irgendwelcher Querelen vollstaendig Einsatzbereit. Die Hardware (Chipset/Grafikkarte/Sound) wurde erfolgreich vollautomatisch initialisiert und das System lief rund. Mehr kann man doch nicht wollen oder?

Einziger Haken mit Linux: Spaetestens nach der Installation des GRUB war das Rescue and Recovery hinueber. Eine Wiederherstellung ist nur unter Windows mit einem von IBM erhaeltlichen Tool moeglich.

Sehen wir ein Bild von dem System beim booten (mit dem neuen initramfs patch fuer themebare Crypto-Banner):

IBM ASCII Splash
Das sieht der geneigte Benutzer beim Starten ;)
Ich pflege die Patches dann nacher mal in das Archiv ein.
Euch allen einen schoenen Abend vom Sternensucher :)

[tags]ThinkCentre, Lenovo, IBM, Linux, Workstation, SiS[/tags]

Bis auf die Wurzeln verschluesselt (SWWFSP*)

Wednesday, February 15th, 2006

ALLE ACHTUNG! Dieser Eintrag ist obsolet. Mit den aktuellen Installations-Datentraegern der Distributionen Debian und Ubuntu laesst sich das unten beschriebene Setup ebenfalls durchfuehren (ohne externes Gebastel). Die Scripte werden daher nicht mehr weiter angepasst (und duerften inzwischen aufgrund geaenderter Ordnerstrukturen fuer das initramfs auch nicht mehr funktionieren). Ich danke euch fuer eurer unermuedliches Fehlersuchen :).
Achtung bitte. Dieser Eintrag wurde mehrfach aktualisiert. Bitte beachte auch die Updates am Ende des Eintrages. Diese koennten ergaenzend zum Eintrag selber schon Fragen loesen oder Anhaltspunkte fuer weitere Informationsbeschaffung leisten. Danke :)

Nochmal Achtung! Inzwischen gibt es unter blog.roothell.org eine aktuellere Anleitung fuer alle Ubuntu Dapper Benutzer, die auch ohne weiteres mit Dapper Drake funktionieren soll. Danke an alle, die mir dies mitgeteilt haben.

Hallo liebe unbaendige Fangemeinde dieser prosaischen Hirnvergewaltigung. Heute war ein guter Tag… zumindest fuer die meisten Menschen auf diesem Planeten. Valentingstag ist ein Tag der Liebe, der Zuneigung und der Gestaendnisse. Nichts der gleichen erreichte mich, bis auf eine einsame traurig schauende digitale Rose meiner Cousine, die mich sehr gefreut hat. Naja… seis drum. Ein Nerd ist ein Nerd. Wer beliebt sein will sollte sich andere Hobbys suchen und in der Stadt herumlaufen, mit den teuren Klamotten rumprollend. Das ist nicht so mein Ding, da behalte ich doch lieber all das Geld ein und gebe es fuer den ganzen Kram aus, der kaputt geht und ersetzt werden muss… siehe mein iBook. Noch immer koennte ich mir die Stimmbaender aus dem Hals fluchen.
So aehnlich muss ich heute morgen auch geklungen haben. Erstmal war die Nacht recht kurz da ich gestern Abend noch, Gott allein weiss wie, mein Notebook,bzw das Debian darauf abgeschossen habe. Zusaetzlich dazu hat mich eine Erkaeltung dahingerafft… oder sagen wir “hatte”… ich leide nie sehr lange darunter und meistens ist das mit viel Tee und meiner Lieblingsmusik in wenigen Stunden ausgesessen. Ich war als heute nicht in der Firma, hatte quasi Schonfrist ;). Was macht ein Nerd an so einem Tag? …
Zu dieser Frage sollte man als interessierte Persoenlichkeit zunaechst folgenden Gegensatz zu verstehen versuchen. Nerds sind, obgleich sie der Oeffentlichkeit gegenueber haeufig zu Schreckhaftigkeit neigen leicht von jeglicher technischer Spielerei zu begeistern. Auch wenn diese erst mit gewisser Zurueckhaltung und Skepsis beaeugt wird zieht sie den gekoederten Nerd rasch in ihren Bann und wird so lange nicht losgelassen bis sie an allen Enden pfeift und blinkt. Dem entgegen steht der oft auch nur technischen Massnahmen zur Datensicherheit vorgeschobene Schutz der Privatsphaere, deren interessante Seite mich am heutigen Tag zu fesseln drohte. Ich spreche mit diesen geschwollenen Worten vom tool ‘cryptsetup’ (die Variante mit LUKS). Dieses kleine Wunderknaeul aus Prozeduren und Variablen ist in der Lage mittels des Kernel Device Mappers in Linux eine Abstraktionsebene zwischen den Benutzer und die Hardware zu schieben, die eine transparente Verschluesselung zulaesst (Beschrieben im Linux Magazin 08/2005 incl des technischen Hintergrundes den beiseite zu lassen ich gedachte). Diese Abstaktionsschicht, die ich im fortlaufenden einfach beim Namen des zustaendigen Kernel-Moduls nenne (”dm-crypt”) laesst auf herrlich einfache und sichere Art und Weise ganze Dateisysteme hinter dem mystischen Schleier der Kryptographie verschwinden. Im Einsatz ist dieses Verfahren seit etwa 07/2005 in diesem Haushalt zur Speicherung von Gespraechsdaten und Schluesseln auf der PBX4Linux Telefonanlage und bisher konnte ich nicht klagen, was Leistung oder Zuverlaessigkeit angeht. Allerdings ist in diesem Fall nur ein Teil des Dateisystems verschluesselt.
Wie ich bereits sagte war das Debian auf meinem Notebook eh schwer beschaedigt und da mich diese Crypto-Technik immer wieder dazu antreibt zu lesen, zu verstehen und auszuprobieren wagte ich es, einen ersten Versuch zu einer Crypto Root FS Installation zu unternehmen. Der Haken dabei ist, dass schon sehr frueh beim Booten, wenn das Wurzeldateisystem auf dem die Programme (unter anderem zum Initialisieren des Crypto-Dateisystems) liegen noch nicht verfuegbar ist, ein Programm zum Aktivieren des Device-Mappers im Kernel gestartet werden muss. Debian konnte das bis vor kurzem noch (als sie noch mkinitrd und klassische cramfs initrds, winzige dateisysteme mit den zum booten wichtigsten Prograemmchen, benutzten). Die HowTos in der Cryptsetup-Dokumentation und im Internet, die ich zu debian und gentoo gefunden habe benutzten fast alle dieses Verfahren. Da mit der Umstellung von devfs oder classical dev auf udev im Kernel auch die Umstellung von initrds zu initramfs (anstatt cramfs kommen hier cpio Archive zum Einsatz) einher ging sind diese HowTos, was die Pre-Root-Mount Abschnitte - also die, die beschreiben, wie man ein verschluesseltes Root FS mountet - angeht unbrauchbar. Im Versuch liess sich auch der Kernel mit der aus der sonst recht hilfreichen Dokumentation von cryptsetup (die man unter /usr/share/doc/cryptsetup/CryptoRoot.HowTo findet) erstellten initrd nicht booten, bzw fand dieser das dm-crypt Laufwerk nicht. Vielleicht war das ein Problem mit LUKS.
Das neuere cryptsetup aus unstable (aktuell leider nicht das aus testing und stable, weshalb unbedingt vorher aktualisiert werden muss) unterstuetzt die wunderbaren LUKS Erweiterungen. LUKS steht fuer “Linux Unified Key Setup” und ist quasi ein Header auf dm-crypt Laufwerken, in dem mehrere Schluessel fuer mehrere Benutzer etc festgelegt werden koennen und noch vieles mehr. Weitere Infos dazu gibts unter http://luks.endorphin.org. Auch wenn das Initialisieren eines solchen Laufwerkes wesendlich einfacher ist, muss man darauf achten, dass das cryptsetup mit dem man arbeitet dies auch unterstuetzt. Das war z.B. bei der Gentoo Live CD aus dem 2005.1er Release nicht der Fall. Bei INSERT unterstuetzte der aktuelle Kernel nicht die noetigen aes ciphers und somit musste ich eh neu installieren. (Kleine Anmerkung an dieser Stelle: Ich zog noch einige andere CDs in erwaegung, aber ich wollte auch noch fertig werden und habe mich daher fuer eine etwas exotische, wenn auch in vielerlei Hinsicht vorteilhaftere Methode entschieden)
(Es folgt eine Anleitung in der bitte jede Leserin und jeser Leser aufmerksam darauf achtet die Werte, Pfade und Devicenamen an das eigene System anzupassen. Diese Anleitung ist fuer Menschen, die wissen was sie tun.)
Wie bereits vor einigen Tagen erwaehnt, das Notebook ist des Nerdes Freund.. demnach hat mans immer dabei und kann es sich nicht erlauben wenn mal was nicht tut. Bei meinem Firmennotebook ergibt sich zuseatzlich die schwierigkeit, dass ich ueber einen unpowered (4Wire) FireWire Port von CD booten muss. Daher eruebrigt sich das Mitfuehren einer Knoppix CD. Die recht Geraeumige 80GB HDD ermoeglicht allerdings das Unterbringen einer speziell auf die Rettung von Daten und Systemen ausgelegten Debian Installation von unter 1GB, die ich gleichsam zum zusammenstellen des dm-crypt root und des initramfs benutzen moechte.
Zur Installation von Debian nehme ich in der Regel direkt einen Debian Installer Daily Snapshot. Die Dinger tun oft genug und sind aktuell. _SO_ mag ich das. Ausserdem kommt man schnell ran und muss nur um die 100 MB herunterladen (http://www.debian.org/devel/debian-installer/). Herunterladen, Brennen und es kann losgehen (die unglaublichen Szenen bei den Versuchen das FireWire CD Laufwerk ans laufen zu bringen erspare ich euch… gleichzeitig enthalte ich euch auch noch mehrere Lachkraempfe vor, aber wir sind ja zum Arbeiten hier… nicht zum tratschen.)
Das Partitionieruntsschema ist recht einfach:

  • hda1: ca 350MB Boot (ext2) - Ich mag es gerne geraeumig und bastel viel mit kerneln. Ausserdem wusste ich noch nicht wie gross das initramfs mit all den tools nacher werden wuerde. Nummer sicher! Im Debian Installer setzen wir die Partition auf “Formatieren” und “Benutzen als ext2″. Da wir Grub benutzen koennten wir auch XFS oder ext3 nehmen… aber warum ein journal? der Mountpunkt ist /boot
  • hda2: ca 780MB Swap (noch kein FS! der swapspace wird auch verschluesselt ;)) - Ich habe 384MB Ram, das ist weniger als 512MB, daher muss ich nach der Faustregel aus meinen fruehen Linuxtagen das doppelte an swap nehmen. Ich bin bisher ganz gut mit der groesse gefahren.
  • hda3: ca 7.5GB Root (auch noch kein FS, dafuer sind wir heite hier) - Das Root Dateisystem traegt nacher nicht das /home directory, also darf ist es mit 7.5GB fuer ein statisches Arbeitssystem schon ganz schoen geraeumig. Wir haben den Platz ja schliesslich.
  • hda5: ca 800MB Rescue Root (ext3) - Hier rein installieren wir erstmal. Das teil rettet uns nacher unseren Kragen, wenn mit dem Hauptsystem unterwegs mal die Pferde durchgehen. Im Debian Installer setzen wir es auf “Formatieren” und “Benutzen als ext3″. Der Mountpunkt ist /
  • hda6: ca 50 GB Home (noch nix, auch das /home wird verschluesselt) - Das Homedir traegt spaeter die Benutzerverzeichnisse. Ich neige dazu da allen moeglichen Krams reinzuwerfen, daher hab ich hier auch etwas platz vorgesehen.
  • hda7: der Rest. Ich werfe hier ziemlich viel speicher ueber Bord, aber man weiss ja nie. Vielleicht will ich mal eine andere Distri testen oder so. Ich lasse die restlichen >10GB mal frei und harre der Dinge die da kommen.

Unser Debian Installer fuehlt sich also etwas beengt, denn bisher weiss er nur von den beiden putzigen Partitioenchen von insgesamt etwas ueber 1GB. Das ist / (hda5) und /boot (hda1). Wir installieren hier erstmal das Basissystem rein, installieren auf nachfrage grub und machen weiter. Ich mag grub eher, weil er im Zweifel eine kleine shell zum schnellen korrigieren der Parameter und der Kernel-Namen bietet. Sowas hat LILO irgendwie nicht. Schade.
Nach der Installation des Basis Systems bereiten wir die Installation des Crypto-Root sorgfaeltig vor. Zu installieren sind cryptsetup, das 2.6.15 (das ist gerade aktuell… wenn du das liest vielleicht auch schon wieder veraltet) kernel image fuer unseren Prozessor (ich nehme hier 686, da ich einen Pentium III besitze) und, sollte das nicht eh schon passiert sein, die initramfs-tools. Natuerlich installiert hier auch jeder seinen lieblingseditor und alle tools, die man auf der konsole zur wiederherstellung braucht. Meine lieblinge sind hte (Paket ht), partimage, parted und einige Andere dinger die mir gerade nicht einfallen.
Der Knackpunkt ist wie gesagt das initramfs. Von hier aus muss die Passphrase abgefragt werden, der device-mapper eingerichtet und das LUKS initialisiert werden. Das macht zwar alles ein kleiner Befehl, aber an diesem haengt ein Rattenschwanz an Bibliotheken die alle in das kleine Image rein muessen. Zum GLUECK habe ich festgestellt, dass die initramfs tools einem hier die ganze arbeit abnehmen und Abhaengigkeiten aufloesen. Damit es allerdings ueberhaupt was zum mounten gibt muessen wir den krams erstmal verschluesseln. Wer hier nach einem HowTo fuer das uebernehmen einer bestehenden Installation sucht, dem muss ich leider absagen. Vielleicht bringt es aber auch was weiterzulesen. Die Installationsprozedur ist fast die selbe.
Spaetestens an dieser Stelle solltest du den aktuellen Kernel gebootet haben. Wenn nicht, neu starten. der 2.6.15 kann alles was wir brauchen. Zur Anwendung wird kommen: ein dm-crypt LUKS mit aes-cbc-essiv:sha256 cipher. Das bedeutet, wir benutzen Cryptsetup mit LUKS Support, AES als Verschluesselungs-Algorithmus, wenden diese als Zyklische Block Chiffre, damit in Blocks zufaellig gleiche Fragmente nicht auch in der verschluesselten Kopie gleich aussehen. Danach salzen wir diesen Zyklus noch mit einem Initialisierungsvektor, der gehashed wird. Damit verhintert man Wartermarking Angriffe. Die Details sind BITTE dem LM zu entnehmen ;). Ich will nicht noch mehr ueber die Technik sagen.
Schreiten wir also zur Tat: hda3 ist unser erstes Opfer. Nach der Tabelle oben muesste hier hinein das Root Dateisystem in das wir spaeter das Grundsystem kopieren. Damit das geht, und der Kernel weiss, dass es sich hierbei um den Physischen Raum fuer ein verschluesseltes Dateisystem handelt benutzen wir jetzt (ich hoere einige zum xten mal aufatmen, “Kommt der Junge jetzt endlich zur Sache”) erstmalig cryptsetup. Die Manpage ist auf jeden Fall einen Blick wert! (Folgende cryptsetup Aktionen werden bitte als root ausgefuehrt, da wir direkt mit den BLock devices arbeiten)

cryptsetup -c aes-cbc-essiv:sha256 -y -s 256 luksFormat /dev/hda3

(Einige HowTos fuellen vorher die HDD mit Zufallsdaten. Dies kann aus kryptoanalytischer Sicht Sinn machen um Bereiche in denen verschluesselte Daten liegen nicht offensichtlich zu zeigen. Ich habe darauf verzichtet. Die Manpage von “shred” hilft weiter, wenn dieser Schritt gewuenscht wird.)
Die Nachfrage von Cryptsetup (die hoffentlich alle angezeit bekommen… ansonsten ist wohl ein Fehler aufgetreten) LESEN WIR SORGFAELTIG und bestaetigen sie dann mit YES (alles schoen brav gross schreiben). Wir werden 2x nach einer Passphrase gefragt, nach deren 2 maliger korrekter Eingabe alle Daten auf /dev/hda3 verloren gegangen sind (ich hab doch gesagt… LESEN ;)). Jetzt sind hoffentlich alle Header geschrieben. Die Passphrase ist optimalerweise sehr lang, dennoch leicht zu merken und schwer zu erraten. Ganze Saetze mit Zahlen und Satzzeichen machen das ganze interessant. Wichtig jedoch ist, dass zum Zeitpunkt der Passphrase eingabe die lokalisierten Tastaturtreiber noch nicht geladen sind (Anmerkung vom 23.2.06: Das stimmt inzwischen nicht mehr ganz. In der aktuellen Version sollte die Keymap, die sowieso vom System beim booten geladen wird mit in das initramfs gepackt werden). Verzichte also auf z,y, Klammern, Semikoli und andere Frechdachse, die sich auf der englischen Tastatur ganz wo anders verkrochen haben (zumindest Umlaute sollte man auch dann beiseite lassen, wenn man nach dem 23.2.06 installiert hat).

Die Parameter erklaeren sich wie folgt: -c legt die oben bereits erklaerte cipher fest, -y laesst cryptsetup 2x nach einer Passphrase fragen und -s ist die laenge unseres Schluessels in Bit. 256 Bit ist fuer AES das aktuell unterstuetzte Maximum. luksFormat ist die durchzufuehrende Aktion (Formatieren mit LUKS) und /dev/hda3 das zu formatierende Geraet. Haeufig wurde ich gefragt ob man auch ein anderes Dateisystem als LUKS verwenden kann… aber hier ist schon die Frage in die falsche Richtung gedacht. LUKS ist nicht etwa schon das Dateisystem, sondern nur die Vorbereitung fuer das transparente dm-crypt. Das Dateisystem erstellen wir spaeter…
Noch ist allerdings unser verschluesselter Datenspeicher noch nicht sichtbar… das ist auch besser so. Was wir sehen lenkt uns vom wesendlichen ab. Wir sollten uns gleich an das wichtige gewoehnen und durch Wiederholung lernen. Schliesslich haben wir ja noch unsere Home Partition hda6 (oder aehnlich). Mit ihr verfahren wir erneut wie oben beschrieben.
Ist das erledigt ist es Zeit zum spielen. Wir aktivieren kurz mal beide dm-crypt mappings um erstens zu schauen wie das geht und zweitens um zu sehen ob wir uns noch an die Passphrase erinnern. Letzteres ist besonders wichtig. Ich merke hier noch einmal an (andere Dokumentationen haben das sicher auch schon getan) dass Daten aus einem Crypto-Device, dessen Passphrases man vergessen oder dessen Schluessel man verloren hat NICHT (UND AUF KEINEN FALL) in einem fuer uns zu ueberlebenden Zeitraum zurueckerlangt werden koennen. BITTE vergesst eure passphases also nicht.

cryptsetup luksOpen /dev/hda3 root

Dieser Befehl oeffnet das crypto device mapping (luksOpen, erster Parameter) fuer das physikalische device (/dev/hda3, zweiter Parameter) und laesst im device node /dev/mapper/root (/dev/mapper/ + dritten Parameter) den Klartext erscheinen, als waere dieses node das eigentliche Geraet selbst. Logisch gibt es also keinen Unterschied zwischen dem Mapper Device und einer unverschluesselten Festplatte. Hier spielt das Unix-Prinzip “Alles ist eine Datei” seine Staerken aus (ich liebe es :)). Damit wir allerdings diese Aktion (die nacher auch aus dem initramfs automatisch ausgefuehrt werden muss) durchfuehren koennen, muessen wir erneut unsere Passphrase eingeben (diesmal nur einmal, schliesslich sehen wir direkt ob sie falsch war oder nicht). Haben wir uns irgendwann mal nicht vertippt, erzaehlt das cryptsetup uns welcher schluessel das denn war, mit dem wir das device entfesselt haben und setzt das Mapping in /dev/mapper/. Rein theoretisch koennten wir jetzt dort ein Dateisystem anlegen, aber das lassen wir besser. Erst probieren wir das gleiche nochmal mit dem home mapping (und ersetzen dabei den device Namen, sowie den namen des Mappings durch /dev/hda6 und ‘home’.
Damit der kernel oder besser gesagt das cryptsetup init script die Geraete und mappings, die wir brauchen wiederfindet, werden diese in der Datei /etc/crypttab (aehnlich den Dateisystemen in der /etc/fstab) verwaltet. Wir richten hier die uns wichtigen drei (ja…. tatsaechlich. Der swap wird _fast_ automagisch verschluesselt) oder mehr Eintraege an. Ich stelle alle 3 mal exemplarisch vor. Der Inhalt meiner /etc/crypttab auf der rescue-Partition schaut wie folgt aus:

root /dev/hda3 none luks,retry=3,cipher=aes-cbc-essiv:sha256
home /dev/hda6 none luks,retry=3,cipher=aes-cbc-essiv:sha256
swap /dev/hda2 /dev/random swap

Die Eintraege gestalten sich demnach im Format:
Zum keyfile und den Optionen empfehle ich einen Blick in die Manpage 5 crypttab (man 5 crypttab), wo die optionen feutlich erklaert werden. Das Keyfile sei kurz von mir erklaert. Es ist moeglich, anstatt einer Passphrase einen Schluessel aus einem Keyfile (von der beim Formatieren angegeneben Schluessellaenge) mit anzugeben. Dies empfielt sich fuer den SWAP. Da dieser eh nach dem booten unwichtig wird (mal suspend to ram ausgenommen, dass ich nie benutze) ist es moeglich, hier /dev/random einzutragen. Nicht ganz paranoide koennen hier auch /dev/urandom eintragen. Dies hat den Vorteil, dass das erstellen der 32 byte (bei 256 bit passt das) fuer den Schluessel nicht zu lange dauert. /dev/random kann manchmal SEHR langsam sein. /dev/urandom hingegen spuckt in der Regel etwa 1MB/s aus. Da unsere Rescue Partition nicht verschluesselt ist verzichten wir hier auf die angabe von Schluesselfiles. Dies wuerde, da diese gleichsam unverschluesselt und somit theoretisch fuer jedermann zugaenglich waeren unsere gesamte Arbeit unnoetig machen. Wer als Passphrase “mama” gewaehlt hat oder auf die Idee mit den keyfiles auf der rescue-Partition gekommen ist kann hier ruhigen gewissens das Lesen aufgeben. Dir fehlt in diesem Falle das noetige Mass an Verfolgungswahn ;). Auf dem verschluesselten RootFS hingegen werden wir gleich ein Schluesselfile fuer die home-Partition hinterlegen. Das erspart uns einmal Passphrase tippen und ist theoretisch genau so sicher, wie wenn die home directories auf der gleichen partition laegen wie das RootFS. Wer hier fuer das Homedir mehr Sicherheit benoetigt kann allerdings auch dann darauf verzichten.
Nun erstellen wir endlich die Dateisysteme. Bei mir fiel die Wahl fuer beide Partitionen auf ext3. Dieses Dateisystem ist ein guter Allrounder fuer solche Dinge… und ich persoenlich habe schlechte Erfahrungen mit reiserfsund xfs gemacht. Diese halten mich immer wieder davon ab die beiden nochmal auszuprobieren ;). Wir tun wieder so als seien unsere mapper-devices ganz normale Partitionen:

mkfs.ext3 /dev/mapper/root
mkfs.ext3 /dev/mapper/home

Dies erledigt alles fuer uns und kann eine weile dauern. Eine gute Gelegenheit ein Glas Wasser oder eine Flasche Bier zu holen. Fuer nen Kaffee reichts wohl nicht. Nachdem wir festgestellt haben, dass alles ok ist tragen wir das gerade getane in die /etc/fstab unseres rescue Systems ein und legen die entsprechenden Mount-Punkte an. Folgendes findet sich in meiner fstab zu den 3 dm-crypt Geraeten:

/dev/mapper/root /mnt/root ext3 defaults 0 2
/dev/mapper/home /mnt/root/home ext3 defaults 0 2
/dev/mapper/swap swap swap sw 0 0

Das mkswap, was einige vielleicht vermissen, koennen wir uns sparen. Das wird von dem cryptsetup init-Script erledigt. Zu beachten waere an dieser Stelle, dass ein bereits bestehender Eintrag auf /dev/hda2 als swap device entfernt werden sollte. Mit

mkdir /mnt/root
mount -a
mkdir /mnt/root/home
mount -a

erledigen wir alles Noetige. Es sollte normal sein, dass er nach dem ersten ‘mount -a’ noch meckert. Das tut er, da er den Pfad /mnt/root/home noch nicht finden kann. Nun fuehren wir, um das Swap Geraet zu initialisieren

/etc/init.d/cryptdisks start
swapon -a

aus. Treten hier keine Fehler auf, und zeit “free” die gewuenschte Menge an swap Speicher, so koennen wir, nachdem wir mkinitramfs mit den noetigen Informationen versorgt haben mit dem Kopieren des Root Dateisystems weitermachen. Unter

http://misc.jpoetry.net/crypto_root/cryptsetup_script.tar.gz

befindet sich ein betreutes Archiv mit 2 Scripten. Einem sog. hook-Script, dass mkinitramfs beim erstellen des initramfs sagt, was es zu noch mit in das archiv zu packen hat und ein Script, das beim booten den cryptsetup befehl ausfuehrt. Es werden nur mittels LUKS verschluesselte dm-crypt devices direkt unterstuetzt. Fuer alles weitere findet sich im Abfrage script ein Kommentar, wo es etwas einzufuegen gibt. Das Archiv mittels

tar -xzvf cryptsetup_script.tar.gz -C /

zu entpacken sollte fuer die meisten Mitmenschen genuegen. Sollten Fehler beim erstellen des initramfs auftreten, sind diese mittels der Fehlermeldungen in den 2 entpackten shell scripten leicht zu finden.
Der Befehl “cp” leistet uns nun beim “klonen” des installierten rescue-Systems gute Dienste. Oftmals liest man, dass das uebertragen von installierten Systemen nur mittels tar geschehen sollte. Das ist so nicht korrekt. cp unterstuetzt die geforderten Eigenschaften zum beibehalten von Links, special devices, Berechtigungen und so weiter ebenso. Ist /mnt/root/ und /mnt/root/home nun gemountet, kopieren wir mittels

cp -avx / /mnt/root/
cp -avx /home/* /mnt/root/home/

das gesamte installierte rescue System in unser verschluesseltes Dateisystem. Das kann einige Zeit dauern. Schliesslich werden die Daten jetzt bevor sie geschrieben werden ordendlich durch die Wurst gedreht. Wir passen nun noch einige Dinge in den Dateien /mnt/root/etc/fstab und /boot/grub/menu.lst an. In der fstab unseres spaeteren Arbeitssystems ist eigentlich nur das /mnt/root/ vor den beiden Mountpunkten fuer /dev/mapper/root und /dev/mapper/home zu entfernen. Wer moechte kann das rescue-System auf geeignete Weise in die spaetere Installation mounten, der hierfuer anzulegende Eintrag ergibt sich fast von selbst aus den Kommentaren in der Datei. Die menu.lst muss etwas gefuehlvoller angepasst werden. Hier kopieren wir einen der bestehenden Eintraege mit den Angaben fuer unser Rettungssystem (optimalerweise den aktuellsten) bis GANZ unten unter die DEBIAN AUTOMAGIC KERNELS LIST. Wer moechte kann in /boot eine kopie eines funktionierenden Kernels und eines funktionierenden initramfs anlegen und diese beispielsweise vmlinuz-rescue und initrd.img-rescue nennen. So gehen sie beim Entfernen des Kernels vom System nicht verloren (achtung ist hier den Modulen geboten, die dennoch verschwinden koennten). Ist das getan, muesste ein rescue eintrag in der menu.lst etwa so aussehen:

title Rescue System
root (hd0,0)
kernel /vmlinuz-rescue root=3,5 ro
initrd /initrd.img-rescue
boot

Weil ich etwas Probleme mit dem root dateisystem hatte, gebe ich als root= Argument die Major,Minor IDs von /dev/hda5 an. Das bootet sicherer. Ausserdem habe ich das savedefault entfernt, da ich nicht moechte, dass, wenn ich einmal das Reparatursystem gestartet habe, das gleiche wieder passiert wenn ich neu starte. Ein paar Dinge muessen noch geran werden.
Das initramfs erwartet einige erweiterte kernelparameter um daraus den cryptsetup Befehl zusammenbauen zu koennen. Diese muessen wir natuerlich JEDEM Kernel mitgeben. Innerhalb der DEBIAN AUTOMAGIC KERNELS LIST finden wir eine Zeile, die wahrscheinlich wie folgt ausschaut:

# kopt=root=/dev/hda5 ro

Dies hat der Debian Installer dort richtigerweise fuer das Rescue System hingeschrieben. Da wir aber fuer neue Kernel unser Crypto Root als rootfs mitgeben moechten geben wir hier folgenden Parameter an (der Hash (oder auch Raute (#) genannt) bleint UNBEDINGT dort stehen):

# kopt=root=/dev/mapper/root ro

Dies sagt dem Kernel, dass er unser dm-crypt device als RootFS benutzen soll. Da nun cryptsetup immernoch nicht weiss, welches echte device dorthin gemapped werden soll (wir erinnern uns daran, bei dem cryptsetup luksOpen-Aufruf /dev/hda3 angegeben zu haben) muessen wir einen weiteren Parameter hinzufuegen. Die Zeile schaut letztendlich so aus:

# kopt=root=/dev/mapper/root cryptivice=/dev/hda3 ro

Der Parameter cryptivice wird ebenfalls benutzt um festzustellen, dass der Benutzer ein dm-crypt einzuhaengen wuenscht. Hierbei handelt es sich nicht um einen Kernel-Parameter, sondern um ein Hilfskonstrukt, der von einem der Scripte, welches wir eben nach /etc/mkinitramfs entpackt haben interpretiert wird. Haben wir alles editieren beendet und die Datei gespeichert, berichtet uns

update-grub

ob alles geklappt hat. Nachfolgend erstellen wir mittels

(Hier stand mal: ‘mkinitramfs -o /boot/initrd.img-2.6.15-1-686′. Empfohlen wird jedoch:)

update-initramfs -u ALL

(jeder moege seinen aktuell laufenden Kernel da hinschreiben wo meine verwendete Version steht) das initramfs neu. Wenn hier keine Fehler auftregen fuehren wir sicherheitshalber erneut

update-grub

aus. Dies ist eigentlich nicht noetig, aber man weiss ja nie ;). Alle kurzentschlossenen tippen an dieser stelle nocheinmal “sync”.
Eben hatte ich schoneinmal angerissen, dass es sinnig sein koennte, auf der verschluesselten Root-Partition ein keyfile fuer die home-partition zu hinterlegen. Um das zu tun gehen wir wie folgt vor (wenn wir denn wollen).
Die Erstellung eines keyfiles geht mittels dd leicht von der Hand:

dd if=/dev/random of=/mnt/root/etc/keys/home.key bs=32 count=1

Der Schluessel ist erstellt. Eventuell muss man je nach Lage des Entropie-Pools ein wenig auf den Tasten Klimpern oder die Maus spazieren fuehren. Dies sort fuer genug Eingabe/Ausgabe-Daten um 32 Byte an zufalls daten zu erzeugen. Da wir moechten, dass dieser Schluessel auch ein Schloss hat, auf das er passt, benutzen wir erneut cryptsetup um den Schluessel zu unserem dm-crypt Geraet hinzuzufuegen:

cryptsetup luksAddKey /dev/hda6 /mnt/root/etc/keys/home.key

Nach eingabe der Passphrase zu dem Geraet (sicherheitshalber… man weiss ja nie wer da gerade einen schluessel hinzufuegen moechte) ist das Keyfile gueltig. Wir muessen cryptsetup und dessen initscript nur noch mitteilen, dieses auch zu benutzen. Dazu editieren wir /mnt/root/etc/crypttab entsprechend unseren Wuenschen und tragen in der Zeile von ‘home’ anstatt none /etc/keys/home.key ein. ACHTUNG. Pass auf, dass du nicht aus versehen die crypttab vom rescue-System editierst oder gar das Keyfile darin erstellst. Ist dies einmal passiert, shredde das keyfile und loesche den Schluessel mit cryptsetup aus dem device. Wie das geht verraet die manpage zu cryptsetup.

Ist das alles getan koennen wir uns an einen ersten reboot wagen. Startet das System nicht: Fehlermeldungen sammeln und in #debian-linux im euirc diskutieren. Da bin ich zu finden und kann eventuell helfen.

So sollte es aussehen
So sollte es theoretisch aussehen

UPDATE: 15.2.06

Was sich sicherlich einige gefragt haben werden ist, wie sowas denn wohl performt. Ich habe dazu mal mit hdparm ein paar lese-Tests durchgefuehrt. Das rapeaesentativste Ergebnis ist folgendes:

/dev/hda:
Timing cached reads: 716 MB in 2.01 seconds = 356.81 MB/sec
Timing buffered disk reads: 74 MB in 3.05 seconds = 24.26 MB/sec

/dev/mapper/root:
Timing cached reads: 700 MB in 2.00 seconds = 349.18 MB/sec
Timing buffered disk reads: 40 MB in 3.04 seconds = 13.15 MB/sec

Die Festplatte ist ein 2,5″ Notebook HDD im UDMA66 Modus ( SAMSUNG MP0804H ) auf . Fuer die noetige Cryptographie sorgt ein PIII 1200Mhz Mobile Tualatin. Der erste wert ist ohne, der 2. mit crypto. Die “cached” WErte verraten, dass der cache noch nicht verschluesselt/entschluesselt ist (da diese sich sehr stark aehneln).

UPDATE: 16.2.06

Gestern habe ich ein ThinkCentre E50 von Lenovo (ehemals vertrieben durch IBM) erstanden und fand die Idee irgendwie cool beim booten anstatt des oben zu sehenden blauen Crypto-Banners ein ASCII-Art IBM Logo anzuzeigen. Die neuen Scripte koennen demnach jetzt auch Theming, undzwar derart, dass man dem kernel beim booten den Parameter “crptbanner=” mitgibt. Das Script zur Erkennung des Cryptoroot mount-Wunsches, das im Endeffekt das Banner anzeigt zeigt dann, sofern vorhanden das entsprechende Banner. Bisher wird nur der Parameter ‘ibm’ unterstuetzt (wenn ich die Scripte gleich hochgeladen habe). Ein Foto gibts in der Review zum ThinkCentre an der ich gerade schreibe.

Das ThinkCentre macht mit seinem Celeron D 2.66Ghz einen Datendurchsatz von knapp 19MB/s im Lesebetrieb aus dem dm-crypt. Die HDD ansich, eine 80GB HDD aus dem Hause Seagate liest 55MB/s Rohdaten. Hier ist also immernoch der Flaschenhals am Prozessor.

Versuche, eine Hifn 7955 fuer das Crypto-API als Hardware-coprozessor dienstbar zu machen schlugen fehl. Der Entwickler des alten Linux Treiber Patches (Eugene Surovegin) erklaerte mir (auf Englisch) wie folgt:

“Der Patch ist eine Sackgasse. Du wirst zuemlich wenig erreichen, wenn du den Hifn Chip neben zeitgemaessen CPUs betreibst. Das Problem steckt im Kernel-Crypto-Layer, der synchron arbeitet. So lange da kein asynchrones Crypto im Kernel ist, sind Hardware-basierte Crypto-Beschleuniger nahezu sinnlos. Ich werde nicht mehr an diesem Patch arbeiten aus diesem speziellen Grund, daher habe ich ihn auch von meiner Webseite entfernt.”

Daraufhin habe ich alle Versuche eingestellt, das Teil sinnvoll ans laufen zu bringen ;). Danke nochmal Eugene fuer diese wirklich schnelle und ausfuehrliche Antwort. So mag ich Community-Kommunikation.

UPDATE: 17.02.06

Kausalitaetsupdate: Warum ueberhaupt Crypto Dateisysteme? Ich fuehre von meiner privaten Seite aus folgende 3 Gruende auf:

  • Widerstand gegen Eingriff und Einblick in meine mobilen Geraete. Ich offenbare meine Daten ungerne Dritten, wenn auch nur indirekt. Jegliches Mittel um meine privaten Daten und somit meine Privatsphaere, fuer mich immernoch nutzbar vor dem Eingriff Dritter zu bewahren soll mir recht sein. Ein guter Anfang sind Crypto-Dateisysteme.
  • Widerstand gegen hoehere Gewalt. Faellt die Festplatte oder ein Teil von ihr aus und ich bin gezwungen sie entweder zu vernichten oder zum Hersteller zu schicken, so gebe ich die Daten meist in beiden Faellen ungewollt und ohne die Gelegenheit einer rechnischen Vernichtung aus der Hand. Der Hersteller des Datentraegers, dem ich nicht vol lvertraue hat andere technische Mittel als ich um die Daten zu lesen. Dies ist, als Konkretisierung des ersten Punktes, unerwuenscht.
  • Technischer Spieltrieb. Wie zu Anfang bereits gesagt spielt der technische Spieltrieb auch eine entscheidende Rolle. Es macht mir Spass die technischen Zusammenhaenge zwischen einem Crypto-Root-Dateisystem, dem Kernel und dem Bootvorgang, die kleinen und grossen damit verbundenen Probleme zu verstehen und aufzuloesen.


UPDATE: 23.02.06:

Da ein Bekannter namens ‘tums’ sehr verwirrt war ueber die Tatsache, dass zwar aus dem Rescue System heraus seine Passphrase funktionierte, beim booten aber nicht (und wir bede LANGE geraetselt haben woran das liegen koennte), habe ich die Scripte (aktuel herunterzuladen) um die loadkeys Funktionalitaet erweitert. die zu ladene Keymap (per default die, die das System auch beim booten laed) kann man unter /etc/mkinitramfs/hooks/CRYPTSETUP im header aendern. Irgendwelche Wahnsinnigen wollen bestimmt beim booten eine chinesische keymap benutzen um potentielle Angreifer zusaetzlich zu verwirren. Davon sei abgeraten. Der Standard ist bei Debian /etc/console/boottime.kmap.gz und funktioniert in der Regel.

UPDATE: 05.06.06:

Danke an IceBear, der mit mir in #debian-linux im euIRC das Problem fuer die Ubuntu User erleichtert hat! Ich habe das script so angepasst, dass man als “cryptivice” argument auch die major und minor des gewuenschten devices angeben kann. Dies wird dann automatisch erstellt und benutzt. Herausfinden kannst du diese Werte, indem du im laufenden System ein ls -l /dev/ machst… dort stehen dann die major und minor id durch Komma getrennt zwischen den Owner-Informationen und dem Modifikationsdatum. In meinem aktuellen Fall (/dev/sda1, major 8, minor 1) gebe ich also an: “cryptivice=8,1″. Die Zahlen sind bitte NUR durch ein Komma zu trennen.. keine Leerzeichen und keine Punkte etc bitte… Entschuldigt die lange Wartezeit

Danke fuers Zuhoeren und bitte fuer die Hilfe :)

Der Sternensucher.

* SWWFSP = Searched Web Without Finding a Similar Posting

[tags]Crypt, Crypto, root fs, cryptsetup, Debian, HowTo, dm-crypt, LUKS, mkinitramfs, initramfs, Hifn, Linux, loadkeys, keymap[/tags]

Tragbare Welt

Sunday, February 12th, 2006

Des Nerdes Freund ist sein Notebook, seine kleine informelle Trickkiste in der er, wann immer er will herumwuehlen kann und mit der er beeindruckende Kunststueckchen vollbringen kann, die, wenn sie auch fuer ein aussenstehenden Beobachter bisweilen an der definition einer “Verrueckten Spinnerei” nur haarscharf vorbeischrammen, ebenso beeindruckende Folgen haben koennen. Ich fuer meinen Teil durfte bis vor 2 Wochen mein iBook G4 als Trickkiste mit mir herumtragen und war damit auch sehr zufrieden - nicht zuletzt weil das Ding einfach knuffig ausschaute. Wie viele Kunststueckchen ich damit vollbracht habe bleibt ein Geheimnis, mit Sicherheit waren es nicht wenige ;).
Eines Tages kommt die Zeit fuer jeden dieser Begleiter an dem es irgendwo anfaengt zu klemmen, zu schrammen und zu klappern - DER Tag, an dem dieser Begleiter beginnt seinen Dienst nicht mehr mit so viel Freud-Verbreitung zu verrichten, wie anfangs, als er noch neu war. Meistens kommt dieser Tag erschreckend nah nach ablauf der Garantiezeit… und in jedem Fall viel weit entfernt von dem Tag, an dem man das Geld fuer einen neuen Begleiter zusammengespart haette. (Sei’n wir mal ehrlich, das ganze Geld landet eh immer wieder in so Spielereien wie Webcams und Modems ;) oder anderen Elementen aus $Spielerei[i] (i > 0)). In meinem Fall war das iBook ziemlich genau 1.75 Jahre alt. Im Mai waeren es 2 Jahre gewesen. Jetzt schon setzte das erste digital-Rheuma ein. Die On-Board Netzwerkloesung begann Sporadisch nicht mehr zu funktionieren… ein leises Klopfen auf den Gehaeuseteil in dem diese untergebracht war brachte in der ersten Zeit noch Linderung und das war ja eh nicht so schlimm… “Schliesslich hab ich noch AirPort”… AirPort ist ein wirklich wunderbar klingender Name fuer etwas, dass dem ambitionierten Nerd graue Haare regelrecht meterweise aus saemtlichen koerperteilen treibt, sobald dieser versucht sein liebstes Betriebssystem zu installieren. “Da gibts immernoch keine Treiber fuer das AirPort Extreme” war immer eine beliebte Antwort auf LUG-Treffen auf die Frage “Noch kein Linux drauf? Verraeter!”. Letzten endes hat sich inzwischen eine Gruppe dieses Problemes angenommen und einen inzwischen zumindest als Proof-of-Concept tauglichen Treiber zusammen-reverse-engineered, der die Stichhaltigkeit dieser Ausrede mehr und mehr schwinden laesst. AirPort Extreme rettete also meinen Tag mehrmals wenn das Stolperfallen-angebundene Netzwerkequiptment den Dienst verweigerte. Doch auch hier nagte der Zahn der Zeit. Das unverstellbare Grauen begann… Netzwerklosigkeit, Kommunikationsverlust. Der Halbtot eines Nerds tritt in dem Moment in dem die SSH-Sitzung zu seinem Lieblingsrechner alle 5 Minuten zusammenbricht. AirPort Extreme war Geschichte und zuletzt in einer Auflistung der PCI-Geraete gar nicht mehr vorhanden. “Naja… stecken wa halt mal ein USB Geraet dran…”. Diese Problemloesung half einige Tage. Im Wohnzimmer sitzend mit den Freunden in aller Welt den Abend verbringen, eine schoene Sache. Apple war immer fuer Ueberraschungen gut. Am 30. Januar als ich von der Firma nach hause kam ueberraschten sie mich mit einem Herrlichen Kurztheather. “Zwielicht” nannten Sie es, “Halbe Erblindung” nannte ich es. Fuer den interessierten Beobachter bzw. die interessierte Beobachterin stelle ich folgendes Bild in den Raum (Anmerkung: hier funktioniert AirPort gerade mal wieder durch spontanheilende Aura):

iBook im Halbschatten
iBook im Halbschatten

Ein irreparabler Ausfall der linken Hintergrundbeleuchtung fuehrte zu einem kurzen schockartigen Aufschrei, einem Augenreiben und dem blitzartigen Griff zur Digitalkamera (Dokumentationsfetischismus fuehrt dazu, dass man immer eine in Griffweite hat). Ich wollte es kaum glauben, wurde allerdings dazu gezwungen. Eigentlich wollte ich mir an diesem Abend noch eine Folge von “Ai Yori Aoshi” ansehen, doch die Idee schrieb ich bei dem Bild vorerst ab. Einige Minuten spaeter jedoch erreichte mich endlich die Erinnerung an den TV-Adapter fuer das iBook. “Mit dem waere das ja alles kein Problem… ich hol ihn schnell und die DVD mit dem DivX drauf…”… so weit so gut, nach Einrichtung und Verkabelung aller Einzelheiten des iBooks mit dem Fernsehgeraet fehlte nur noch das einlegen der DVD. Das typische Geraeusch beim Einlegen eines Datentraegers in das Slot-In Laufwerk des iBooks, dass eher auf Besorgnis erregende weise nach einem sich uebergebenden Hirsch klingt als nach dem erfolgreichen Einziehen eines optischen Datentraegers wurde eng gefolgt von einem ganz neuen Geraeusch. “Siiiup Siiiiiup - *tock* *tock*” klang es aus dem Laufwerk mehrere Male, danach warf es die DVD wieder aus. Gleichsam alle original CDs, DVD-ROM, DVD-R und alle -RW Medien, mit denen ich versuchte meinen Verdacht (auf einen weiteren Defekt am iBook) zu widerlegen. Das einzige was das Laufwerk noch lesen mochte waren CD-R und DVD+R. Hocherfreut ueber diese neue Erfahrung baute ich meine Verkabelung wieder ab und stellte das iBook in die Ecke. Fehlen taten nur noch die Worte “Schaem dich und komm erst wieder wenn du dir bewusst darueber bist was du getan hast.”. Da zu diesem Zeitpunkt aber auch Probleme mit der Soundkarte auftraten haette das Geraet diese wahrscheinlich eh gekonnt ueberhoert.
Einen Tag spaeter startete ich einen erneuten Versuch, meine boese Vorahnung eines drohenden Totalausfalles zu beseitigen. Die Argumente wogen schwer und meine Sorgen kreisten um die unausweichlich scheinende Feststellung, die jeder Besitzer eines Elektrogeraetes kennen wird: “Es ist kaputt.”. Ich trat ins Wohnzimmer, in die Ecke in die ich das iBook einen Abend zuvor mit Behutsamkeit abgesetzt hatte. Die Stand-By-Lampe pulsierte Beruhigend an dem Abend… und das tat sie jetzt nicht mehr. Ich dachte bei mir noch “Das sollte nicht sein, gestern war der Akku voll. Einen Tag sollte der schon noch Stand-By aushalten”. Ein sachter Druck auf die Status-Taste des Akkus gab Gewissheit: Irgendetwas stimmt nicht. Der Akku war voll… nur das Geraet war aus.
Es blieb auch aus… auch nach einem Druck auf die Power-Taste. Auch nach 2 und 3 und 4 Druck auf die Power Taste. Auch nach Reset der Power Management Unit… oder welchen namen dieses Design-Stueck auf der Obst-Platine auch immer tragen moege. Die Gewissheit schaffte sich Raum… Nach 2 Wochen kraenkelnder kleinteile bleibt das iBook nun fuer immer aus.Im Moment laufen die Vorbereitungen (insbesondere die Finanzierung betreffend) fuer die Bestellung eines IBM X60 (oder Lenovo… noch steht ja auch IBM drauf ;)). Ich hoffe damit habe ich mehr erfolg. Das folgende Bild zeigt eine Japanerin, die das Prachtstueck in die Kamera haelt. Freuen wir uns auf den neuen Begleiter und 4 Jahre Vor-Ort Service fuer solche Faelle.

Lenovo X60
Vertreterin mit dem Thinkpad X60

Der Sternensucher gruesst euch… Bis dann.

[tags]iBook G4, Apple, defekt, Notebook, Lenovo, X60, Produkt, AirPort[/tags]