Csepinszky András aka. Vakvarju
2004. augusztus
e-mail: csepi (at) spektrum-3d (dot) hu
1.) Az IBM RS/6000 7025 F50
Az IBM RS/6000 7025 F50 szerver egy nem túlságosan új, CHRP (Common Hardware Reference Platform) alapú PowerPC szerver, melyet 1997 és 2001 között gyártottak.
Számomra rendelkezésre álló gép az alábbi hardver konfigurációt tartalmazta: - CHRP architektúra (OpenFirmware)
- 332 MHz PowerPC 604e típusú processzor
- 256 kB L2 cache
- Max. 4 GB RAM (jelenleg 512 MB található benne egy memóriakártyán)
- Integrált NCR53c825 SCSI vezérlő
- integrált AMD PCI PCNet Lance ethernet kártya
- AMD PCI PCNet Lance ethernet kártya egy 32 bites PCI slotban
- NCR53c875 SCSI vezérlő egy 64 bites PCI slotban
- 32 x-es Plextor UW SCSI CDROM (integrált vezérlőn)
- 20/40 GB-os UW SCSI szalagos egység (integrált vezérlőn)
- 2.88 MB FDD
- 6 db IBM DDRS-34560W 4.5 GB-os UW SCSI HDD (53c875-ös vezérlőn)
- IBM InfoWindow II 3153 soros terminál
Első dolgom a firmware (microcode) update volt. Letöltöttem az IBM oldaláról a megfelelő állományokat és a doksit és végrehajtottam a benne foglaltakat.
Linux natív porttal rendelkezik a PowerPC processzorra, és az összes hivatalos kódot karbantartják a fő kernel ágban. A port nagyobb részét Gary Thomas végezte el. A portolás történetét itt lehet elolvasni. További információkat a Linux PowerPC processzoron történő futtatásáról a Linux/PPC honlapon találhatnak.
2.) A disztribúció kiválasztása
Azok a disztrók jöhettek szóba, melyek rendelkeznek PowerPC-s verzióval, vagy kifejezetten erre a hardverplatformra fejlesztették ki:
- Yellowdog Linux (3.0 – Sirius) (de problematikus)
- SuSE Linux Professional (PPC 7.3) (megoldható)
- Debian (Woody es Sarge) (nehezen de megoldhato)
- Gentoo 2004.0 (elvileg megoldható)
- RockLinux 2.0.0 (hasonló gépen készült a port)
Rengeteg olvasás után a disztrók körét leszűkítettem a Debian Sarge-ra és a SuSE 7.3-ra. További olvasás után rájöttem, hogy sem időm se energiám nincs a kernel cross-platform compiling-jára. (Binutils-t és GCC-t is kellett volna PPC-re fordítani előtte.)
Kényelmességem és disztróismeretem miatt tehát maradtam a SuSE-nál. Telepítettem már azt SPARC-ra (Sun SparcStation 2-re), Alpha-ra (Digital Personal Workstation 433-ra) és persze i386-ra. Ráadásul megkaptam a gyári telepítőkészletet Daxkobler Ákostól.
3.) Telepítés
Az első próbálkozásként követve az álmoskönyv utasításait megpróbáltam, hogy be tudok-e boot-olni a 2. számú CD-ről, mivel azon található a CHRP architektúrát támogató boot image.
Az RS/6000-esek nem rendelkeznek BIOS-szal. Ehelyett található bennük (legalábbis a CHRP gépekben) egy OpenFirmware-nek nevezett szoftver. Ezt a gép indulásakor az elülső LCD panelen található E1F1 üzenet megjelenésekor a soros konzolhoz csatlakoztatott billentyűzet 1-es gombjának megnyomásával tudjuk elérni. Erről bővebben itt
lehet tájékoztatást kapni.
A System Management Service Multiboot opciójában beállítottam az Install Source-t a CD-re. Felismeri, hogy SuSE 7.3 PPC CD található benne, elindítja a bootolási folyamatot, majd elszáll egy DEFAULT CATCH! üzenettel. A hiba okaként számos forrás a kernel túlságosan nagy méretét adja meg.
Második próbálkozásként az itt megadott módszert követtem. Megtaláltam a kérdéses állományokat egy nem frissített mirroron.
Miután a kernel image-t átmásoltam a DOS fomrázott lemezre (mcopy zImage.floppy-install.chrp a:zimage) és felírtam a ramdisk image-t egy másik lemezre (dd if=ramdisk.floppy-install.gz of=/dev/fd0) megpróbáltam elindítani a rendszert. Az OpenFirmware boot promptjába a következő parancsot adtam ki:
0>boot floppy:,zimage root=/dev/fd0 load_ramdisk=1 console=ttyS0,9600
Csodák csodájára a kernel kezdett betöltődni, de amikor megkaptam a felszólítást arra, hogy tegyem be az FDD-be a ramdisk image-t tartalmazó floppy-t, akkor azt nem volt hajlandó elfogadni, nem találta a compressed ramdisk image-t. @&"#!!!!
További dokumentum túrás után arra találtam halvány utalást, hogy esetleg a 2.4.22-ig kibocsátott kernelek hibásak az RS/6000 CHRP architektúrát tekintve a SuSE PPC 7.1 2.4.2-es kernel kivételével. Nosza letöltöttem őket, de a kernel pár byte híján már nem fért fel egy floppy lemezre. Nem baj, felvéstem CD-re, ramdisk image-t fel dd-ztem egy floppy-ra és az alábbiak szerint indítottam a telepítést:
0>boot cdrom:,zimage root=/dev/fd0 load_ramdisk=1 fake_initrd console=ttyS0,9600
Csodálatos látvány fogadott, a kernellel bebootolt a gép, kérte a ramdisk floppy-t, beolvasta, majd felpörgette a HDD-ket és indította a Yast-ot. Innen nagyon jól követhető volt Leigh Brown leírása.
A teljes install után persze nem voltak sem moduljaim sem működő hálózatom, mivel a telepítésnek nem volt része a 7.1-es SuSE kernel csomagja, melyet a bootoláshoz használtam. Nosza letöltöttem a kérdéses rpm-t (ftp://ftp.suse.com/pub/suse/ppc/kernel/2.4.2/k_chrp-2.4.2-12.ppc.rpm) és feltettem. Utánna 'ifconfig eth0 up' és 'ifconfig eth1 up' és már kész is volt.
Természetesen nem elégedtem meg ezzel a régi kernellel és Benjamin Herrenschmidt kicsinyke segedelmével fordítottam egy 2.4.27-es vanilla kernelt. Konfig itt.
A /usr/src/linux/arch/ppc/boot/images könyvtárban létrejövő zImage.chrp-rs6k kernel image-t rá dd-ztem az install során
létrehozott formázatlan PREP BOOT partícióra (dd if=zImage.chrp-rs6k of=/dev/sda1). Mivel a kernel konfigja során magadtam a bootoláshoz elengedhetelten paramétereket (root=/dev/sda3 console=ttyS0) ezért gyakorlatilag semmiféle egyéb tennivaló nem maradt.
Reboot.
A System Management Service-ben a bootolási sorrendet megadtam a Select Boot Devices menüpontban (ehhez hasonlatosan):
- SCSI 4512 MB Harddisk ID=8
- SCSI CDROM
- Diskette
- Ethernet
Ennyi az egész...
4.) Hasznos linkek
How To Install SuSE 7.3 PPC on an IBM 43P-260
Installing
GNU/Linux on the IBM RS/6000 43P model 7248 HOWTO
Linux on the RS/6000 7043-140
PPC: How to Install SuSE Linux 7.3 PPC on CHRP or PReP Machines
Philippe
Andersson's RS/6000 Page
Common Hardware Reference Platform Specification
Download microcode for pSeries servers and RS/6000
The IBM RS/6000 Model F50
7025-F50 IBM RS/6000 Server Model F50
RS/6000 7025 F50 Series
History
of Linux for the PowerPC
http://sunsite.mff.cuni.cz/MIRRORS/ftp.suse.com/pub/suse/ppc/kernel/BETA/deflt/
Debian network installation on IBM RS/6000 44P-170 (POWER3) - HOWTO
Netbooting IBM pSeries & RS/6000
5.) Köszönetnyilvánítás
Megköszönöm Daxkobler Ákos, George Karaolides, Jean Marc Le Fevre, Benjamin Herrenschmidt, Leigh Brown rs6kpreplinux-users levelező listájának tagjainak és a SuSE-PPC levelezőlista tagjainak és valamennyi dokumentum készítőjének segítségét, hogy sikerrel éleszthettem újjá ezt a csodálatos gépet. És persze Micskó Gábornak, hogy ez az egész megjelenhetett.
6.) Licensz
A dokumentum licensze GNU/GPL. Bárki szabadon felhasználhatja és módosíthatja a licensz előírásainak megfelelően.