Sun Disklabel auf Platten über 32GB

Dieser Beitrag stammt aus meinem alten Blog und wurde nachträglich übertragen. Etwaige Links auf alte Blogeinträge wurden angepasst.

Ich wollte das Gentoo Linux auf meiner Sun Ultra 5 endlich mal neu installieren, und zwar diesmal komplett auf die 40GB-IBM-Platte statt der mitgelieferten 10GB-Hitachi, die furchtbar laut ist.

Das Problem: Statt einer vom IBM-PC bekannten DOS-Partitionstabelle ist ein Sun-Disklabel nötig, damit das BIOS der SPARC den Bootloader findet und läd. Nicht ganz trivial, denn ich konnte es nicht richtig anlegen.

Das Problem ist, dass in dem Disklabel Informationen (Sektoren, Köpfe, Spuren usw.) stehen. Die automatische Erkennung des Linux-fdisk ist unfähig, gab mir eine 80MB (Megabyte, jawoll!) große Platte. Na dann Prost Mahlzeit. Grlücklicherweise hab ich in der Ausbildung ja Leute, die mit Suns arbeiten. Dort konnte ich eine Solaris-8-CD abstauben, um damit die Platte zu partitionieren.

Wie ich mittlerweile weiß, müßig: es gab ein Problem, dass bei IDE nur 32GB-Platten unterstützt wurden. Durch einen Überlauf war für Solaris meine Platte also nur knapp 8GB groß. Ich habe eine CD von Juni 2000, ab Oktober 2000 war das gefixt. Allerdings brachte mich Jan auf die Idee, ob parted nicht Sun-Disklabels könnte.

In der Tat, das kann es. Ich baute die Platte in meinen Hauptrechner, schrieb ein neues Disklabel, und voila, große Platte für Linux auf SPARC. Einziges Problem: ich hätte direkt Partitionen anlegen sollen, ich konnte nur die 3. Partition – bei Sun Disklabels immer „die ganze Platte“ – ansprechen, weil fdisk jetzt dasselbe Problem wie das alte Solaris 8 hat und nur auf den ersten etwa 8GB Partitionen anlegen will. Aber das lässt sich später noch fixen, erstmal installiere ich jetzt.

Also, wer ein Problem hat, dass eine Platte ein Sun-Disklabel braucht, parted ist die Lösung.

Kommentare aus

Dieser Beitrag stammt aus meinem alten Blog und wurde nachträglich übertragen. Etwaige Links auf alte Blogeinträge wurden angepasst. (Im Nachhinein erinnert das irgendwie ziemlich an xkcd, sonst würde ich es nicht übertragen …)

Die Löschkandidaten der Wikipedia zu lesen, fördert manchmal gute Dinge zutage. So auch heute. Wer hat nicht schonmal über Verkehrsampeln geschimpft?

Aus dem Artikel „Ampeln beschimpfen“:

Dieses Bild steht unter der Lizenz „Namensnennung-Weitergabe unter gleichen Bedingungen 2.0 Deutschland“ und stammt vom Wikipedia-Benutzer Chef.

Kommentare aus

Gentoo: mplayer als DVD-Encoding-Zwischenstufe

Dieser Beitrag stammt aus meinem alten Blog und wurde nachträglich übertragen. Etwaige Links auf alte Blogeinträge wurden angepasst.

Wer unter Linux DVDs erstellen will, der wird das kennen: unzählige Howtos, die man vielleicht nichtmal so schwer findet, die dann aber nicht das tun, was man will. Das ist zum Teil auch so ein Howto, aber ich denke, es beleuchtet einen Aspekt, der einiges einfacher macht.

Meine Versuche fanden unter Gentoo Linux sowohl auf einem Athlon XP als auch auf meinem Notebook mit Athlon 64 statt, auf dem auch eine amd64-Version läuft. Die Ergebnisse sollten sich also auch auf andere Architekturen als x86 anwenden lassen.

Bevor ich zu meinem gefundenen Kniff komme, will ich doch noch zumindest den Anschein erwecken, ein allgemeines HowTo zu schreiben.

Allgemeine Videokonvertierungen leistet an der Konsole mencoder, der zum mplayer gehört. Für die Freunde von VirtualDub, die sich etwas ähnliches auch in der Linux-Welt wünschen, ist Avidemux gut geeignet.

Was ich hier nicht erwähne: Wer den Ton separat verwerten will, kann ihn zum Beispiel auch mit mplayer extrahieren („-oa pcm“) die die Wave-Datei mit lame o.ä. encoden. Oder mit ffmpeg, wenn es AC3 sein soll. Für die finale Zusammenstellung ist dvdstyler mittlerweile mit ruhigem Gewissen zu empfehlen. Hier kann man manuell Menüs bauen und MPEG2-Dateien als Datentracks einfügen, und daraus dann ein ISO-Image bauen, mit dem man eine DVD brennen kann.

Ich hatte eigentlich garkein Problem, aber ich wollte es wissen: ich habe eine TV-Serie in HDTV (1280×720) auf der Platte liegen, in XviD kodiert. Ich wollte mal eine DVD zum Testen machen, die aus dieser hohen Qualität gefertigt ist. Das Problem: es handelt sich um einen Anime, bei dem die Untertitel als separate Datei dabei sind. Nur mplayer ließ sich bewegen, diese Untertitel abzuspielen.

mpeg2enc, der MPEG-Encoder, benötigt rohe Bilddaten im YUV-Format. Die kann mplayer auch liefern, allerdings nur in eine Datei. Es ging um eine 30minütige Episode; meine Hochrechnung für den Platzbedarf ging stark in Richtung 100GB. Nicht gut. Ein Pipe, ja, ein Pipe das wäre schön gewesen.

Und so hab ich mich auf meinen Hosenboden gesetzt und mir endlich mal „named pipes“ angesehen. Die Bezeichnung hatte ich irgendwo aufgeschnappt. Es geht einfach darum, dass man, statt Befehle mit | zu verketten, auch ein „named pipe“ verwenden kann. Dies legt man mit mkpipe dateiname an und kann dann ein Programm starten, dass mit > dateiname aufgerufen wird, und eins mit < dateiname, und voila, übergeben die sich die Daten über dieses „named pipe“.

Also legte ich ein „named pipe“ namens stream.yuv an, so nennt mplayer die Datei, fest verdrahtet…

# mkpipe stream.yuv

Dann startete ich mplayer:

# mplayer eingabe.avi -nosound -benchmark -vo yuv4mpeg weitere Optionen

(-nosound schaltet die Soundausgabe ab, -benchmark schaltet auf maximale Decodiergeschwindigkeit.)

In einer anderen Konsole konnte ich jetzt die Codierung starten. Dabei musste ich eine Vorskalierung dazwischenschalten (yuvscaler von dem mjpegtools), um auf DVD-Format zu kommen, und schließlich in mpeg2enc hinein:

# cat stream.yuv | yuvscaler -n n -o DVD | mpeg2enc -o ausgabe.m2v -f 8 -b 3800 -n n -a 3

(-n n steht hier für NTSC – so war meine Quelle, und so sollte auch die DVD werden –, -f 8 für den Codiermodus (DVD, vorbereitet zur Weiterverarbeitung mit dvdstyler), -b 3800 für die Bitrate und -a 3 für das 16:9 Format.)

Ich halte diese Methode für die simpelste, die Möglich ist. Auch wenn mich ich mplayer nur benutzen wollte, weil es ein spezifisches Problem gab, ist das sehr praktisch. mplayer kann so gut wie alles abspielen, also kann man so aus vielen Formaten – auch Containern wie OGG oder Matroska (MKV) – die Quellendaten für MPEG2-Komprimierung bekommen.

Kommentare aus

athcool hält den Athlon kühl

Dieser Beitrag stammt aus meinem alten Blog und wurde nachträglich übertragen. Etwaige Links auf alte Blogeinträge wurden angepasst.

Ich habe gelernt, dass es sich immer lohnt, auf Linux-Rechnern mit Athlon-CPUs athcool laufen zu lassen. Bisher hatte ich Temperaturen von dauerhaft über 50 °C am Prozessor. Nachdem ich eigentlich nach einem Programm suchen wollte, um den Takt runterzusetzen (OK. das kann ein Athlon XP nicht wirklich, aber es gibt einen langsameren und weniger Hitze erzeugenden Modus, den ich nutzen wollte).

Unter Gentoo recht einfach – emerge athcool zum kompilieren/installieren, und dann mit rc-update add athcool boot das beiliegende init-Skript automatisch beim Systemstart starten. Achtung: zuerst ein manuelles athcool on machen und sehen, ob alles noch OK läuft. VIA Boards haben angeblich gerne Probleme mit dem Ton, und schlimmeres kann angeblich auch passieren.

Dafür ist das Ergebnis sehenswert – 34 °C in Ruhe sind eine ganze Ecke besser!

Kommentare aus

Tastaturen mit Spezialtasten nutzen

Dieser Beitrag stammt aus meinem alten Blog und wurde nachträglich übertragen. Etwaige Links auf alte Blogeinträge wurden angepasst.

Meine neue Tastatur hat, wie das besonders bei kabellosen gerne so ist, auch einige Spezialtasten. Diese wollte ich gerne unter Linux nutzen, und nachdem das tolle Programm (lineak), welches das eigentlich können sollte, nicht funktioniert hat und wenn ich das nicht falsch verstanden habe eh nur unter X funktionieren kann, hab ich mich gestern über andere Möglichkeiten informiert.

Dazu zählt, ganz einfach die Scancodes, die diese Tasten wie die normalen auch produzieren, entweder in spezielle Anweisungen (auf die nächste Konsole wechseln z.B.) oder in andere Tastendrücke (oder auch ganze Folgen von Tastendrücken) umzuwandeln. Das klappt dann allerdings nur auf der Konsole.

Alle folgenden Schritte sollte man als root und möglichst auch and der Konsole durchführen, nicht unter X.

Zunächst braucht man die Scancodes. Dafür ruft man showkey -s auf. Das zeigt direkt die Scancodes aller Tastendrücke an. Dabei gibt es (meist) jeweils einen Code, der beim Drücken ausgelöst wird (und auch beim Halten der Taste, immer wieder wiederholt wird) und einen Code beim Loslassen. Interessieren dürfte meist nur der zum Drücken, auch wenn es vielleicht Fälle gibt, wo man beides benutzen kann. Die Ausgabe zeigt z.B. 0xe0 0x30 an, wenn man eine Taste drückt. Der Scancode ist dann e030. (Nicht wie ich in Panik geraten, dass man showkey nicht wieder beendet bekommt – einfach 10 Sekunden warten. Das steht auch da, wenn man das Programm startet, aber man überliest es schnell…)

(Edit: Ich habe ein seltsames Phänomen gefunden – zwei der Spezialtasten („Favoriten“ und „E-Mail“) haben bei meiner Tastatur dieselben Scancodes wie die linke bzw. rechte Windows-Taste. Wie die je unterschieden werden sollen, ist mir ein Rätsel. Schickt der da noch mehr mit, das showkey nicht sehen kann? Oder kann die Tastatur gar umprogrammiert werden? Die Tastatur hat auch eine Taste, um F1 bis F12 für andere Funktionen zu nutzen – dann bekomme ich garkeinen Scancode von diesen Tasten. Ob das irgendwie zusammenhängt?)

Mit dumpkeys | less zeigt man sich nun die Liste der Zuweisungen an. In meinem Fall waren die Keycodes 120-127 unbenutzt, was mir genau die 8 Positionen gibt, die ich brauche. Je nach Konfiguration können auch sehr viel mehr verfügbar sein.

Jetzt muss man einem freien Keycodes einen der Scancodes zuweisen, die man vorher besorgt hat. In meinem Fall für die „Volume +“ Taste ist das
setkeycodes 121 e030

Die folgenden Anweisungen schreibt man am besten in eine Datei. Als erstes ein Beispiel, wo dem gerade definierten Keycode ein String zugeordnet wird (ich benutze oft mplayer, wo „0“ die Lautstärke erhöht):

string F121 = "0"
keycode 121 = F121

Hier ein Beispiel für eine andere Möglichkeit – damit kann man durch die Konsolen „blättern“:

keycode 121 = Decr_Console

Das muß man dann noch mit loadkeys < Datei auführen, und Voila, hat man die Tasten einer (hoffentlich) sinnvollen Verwendung zugeführt.

Mehr informationen findet man natürlich in den Manpages der einzelnen Programme, oder in der Ausgabe von dumpkeys – man findet genug Beispiele für alle Möglichkeiten, wie z.B. Boot (das, was Standardmäßig Strg-Alt-Entf zugeordnet ist). Und wenn es alles funktioniert, kann man die nötigen Aufrufe z.B. in der /etc/init.d/boot.local fest einbauen.

Kommentare aus

Emulation: DOS-Emulator dosbox

Dieser Beitrag stammt aus meinem alten Blog und wurde nachträglich übertragen. Etwaige Links auf alte Blogeinträge wurden angepasst.

Eigentlich war ich auf der Suche nach einem C64-Emulator für meinen kleinen neuen LInuxrechner, der mit Framebuffer funktioniert, damit ich C64-Spiele in alter TV-Optik spielen kann. Gefunden habe ich dosbox.

Dieser DOS-Emulator hat es in sich. In Vergleich zum alten dosemu und zu bochs funktioniert das richtig. EMS, Maus, Sound Blaster-Emulation, und sogar VESA BIOS Emulation – alles drin. Ich konnte auf Anhieb so ziemlich jedes alte Spiel, das ich noch habe spielen – TIE Fighter, X-Wing, Ascendancy, SimCity 2000, Transport Tycoon, 4D Sports Driving, Test Drive II, alles läuft.

Sogar Dune 2, was, soweit ich mich erinnere, nie lief, und selbst unter den DOS-Lösungen, die ich nochmal aufgesetzt habe, gerne Probleme machte. Ob es damit zusammenhängt, dass auf der dosbox-Homepage ein Bild des Harkonnen-Mentat aus dem Spiel zu sehen ist? Schon seltsam, ich habe nämlich beim testen ein Harkonnen-Savegame geladen, und genau diesen Knilch gesehen. Zufälle gibts… Aber ich schweife ab.

Aus ein paar bösen Screenshots auf der Homepage kann man ebenfalls sehen, dass ganz offensichtlich Windows 3.x darunter läuft. Ich habe das jetzt nicht genauer überprüft, das kommt später. Vielleicht kann man ja die alten Windows-3.1-Disketten nochmal sinnvoll einsetzen?

Zugegeben, es gibt Probleme – die Grafik ist einfach viel zu langsam (für Tie Fighter zum Beispiel), so dass dann der Sound auch nicht mehr durchgängig geht. Überhaupt muß man mit STRG-F11 und STRG-F12 hantieren, um ein Mittelmaß zwischen Emulations-Geschwindigkeit und Resourcen für Soundmischen, Grafik zeichnen etc. braucht. Aber ganz besonders die VESA-Unterstützung, die ich bisher noch von keinem Emulator kannte, ist wirklich gut.

Das ganze gibt es auch für Windows. Obwohl ja mit VDMSound zumindest für Sound, Joystick und ein paar Dinge eine Lösung für WIndows 2000/XP gibt, um auch ältere Spiele laufen zu lassen, ist das noch eine Ecke besser, auch wenn es langsamer ist. Das, was mit VDMSound nicht laufen will, läuft vielleicht mit dosbox.

Leider bin ich auch auf meiner Kiste im Augenblich noch auf X angewiesen, weil SDL nicht will (beschwert sich über fehlende Maus). Ansonstan würde das auch auf dem Framebuffer laufen. Aber das ist eh nicht so das Problem – die Fernseh-Aufösung reicht eh gerade für die 320×200 Auflösungen, alles darüber ist vertane Zeit.

Kommentare aus

TV-Out mit NVIDIA-Karten

Dieser Beitrag stammt aus meinem alten Blog und wurde nachträglich übertragen. Etwaige Links auf alte Blogeinträge wurden angepasst.

Ich habe auf EBay einen Rechner erstanden, einen Shuttle SK41G mit Athlon XP 1900+, 512 MB RAM, Slot-In DVD-Laufwerk, einer WLAN-Karte und – neben der Onboard-Grafik – eine Grafikkarte mit NVIDIA GeForce 2 TI Chipsatz.

Über meine Abenteuer mit der WLAN-Karte hat Jan berichtet. Jetzt hab ich also eine andere. Die andere große Sache war es, den Rechner zu einem kleinen Multimedia-Player zu machen.

Da er nicht meinen alten Rechner ablösen soll, hab ich keinen Bildschirm frei, also dachte ich mir, ab an den Fernseher. Ist eh praktischer, denn mit dem aktuellen NVIDIA XServer klappt das nie, sowohl TV als auch Monitor fürs Bild zu benutzen. Das Problem war dann überhaupt: ein X ist zu kompliziert. Das nervt nur, wenn man damit einfach nur ein Video sehen will, man braucht (wenn man es wirklich benutzen will) eine Maus. Da lobe ich mir doch den Framebuffer, der für sowas X ja wirklich überflüssig macht.

Das erste Problem: NVIDIA-Karten stehen per Default auf NTSC-Ausgabe. Sprich: mein Fernseher zeigt erstmal nur schwarz/weiß, und selbst das ist nicht gerade bildschirmfüllend. Nach einigem Suchen hatte ich dann nvtv gefunden, ein Programm, mit dem man – auch vom Framebuffer aus – die TV-Ausgabe einstellen kann. Bei 800×600 und entsprechender Schriftart (suse12x22.psfu.gz) kann ich das hier sogar lesen. Auf dem großen Fernseher im Wohnzimmer hab ichs noch nicht probiert.

Bezeichnenderweise nehme ich aber nicht PAL als Ausgabeformat. Da schneidet er mir entweder Teile vom Bild ab (obwohl da auf dem Bildschirm noch Platz wäre), oder lässt endlos schwarze Ränder, je nachdem, welche „Scale“ ich nehme. Also nehme ich PAL-60. Lustig, dass der Fernseher das kann. Ich bekomme, wie unter NTSC, einen seltsamen weißen Strich am oberen Bildrand, aber schöne Farben. Und ich glaube fast, es flimmert weniger als PAL(-50). Das kann aber auch nur ein psychologischer Effekt sein.

Dann kam das Problem, dass das xine, das SuSE mitliefert, nicht auf Framebuffer anzeigen kann. Also musste ich ein halbes Dutzend „-devel“ Pakete installieren und einiges selbst compilieren, bevor ich dann mit fbxine endlich auch Framebuffer-Ausgabe hatte.

fbxine erlaubt leider keine Steuerung der Menüs und Ausgabekanäle bei DVDs, vlc hat irgendwie den DivX/XviD/MPEG4-Support nicht mit drin, und ich komme zum DVD-Spielen noch nicht ganz damit klar. Ich werd mal mplayer auch noch ansehen, aber ansonsten scheint es nur eine Frage der Zeit zu sein, bis meine Multimedia-Maschine wirklich funktioniert…

Kommentare aus

nächste Einträge »