Debian Etch auf einer Sun Ultra 1 Creator
Aus BraLUG-Wiki
MaD (Diskussion | Beiträge) (to be continued...) |
MaD (Diskussion | Beiträge) K (Typo - →Kernel-Update auf 2.6.15) |
||
(10 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt) | |||
Zeile 3: | Zeile 3: | ||
[[Kategorie:Debian]] | [[Kategorie:Debian]] | ||
− | + | [[Bild:SunUltra1_1.jpg|thumb|Sun Ultra 1 Creator]] | |
+ | [[Bild:SunUltra1_2.jpg|thumb|Rückansicht]] | ||
Da ich die Möglichkeit bekam, einmal ein Linux auf einer Ultra 1 zu installieren und dabei anfänglich über ein paar Hürden gestolpert bin, hier nun der Versuch einer Installationsanleitung. Dabei gehe ich jedoch davon aus, dass der geneigte Leser schon einmal Debian GNU/Linux auf einer Maschine installiert hat. | Da ich die Möglichkeit bekam, einmal ein Linux auf einer Ultra 1 zu installieren und dabei anfänglich über ein paar Hürden gestolpert bin, hier nun der Versuch einer Installationsanleitung. Dabei gehe ich jedoch davon aus, dass der geneigte Leser schon einmal Debian GNU/Linux auf einer Maschine installiert hat. | ||
Zeile 15: | Zeile 16: | ||
** Wide SCSI | ** Wide SCSI | ||
** Happy Meal 100Mbit Ethernet | ** Happy Meal 100Mbit Ethernet | ||
+ | ** 2 Festplatten, CD-ROM-Laufwerk, Floppy | ||
+ | ** Audio (inclusive Lautsprecher) integriert | ||
+ | ** Sun FFB/Creator UPA-Grafik | ||
==Installation== | ==Installation== | ||
+ | Aus unerfindlichen Gründen wird hier zuerst eine Installation von Debian 3.1 (Sarge) gemacht um anschließend ein Update auf Testing (Etch) durchzuführen. Beide Versionen haben jedoch einen 2.6er Kernel. | ||
+ | |||
===Booten aus dem Netz=== | ===Booten aus dem Netz=== | ||
− | Aus Ermangelung einer Sparc-Boot-CD und der vermeintlichen Einfachheit wegen wollte ich aus dem Netz booten. Wie ich später nachgelesen habe, geht das noch nicht mit DHCP, sondern benötigt etwas antikere Methoden: | + | Aus Ermangelung einer Sparc-Boot-CD und der vermeintlichen Einfachheit wegen wollte ich aus dem Netz booten. Dazu benötigt man natürlich noch einen zweiten Rechner im gleichen Netz. Dieser wird im Folgenden mit ''Host'' gekennzeichnet. |
+ | |||
+ | Wie ich später nachgelesen habe, geht das Booten noch nicht mit DHCP, sondern benötigt etwas antikere Methoden: | ||
+ | |||
====RARP==== | ====RARP==== | ||
+ | Als Erstes benötigt man einen Reverse-ARP-Dämonen. Folgende Schritte haben hier geholfen: | ||
+ | * ''Host'': <code># apt-get install rarpd</code> | ||
+ | * ''Host'': <code>/etc/ethers</code> anpassen, da gehören MAC der Sun sowie der zukünftige Hostname rein | ||
+ | * ''Host'': <code>/etc/hosts</code> anpassen, die IP-Adresse zum Hostnamen aufnehmen | ||
+ | * ''Host'': <code>rarpd</code> starten, hier im Vordergrund, gesprächig und mit speziellem Interface: <code># rarpd -dv eth1</code> | ||
+ | |||
====TFTP==== | ====TFTP==== | ||
− | [http://ftp.de.debian.org/debian/dists/sarge/main/installer-sparc/current/images/sparc64/netboot/2.6/boot.img boot.img] | + | Als Nächstes muss das Boot-Image bereitgestellt werden. Für diese Installation wurde [http://ftp.de.debian.org/debian/dists/sarge/main/installer-sparc/current/images/sparc64/netboot/2.6/boot.img dieses boot.img] verwendet. Wichtig ist hierbei, dass es sich um ein 64-bit-Image handelt, 32-bit-Versionen steigen kurz nach dem Booten mit einer Fehlermeldung aus. |
+ | * ''Host'': <code># apt-get install tftpd</code> | ||
+ | * ''Host'': <code>tftp</code> in <code>/etc/inetd.conf</code> aktivieren, Pfad für Images von <code>/boot</code> auf <code>/tftpboot</code> setzen (optional, evtl. muss andernfalls die nächsten Punkte angepasst werden) | ||
+ | * ''Host'': <code># /etc/init.d/inetd restart</code> | ||
+ | * ''Host'': <code>[http://ftp.de.debian.org/debian/dists/sarge/main/installer-sparc/current/images/sparc64/netboot/2.6/boot.img boot.img]</code> nach <code>/tftpboot</code> legen | ||
+ | * ''Host'': Boot-Image auf "verhexte" IP-Adresse verlinken: <code># cd /tftpboot; ln -s boot.img 0A0000FC</code> (0A0000FC steht dabei für 10.0.0.252) | ||
+ | |||
+ | ====Sun booten==== | ||
+ | Wenn die Sun versucht, von irgendwas zu booten (sofern es nicht schon Netz ist): | ||
+ | * <code>Stop + A</code> drücken | ||
+ | * <code>boot net</code> eingeben | ||
+ | |||
+ | Wenn Alles bis hierhin gut gegangen ist, müsste die Kiste jetzt versuchen, das Image per TFTP zu ziehen (dauert eine Weile...) und dann den Kernel zu booten. | ||
===Debian-Installer=== | ===Debian-Installer=== | ||
+ | Das Installationsprogramm startet jetzt ohne größere Probleme, macht jedoch bei der Anzeige ein paar Schwierigkeiten. So sind zum Teil Zeichen horizontal versetzt, sodass man u.a. bei der Eingabe der IP-Adresse aufpassen muss, welche Ziffer man denn nun schon mit der Backspace-Taste weggelöscht hat, da die angezeigten Texte nicht unbedingt dem entsprechen, was in dem Formularfeld aktuell drin steht. | ||
+ | |||
====Partitionierung==== | ====Partitionierung==== | ||
+ | Das erste richtige Problem ist bei der Partitionierung aufgetreten. Das Programm wollte auf einer Festplatte, die korrekt als 4,6 GB groß angezeigt wurde, keine Partitionen größer als 301,9 MB anlegen. Ebenso funktionierte die automatische Partitionierung nicht, was wahrscheinlich auf den selben Fehler zurückzuführen ist. | ||
+ | |||
+ | Zum Glück kann man bei Debian auch alles zu Fuß machen. Nach dem Umschalten auf die Konsole mit <code>Alt + F2</code> und Aktivierung dieser (<code>Enter</code>) ließ sich das Partitionierungsprogramm <code>parted</code> | ||
+ | an der Kommandozeile ausführen und die Festplatte korrekt partitionieren. | ||
+ | |||
===X-Server=== | ===X-Server=== | ||
====Maus und Tastatur==== | ====Maus und Tastatur==== | ||
+ | Dank des vereinheitlichten Eingabesystems des 2.6er Kernel gestaltet das Einbinden von Maus und Tastatur so einfach wie an einem PC. Für die Maus einfach <code>/dev/input/mice</code> als Gerät eintragen und gut. Ein riesengroßen Stolperstein, den es zu vermeiden gilt, stellt aber das Vorhandensein von Auswahlmöglichkeiten für Sun-Type-4- und -Type-5-Tastaturen dar. Diese sollte man mit einem aktuellen Kernel '''nicht''' auswählen, sondern ein Standard-PC105-Keyboard eintragen. | ||
+ | |||
====Grafik==== | ====Grafik==== | ||
+ | Die Creator hat ihrem eigentlichen Verwendungszweck als Grafik-Workstation entsprechend auch eine relativ gute Grafikkarte. Da es sich hier leider um keine Creator 3D handelt, für welche es wohl sogar einen [http://dri.freedesktop.org/ DRI]-Treiber gibt, kann nur der 2D-Teil getestet werden. | ||
+ | |||
+ | XFree86 sowie Xorg liefern für diesen Grafikkartentyp den <code>sunffb</code>-Treiber, welcher unter XFree86 4.3.99+e von Debian Sarge auch ohne Probleme funktioniert. 24 Bit Farbtiefe stellten bei der getesteten Auflösung von 1024x768 kein Problem dar. | ||
+ | |||
===Upgrade auf Debian Etch=== | ===Upgrade auf Debian Etch=== | ||
+ | Als nächstes stand ein Update auf Debian Testing auf dem Plan. Das sollte vorallem die Probleme mit der Soundausgabe lösen, da bis jetzt trotz geladenem Treiber und ausbleibender Fehlermeldung kein Ton zu hören war. Und ja, der Mixer war aufgedreht. | ||
+ | |||
+ | Also ans Werk: | ||
+ | * in der <code>/etc/apt/sources.list</code> aus <code>stable</code> jetzt <code>testing</code> machen | ||
+ | * <code># apt-get dist-upgrade</code> | ||
+ | * eine Weile warten | ||
+ | * evtl. kommt jetzt der folgend beschriebene Fehler | ||
+ | |||
+ | ====Fehler beim Installieren von <code>x11-common</code>==== | ||
+ | Beim Installieren (oder Ersetzen?) des <code>x11-common</code>-Pakets trat hier ein Fehler auf, der auch auf PCs schon gesichtet wurde. Problem ist, dass eine Datei sowohl im neuen <code>x11-common</code>-Paket als auch im ''alten'' <code>xfree86-common</code>-Paket vorhanden ist. | ||
+ | |||
+ | Die Lösung für dieses Problem sah bei mir wie folgt aus: | ||
+ | |||
+ | # cd /var/cache/apt/archives | ||
+ | # dpkg -i xfree86-common_6.9.0.dfsg.1-4_all.deb x11-common_6.9.0.dfsg.1-4_all.deb | ||
+ | # apt-get -f install | ||
+ | # apt-get dist-upgrade | ||
+ | |||
+ | ====X geht nicht==== | ||
+ | Nach dem Upgrade ist hier außerdem folgender Fehler beim Start von X aufgetaucht (nachzulesen in <code>/var/log/Xorg.0.log</code>): | ||
+ | |||
+ | <pre> | ||
+ | (II) LoadModule: "sunffb" | ||
+ | (II) Loading /usr/X11R6/lib/modules/drivers/sunffb_drv.so | ||
+ | dlopen: /usr/X11R6/lib/modules/drivers/sunffb_drv.so: undefined symbol: cfbCopyPlane8to1 | ||
+ | (EE) Failed to load /usr/X11R6/lib/modules/drivers/sunffb_drv.so | ||
+ | (II) UnloadModule: "sunffb" | ||
+ | (EE) Failed to load module "sunffb" (loader failed, 7) | ||
+ | </pre> | ||
+ | |||
+ | Dieses Problem lässt sich aber durch Einfügen von 2 Zeilen in die <code>Module</code>-Sektion der <code>/etc/X11/xorg.conf</code> beheben: | ||
+ | |||
+ | Load "cfb" | ||
+ | Load "cfb32" | ||
+ | |||
+ | ====Tastaturbelegung==== | ||
+ | Ein weiteres Etch-Problem ist, dass man nach einem Update von Sarge die Tastaturbelegung der Konsole neu einstellen muss. Dazu sollte man | ||
+ | # dpkg-reconfigure console-data | ||
+ | benutzen. Auch hierbei ist darauf zu achten, '''nicht''' das Type-5-Keyboard aus der Architektur-spezifischen Liste auszuwählen, sondern ein Standard-qwertz-Keyboard mit deutscher Sprache zu nehmen. Andernfalls ist es sehr vorteilhaft, noch per ssh auf die Maschine zugreifen zu können. | ||
+ | |||
+ | ====Kernel-Update auf 2.6.15==== | ||
+ | Natürlich soll es auch ein aktueller Kernel sein. Dafür kann man unter Debian Etch das Paket <code>linux-image-2.6.15-1-sparc64</code> installieren. Ein wichtiger Schritt, den man nicht vergessen sollte (hier natürlich geschehen), ist das Einbinden des SCSI-Host-Controller-Treibers in die Ramdisk. In die <code>/etc/mkinitramfs/modules</code> sollte man also das Modul <code>esp</code> hinzufügen. | ||
+ | |||
+ | # echo esp >> /etc/mkinitramfs/modules | ||
+ | # apt-get install linux-image-2.6.15-1-sparc64 | ||
+ | # reboot | ||
+ | |||
+ | Sollte man den Initrd-Teil vergessen haben und den Kernel schon installiert haben, kann man bestimmt auch nur die Initrd erzeugen. Da mir spontan dazu nichts eingefallen ist, habe ich das Kernel-Paket nochmals installiert: | ||
+ | |||
+ | # apt-get install --reinstall linux-image-2.6.15-1-sparc64 | ||
+ | |||
+ | ====Endlich Sound!==== | ||
+ | Nach dem Laden des passenden Treibers und der OSS-Kompatibilitätsmodule von ALSA gibt es jetzt recht guten Sound aus dem eingebauten Lautsprecher. | ||
+ | |||
+ | snd_sun_cs4231 | ||
+ | snd_pcm_oss | ||
+ | snd_mixer_oss | ||
+ | |||
+ | ---- | ||
+ | [[Benutzer:MaD|MaD]], 25. März 2006 |
Aktuelle Version vom 3. Mai 2006, 15:26 Uhr
Da ich die Möglichkeit bekam, einmal ein Linux auf einer Ultra 1 zu installieren und dabei anfänglich über ein paar Hürden gestolpert bin, hier nun der Versuch einer Installationsanleitung. Dabei gehe ich jedoch davon aus, dass der geneigte Leser schon einmal Debian GNU/Linux auf einer Maschine installiert hat.
Inhaltsverzeichnis |
[Bearbeiten] Die Hardware
- Sun Ultra 1 Creator
- 1 x 167 MHz UltraSparc I
- 256 MB RAM
- Wide SCSI
- Happy Meal 100Mbit Ethernet
- 2 Festplatten, CD-ROM-Laufwerk, Floppy
- Audio (inclusive Lautsprecher) integriert
- Sun FFB/Creator UPA-Grafik
[Bearbeiten] Installation
Aus unerfindlichen Gründen wird hier zuerst eine Installation von Debian 3.1 (Sarge) gemacht um anschließend ein Update auf Testing (Etch) durchzuführen. Beide Versionen haben jedoch einen 2.6er Kernel.
[Bearbeiten] Booten aus dem Netz
Aus Ermangelung einer Sparc-Boot-CD und der vermeintlichen Einfachheit wegen wollte ich aus dem Netz booten. Dazu benötigt man natürlich noch einen zweiten Rechner im gleichen Netz. Dieser wird im Folgenden mit Host gekennzeichnet.
Wie ich später nachgelesen habe, geht das Booten noch nicht mit DHCP, sondern benötigt etwas antikere Methoden:
[Bearbeiten] RARP
Als Erstes benötigt man einen Reverse-ARP-Dämonen. Folgende Schritte haben hier geholfen:
- Host:
# apt-get install rarpd
- Host:
/etc/ethers
anpassen, da gehören MAC der Sun sowie der zukünftige Hostname rein - Host:
/etc/hosts
anpassen, die IP-Adresse zum Hostnamen aufnehmen - Host:
rarpd
starten, hier im Vordergrund, gesprächig und mit speziellem Interface:# rarpd -dv eth1
[Bearbeiten] TFTP
Als Nächstes muss das Boot-Image bereitgestellt werden. Für diese Installation wurde dieses boot.img verwendet. Wichtig ist hierbei, dass es sich um ein 64-bit-Image handelt, 32-bit-Versionen steigen kurz nach dem Booten mit einer Fehlermeldung aus.
- Host:
# apt-get install tftpd
- Host:
tftp
in/etc/inetd.conf
aktivieren, Pfad für Images von/boot
auf/tftpboot
setzen (optional, evtl. muss andernfalls die nächsten Punkte angepasst werden) - Host:
# /etc/init.d/inetd restart
- Host:
boot.img
nach/tftpboot
legen - Host: Boot-Image auf "verhexte" IP-Adresse verlinken:
# cd /tftpboot; ln -s boot.img 0A0000FC
(0A0000FC steht dabei für 10.0.0.252)
[Bearbeiten] Sun booten
Wenn die Sun versucht, von irgendwas zu booten (sofern es nicht schon Netz ist):
-
Stop + A
drücken -
boot net
eingeben
Wenn Alles bis hierhin gut gegangen ist, müsste die Kiste jetzt versuchen, das Image per TFTP zu ziehen (dauert eine Weile...) und dann den Kernel zu booten.
[Bearbeiten] Debian-Installer
Das Installationsprogramm startet jetzt ohne größere Probleme, macht jedoch bei der Anzeige ein paar Schwierigkeiten. So sind zum Teil Zeichen horizontal versetzt, sodass man u.a. bei der Eingabe der IP-Adresse aufpassen muss, welche Ziffer man denn nun schon mit der Backspace-Taste weggelöscht hat, da die angezeigten Texte nicht unbedingt dem entsprechen, was in dem Formularfeld aktuell drin steht.
[Bearbeiten] Partitionierung
Das erste richtige Problem ist bei der Partitionierung aufgetreten. Das Programm wollte auf einer Festplatte, die korrekt als 4,6 GB groß angezeigt wurde, keine Partitionen größer als 301,9 MB anlegen. Ebenso funktionierte die automatische Partitionierung nicht, was wahrscheinlich auf den selben Fehler zurückzuführen ist.
Zum Glück kann man bei Debian auch alles zu Fuß machen. Nach dem Umschalten auf die Konsole mit Alt + F2
und Aktivierung dieser (Enter
) ließ sich das Partitionierungsprogramm parted
an der Kommandozeile ausführen und die Festplatte korrekt partitionieren.
[Bearbeiten] X-Server
[Bearbeiten] Maus und Tastatur
Dank des vereinheitlichten Eingabesystems des 2.6er Kernel gestaltet das Einbinden von Maus und Tastatur so einfach wie an einem PC. Für die Maus einfach /dev/input/mice
als Gerät eintragen und gut. Ein riesengroßen Stolperstein, den es zu vermeiden gilt, stellt aber das Vorhandensein von Auswahlmöglichkeiten für Sun-Type-4- und -Type-5-Tastaturen dar. Diese sollte man mit einem aktuellen Kernel nicht auswählen, sondern ein Standard-PC105-Keyboard eintragen.
[Bearbeiten] Grafik
Die Creator hat ihrem eigentlichen Verwendungszweck als Grafik-Workstation entsprechend auch eine relativ gute Grafikkarte. Da es sich hier leider um keine Creator 3D handelt, für welche es wohl sogar einen DRI-Treiber gibt, kann nur der 2D-Teil getestet werden.
XFree86 sowie Xorg liefern für diesen Grafikkartentyp den sunffb
-Treiber, welcher unter XFree86 4.3.99+e von Debian Sarge auch ohne Probleme funktioniert. 24 Bit Farbtiefe stellten bei der getesteten Auflösung von 1024x768 kein Problem dar.
[Bearbeiten] Upgrade auf Debian Etch
Als nächstes stand ein Update auf Debian Testing auf dem Plan. Das sollte vorallem die Probleme mit der Soundausgabe lösen, da bis jetzt trotz geladenem Treiber und ausbleibender Fehlermeldung kein Ton zu hören war. Und ja, der Mixer war aufgedreht.
Also ans Werk:
- in der
/etc/apt/sources.list
ausstable
jetzttesting
machen -
# apt-get dist-upgrade
- eine Weile warten
- evtl. kommt jetzt der folgend beschriebene Fehler
[Bearbeiten] Fehler beim Installieren von x11-common
Beim Installieren (oder Ersetzen?) des x11-common
-Pakets trat hier ein Fehler auf, der auch auf PCs schon gesichtet wurde. Problem ist, dass eine Datei sowohl im neuen x11-common
-Paket als auch im alten xfree86-common
-Paket vorhanden ist.
Die Lösung für dieses Problem sah bei mir wie folgt aus:
# cd /var/cache/apt/archives # dpkg -i xfree86-common_6.9.0.dfsg.1-4_all.deb x11-common_6.9.0.dfsg.1-4_all.deb # apt-get -f install # apt-get dist-upgrade
[Bearbeiten] X geht nicht
Nach dem Upgrade ist hier außerdem folgender Fehler beim Start von X aufgetaucht (nachzulesen in /var/log/Xorg.0.log
):
(II) LoadModule: "sunffb" (II) Loading /usr/X11R6/lib/modules/drivers/sunffb_drv.so dlopen: /usr/X11R6/lib/modules/drivers/sunffb_drv.so: undefined symbol: cfbCopyPlane8to1 (EE) Failed to load /usr/X11R6/lib/modules/drivers/sunffb_drv.so (II) UnloadModule: "sunffb" (EE) Failed to load module "sunffb" (loader failed, 7)
Dieses Problem lässt sich aber durch Einfügen von 2 Zeilen in die Module
-Sektion der /etc/X11/xorg.conf
beheben:
Load "cfb" Load "cfb32"
[Bearbeiten] Tastaturbelegung
Ein weiteres Etch-Problem ist, dass man nach einem Update von Sarge die Tastaturbelegung der Konsole neu einstellen muss. Dazu sollte man
# dpkg-reconfigure console-data
benutzen. Auch hierbei ist darauf zu achten, nicht das Type-5-Keyboard aus der Architektur-spezifischen Liste auszuwählen, sondern ein Standard-qwertz-Keyboard mit deutscher Sprache zu nehmen. Andernfalls ist es sehr vorteilhaft, noch per ssh auf die Maschine zugreifen zu können.
[Bearbeiten] Kernel-Update auf 2.6.15
Natürlich soll es auch ein aktueller Kernel sein. Dafür kann man unter Debian Etch das Paket linux-image-2.6.15-1-sparc64
installieren. Ein wichtiger Schritt, den man nicht vergessen sollte (hier natürlich geschehen), ist das Einbinden des SCSI-Host-Controller-Treibers in die Ramdisk. In die /etc/mkinitramfs/modules
sollte man also das Modul esp
hinzufügen.
# echo esp >> /etc/mkinitramfs/modules # apt-get install linux-image-2.6.15-1-sparc64 # reboot
Sollte man den Initrd-Teil vergessen haben und den Kernel schon installiert haben, kann man bestimmt auch nur die Initrd erzeugen. Da mir spontan dazu nichts eingefallen ist, habe ich das Kernel-Paket nochmals installiert:
# apt-get install --reinstall linux-image-2.6.15-1-sparc64
[Bearbeiten] Endlich Sound!
Nach dem Laden des passenden Treibers und der OSS-Kompatibilitätsmodule von ALSA gibt es jetzt recht guten Sound aus dem eingebauten Lautsprecher.
snd_sun_cs4231 snd_pcm_oss snd_mixer_oss
MaD, 25. März 2006