Debian Etch auf einer Sun Ultra 1 Creator

Aus BraLUG-Wiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Grafik)
K (Typo - Kernel-Update auf 2.6.15)
 
(6 dazwischenliegende Versionen von einem Benutzer werden nicht angezeigt)
Zeile 5: Zeile 5:
 
[[Bild:SunUltra1_1.jpg|thumb|Sun Ultra 1 Creator]]
 
[[Bild:SunUltra1_1.jpg|thumb|Sun Ultra 1 Creator]]
 
[[Bild:SunUltra1_2.jpg|thumb|Rückansicht]]
 
[[Bild:SunUltra1_2.jpg|thumb|Rückansicht]]
 
''Work in Progress''
 
  
 
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 40: Zeile 38:
 
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.
 
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># apt-get install tftpd</code>
* ''Host'': <code>tftp</code> in <code>/etc/inetd.conf</code> aktivieren
+
* ''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># /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)
 
* ''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)
  
Zeile 70: Zeile 69:
  
 
===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

Sun Ultra 1 Creator
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.

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 aus stable jetzt testing 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

'Persönliche Werkzeuge