pa-risc

One size does not fit all.
- Frank Zappa

17.5.2026
Statt Platten bzw. CD's/DVD's: SCSI Target Mode !SCSI
 
Neulich ist mir ein SCSI CD-ROM Laufwerk in einer schon betagten HP9000 kaputt gegangen. Alterung, mechanischer Verschleiss, so ist es eben. Aber es ist offenbar nicht mehr so ganz leicht, Ersatz zu finden. In diesem ganzen Generve, eine "neues" CD Laufwerk zu bekommen, blitzte mir dann doch eine Idee durch: gab es da nicht soetwas wie den SCSI Target Mode unter FreeBSD ? Schlau gemacht, und ja, gibt es.
 
Damit ist es möglich, einen FreeBSD Rechner quasi als Platte (und/oder CD-ROM) an einen SCSI Bus zu hängen , so das andere Bus-Teilnehmer diese virtuelle Platte (= ein Image im FreeBSD Datei-System) benutzen können. Das geht auch mit einem CD Image (= ein Image im FreeBSD Datei-System), so dass mensch nicht mehr mit CD's jonglieren muss und ein "echtes" CD Laufwerk ist auch nicht nötig.
 
Wermutstropfen: das geht nur mit einem Adaptec SCSI Adapter, der sich in den Target Mode schalten lässt. Bei mir funktioniert ein 29160 (LVD 16Bit) während ein 29160N (LVD 8Bit) nicht funktioniert!
 
Der Adapter, der funktioniert, meldet sich mit:
 
ahc0: <Adaptec 29160 Ultra160 SCSI adapter> port 0xec00-0xecff mem 0xfdbff000-0xfdbfffff irq 16 at device 0.0 on pci2
aic7892: Ultra160 Wide Channel A, SCSI Id=5, 32/253 SCBs
im dmesg output bzw bei pciconf -l mit:
 
ahc0@pci0:2:0:0:    class="0x010000" rev=0x02 hdr=0x00 vendor=0x9005 device=0x0080 subvendor=0x9005 subdevice=0xe2a0
Auf der HP9000 Seite sieht der PDC / BCH Output nach einem "SEA" dann so aus:
 
                                                                           IODC
   Path#  Device Path (dec)  Device Path (mnem)  Device Type               Rev
   -----  -----------------  ------------------  -----------               ----
   P0     0/0/0/0            lan.172.31.142.4   LAN Module                2
   P1     0/0/1/0.5          extscsia.5          Random access media       1
   P2     0/0/1/0.5.1        extscsia.5.1        Random access media       1
   P3     0/6/2/0.12                             Random access media       1
   P4     0/6/2/0.10                             Random access media       1
wobei 0/0/1/0.5 bzw. extscsia.5 das CD Laufwerk im FreeBSD ist und 0/0/1/0.5.1 bzw. extscsia.5.1 die Festplatte im FreeBSD ist. Dort sieht das so aus:
 
root@target:~ # camcontrol devlist
<HP DVD-ROM 305 1.01>              at scbus0 target 3 lun 0 (pass0,cd0)
<SAMSUNG SSD 830 Series CXM03B1Q>  at scbus1 target 0 lun 0 (pass1,ada0)
<HP CDRom 0001>                    at scbus3 target 0 lun 0 (cd1,pass2)
<HP 50GDisk 0001>                  at scbus3 target 0 lun 1 (da0,pass3)
root@target:~ #
... die beiden tauchen da als scbus3 target 0 lun 0 (cd1,pass2) und scbus3 target 0 lun 1 (da0,pass3) auf und werden dort auf diese beiden Images gemapt:
 
ll scsit/
total 346252
drwxr-xr-x  2 root wheel         512 May 16 16:30 .
drwxr-x---  6 root wheel         512 May 16 16:55 ..
-rw-r--r--  1 hm   wheel   354291712 May 16 16:27 debian-13.0.0-hppa-NETINST-1.iso
-rw-r--r--  1 root wheel 53687091200 May 16 16:16 debian_13_root_disk.img
-rwxr--r--  1 root wheel         493 May 16 16:30 scsit.sh

Konfiguration FreeBSD:
 
 
# SCSI Controllers
device          ahc                     # AHA2940 and onboard AIC7xxx devices
options AHC_TMODE_ENABLE=0x1 # enable target mode for first unit

# ATA/SCSI peripherals
device          scbus                   # SCSI bus (required for ATA/SCSI)
device          ch                      # SCSI media changers
device          da                      # Direct Access (disks)
device          sa                      # Sequential Access (tape etc)
device          cd                      # CD
device          pass                    # Passthrough device (direct ATA/SCSI access)
device          ses                     # Enclosure Services (SES and SAF-TE)
device          ctl                     # CAM Target Layer
device          targ            # SCSI Target Mode Code
device          targbh          # SCSI Target Mode Blackhole Device
2) die freigegebenen SCSI devices werden unter der SCSI Adresse des Adaptec Controllers auf dem Bus zur Verfügung gestellt. Dis (Bus-) Controller haben entweder üblicherweise die Adresse 7 bzw die Adresse 15, deshalb benötigt der (Adaptec-) Controller im Target Mode Rechner eine andere Adresse, sonst hat mensch ggf. zwei Controller auf gleichen Adressen.
 
Deshalb ändert man tunlichst die Adresse des Controllers - das geht (nur) im BIOS beim Systemstart per Control-A im Adaptec SCSI BIOS.
 
3) Die beiden Rechner per SCSI Kabel verbinden und den FreeBSD Rechner starten.
 
Dann ein Disk Image erstellen, hier mit 50GByte:
 
truncate -s +50G debian_13_root_disk.img
Hiermit:
 
CDIMAGE="debian-13.0.0-hppa-NETINST-1.iso"
DISKIMAGE="debian_13_root_disk.img"
ctladm create -b block -t 5 -o file=$CDIMAGE -o vendor="HP" -o product="CDRom"
ctladm create -b block -o file=$DISKIMAGE -o vendor="HP" -o product="50GDisk"
ctladm port -o on
startet man den ganzen Kram: es wird ein SCSI Block device type 5 (CDROM) erstellt und das leere Plattenimage mit 50G Platz. Mit der letzten Zeile wird das ganze auf dem Bus bereitgestellt.
 
An dieser Stelle die HP9000 einschalten und im PDC per SEA nach Bootdevices suchen. Fertig. Zum Test ist es dann möglich von der CD auf 0/0/1/0.5 den Debian Installer zu booten und das Debian dann auf der 50G Platte auf 0/0/1/0.5.1 zu installieren.
 
Folgende Seiten waren hilfreich:
 
 

14.5.2026
HP-UX 11.11 - Spiegel aufsetzen für die root Platte mit Mirror Disk UXmirror disk ux
 
Nach einer Neuinstallation mit anschliessendem Durchpatchen mit diversen QPK's und HWE's musste noch die root Platte gespiegelt werden, man weiss ja nie bei so alter Hardware.
 
Ausgangssituation ist dies hier:
 
# ll /dev/rdsk
total 0
crw-r-----   1 bin        sys        188 0x01f000 May 11 16:17 c1t15d0
crw-r-----   1 bin        sys        188 0x025000 May 11 10:55 c2t5d0
crw-r-----   1 bin        sys        188 0x03f000 May 11 10:55 c3t15d0

c1t15d0 ist die physische (root-) Platte, die hat eine vg00 und drei lvol's: stand, root und swap. c2t5d0 ist das CD-ROM Laufwerk und c3t15d0 ist die noch leere zukünftige Spiegelplatte.

# pvcreate -B /dev/rdsk/c3t15d0
Physical volume "/dev/rdsk/c3t15d0" has been successfully created.

Ein physiclal volume wird auf der leeren Platte erstellt, wichtig ist "-B" um den Platz für Booter und LIF Header und so zu reservieren, damit man von der Platte booten kann, sollte die erste Platte mal defekt sein.

# vgextend /dev/vg00 /dev/dsk/c3t15d0
Volume group "/dev/vg00" has been successfully extended.
Volume Group configuration for /dev/vg00 has been saved in /etc/lvmconf/vg00.conf

Die so vor-behandelte Platte wird jetzt der Volume Group vg00 hinzugefügt, so das jetzt zwei Platten in der vg00 sind.

# mkboot /dev/rdsk/c3t15d0

Alle für's booten notwendigen Daten werden per mkboot in den oben mit pvcreate erstellten Bootbereich auf der Spiegelplatte kopiert, die Platte ist jetzt bootfähig.

# lvextend -m 1 /dev/vg00/lvol1 /dev/dsk/c3t15d0
The newly allocated mirrors are now being synchronized. This operation will
take some time. Please wait ....
Logical volume "/dev/vg00/lvol1" has been successfully extended.
Volume Group configuration for /dev/vg00 has been saved in /etc/lvmconf/vg00.conf

# lvextend -m 1 /dev/vg00/lvol2 /dev/dsk/c3t15d0
The newly allocated mirrors are now being synchronized. This operation will
take some time. Please wait ....
Logical volume "/dev/vg00/lvol2" has been successfully extended.
Volume Group configuration for /dev/vg00 has been saved in /etc/lvmconf/vg00.conf

# lvextend -m 1 /dev/vg00/lvol3 /dev/dsk/c3t15d0
The newly allocated mirrors are now being synchronized. This operation will
take some time. Please wait ....
Logical volume "/dev/vg00/lvol3" has been successfully extended.
Volume Group configuration for /dev/vg00 has been saved in /etc/lvmconf/vg00.conf

Anschliessend werden die drei logical volumes lvol1, lvol2 und lvol3 auf die neue Spiegelplatte synchronisiert. Je nach Grösse kann das sehr, sehr lange dauern.

# lvlnboot -v
Boot Definitions for Volume Group /dev/vg00:
Physical Volumes belonging in Root Volume Group:
    /dev/dsk/c1t15d0 (0/0/1/1.15.0) -- Boot Disk
    /dev/dsk/c3t15d0 (0/0/2/1.15.0) -- Boot Disk
Boot: lvol1    on:     /dev/dsk/c1t15d0
            /dev/dsk/c3t15d0
Root: lvol3    on:     /dev/dsk/c1t15d0
            /dev/dsk/c3t15d0
Swap: lvol2    on:     /dev/dsk/c1t15d0
            /dev/dsk/c3t15d0
Dump: lvol2    on:     /dev/dsk/c1t15d0, 0
Wenn das durch ist, kann man mit lvlnboot kontrollieren, ob alles so ist, wie man sich das vorgestellt hat :-)
 

12.5.2026
Debian 13 auf PA-RISC Hardwaredebian
 
Ein kleines Häufchen Unverzagter arbeitet daran, den Debian Port auf PA-RISC aktuell zu halten und Installationsmedien bereit zu stellen. Seit einigen Jahren versuche ich immer wieder, das auf eine meiner Maschinen zu installieren - bisher hatte ich den EIndruck, das ich das Debian auf die Hardware "prügeln" musste, es lief nicht so ganz rund bisher.
 
Seit Debian 13 "trixie" hat sich das geändert, auf meiner rp2470 konnte ich das ohne grössere Verrenkungen installieren und anschliessend auch per "apt" problemlos upgraden, im Moment läuft hier ein:
 
root@rp2470:~# uname -a
Linux rp2470 7.0.4+deb14-parisc64 #1 SMP Debian 7.0.4-1 (2026-05-07) parisc64 GNU/Linux
root@rp2470:~#
Der einzige Showstopper bei der Installation ist in einem etwas älteren README beschrieben:
 
- The first "install system" step will fail. Just go back to the menu and
  choose "Configure the package manager". The select "Install base system".
Bis jetzt  bin ich sehr zufrieden, alles läuft, keine Abstürze, fühlt sich wie ein "normales" Debian an.
 
Danke sehr!
 
Die "offiziellen" ISO Images sind auf
 
oder auch auf
 
zu finden, in meinem Fall habe ich das ISO Image zur Installation hier gefunden: 
 
 
Dann gibt es noch:
 
Die offizielle Debian Seite zum HPPA Port             https://www.debian.org/ports/hppa/
Linux on PA-RISC documentation                          https://parisc.docs.kernel.org/en/latest/