Markus Wernig UNIX/Network Security Engineer CCSA, CCSE CISSP PGP key transition note GPG Key (in use after Aug. 9 2013) old GPG Key (in use up to Aug. 9 2013) |
|
||
Linux on a Palmax PD1100 PenbookWarning! This document is about installing Linux (Gentoo) on my
oldest, weakest and most awkward machine, a Palmax PD1100 Penbook. This is
a computer that runs on a Cyrix MediaGX(tm) main processor, that at the same
time acts as sound and video processor (hence the word "Media" in the name).
It sports an amazing 266 MHz frequency (509.95 bogomips), 16 KB cache size,
and 64(!) MB of RAM plus a 6 GB harddisk - more than you need for a
decent Linux installation! The main reason this baby is still being kindled (besides its amazingly small dimensions) is this: it has got a touchscreen, and it's supported under Linux! It seems that at one point in history Alan Cox had one of those and being the man he is, he wrote up the touch screen support. It was first released as a separate kernel patch, then somehow made it into the main kernel tree. Then he added drivers for XFree86, of which I hoped, they were implemented in X.org, which I use under Gentoo. See this site for a collection of his drivers for the Palmax. This is what it looks like:
Yes, it's about half the width of a regular keyboard, and even less in depth when measured without the underlying docking station. We used it as an FTP server during one of our install parties. (The blue screen obviously is the BSOD screensaver;-) The Palmax came with a preinstalled Windows 98, which didn't last through the first day of posession, though. The box saw its first Linux installation (SuSE 6.something) the same day, and with the above patches all features (pen as button, lid buttons) worked. Things became less reliable, but still worked through a series of updates up to SuSE 8.2. Then along came Novell, and I decided it's time to change aspects. That's why I took to install Gentoo on all my machines, the Palmax being the least used and therefore last one. This site documents the steps, findings and failures on that journey. The Gentoo installation CD booted, but the framebuffer settings in that
boot kernel do not expect a resolution of 640x480, or what the Cyrix
graphics system made of it, which seemed more like 320x240 (actually, only
a quarter of the bootsplash screen was visible). So the kernel needs to be
told not to use the Framebuffer (and some other features, which I found
out try after try). The boot line that finally got me to the installation
prompt was: nofb noapic noacpi noapm dopcmcia After that, the installation (copying over the core files) went as usual
(very diligently described in the Gentoo Installation Handbook. Up to the point where you need
an internet connection for downloading portage. The pcmcia subsystem had
initialized (telling from the two beeps at startup), but the system just
refused to send DHCP requests over the network card, an ancient 3COM 589 chipset. I had to manually I then set my local GENTOO_MIRRORS and the following compiler directives
in CFLAGS="-O2 -mcpu=i586 -march=i586 -fomit-frame-pointer -pipe" CHOST="i386-pc-linux-gnu" The Cyrix is a i586 compatible, but the Gentoo Handbook warns against changing CHOST unless using stage 1 builds. I had used stage 3, just copying and untarring the files. The After some fiddling (no framebuffer!) this brought me to the login prompt. Final configuration was performed according to the Gentoo Handbook. This was about 2 days after I had started. Then it was time to decide on the graphic user interface. X.org was given (good night, XFree86, it was good while it lasted ...), and being somewhat spoiled by eye-candy, I went for KDE as a window/display manager. I knew this was going to take some time - even my 2.2GHz "real" workstation chews up half a day on compiling all the necessary components. So, calculating the PD1100's computing power to be about ene tenth of that, I expected the initial compile (X.org, KDE and all required libs and stuff) to be around 5 (five) days. As usual, I started out with io timeout after 180 seconds - exiting rsync error: timeout in data send/receive (code 30) at io.c(109) [...] rsync: connection unexpectedly closed (2587288 bytes read so far) rsync error: error in rsync protocol data stream (code 12) at io.c(189) See
Gentoo forums for details. In short, I had to raise RSYNC_TIMEOUT to 500
in emerge --Duv kde I added some more swap space. dd if=/dev/zero of=/var/moreswap.file bs=1024k count=256 mkswap /var/moreswap.file swapon /var/moreswap.file Then mini src # date Mon Mar 14 21:38:19 CET 2005 mini src # ps auxfw [...] root 12309 0.2 0.0 17584 24 ? S Mar08 23:26 /usr/bin/python -O /usr/bin/emerge -Duv kde root 4334 0.0 0.0 1444 32 ? S 14:30 0:00 \_ [kdewebdev-3.3.2] sandbox /usr/lib/portage/bin/ebuild.sh compile root 4335 0.0 0.0 3084 36 ? S 14:30 0:05 \_ /bin/bash /usr/lib/portage/bin/ebuild.sh compile root 11346 0.0 0.0 1828 36 ? S 14:42 0:00 \_ /bin/bash /usr/lib/portage/bin/emake root 11347 0.0 0.0 1908 44 ? S 14:42 0:00 \_ make -j2 root 11349 0.0 0.0 1908 44 ? S 14:42 0:00 \_ make all-recursive root 11350 0.0 0.0 1804 36 ? S 14:42 0:00 \_ /bin/sh -c set fnord $MAKEFLAGS; amf=$2; dot_seen=no; target=`echo all-recursive root 28619 0.0 0.0 1804 36 ? S 17:04 0:00 \_ /bin/sh -c set fnord $MAKEFLAGS; amf=$2; dot_seen=no; target=`echo all-recur root 28620 0.0 0.0 1888 44 ? S 17:04 0:00 \_ make all root 28621 0.0 0.0 1804 36 ? S 17:04 0:00 \_ /bin/sh -c set fnord $MAKEFLAGS; amf=$2; dot_seen=no; target=`echo a root 4426 0.0 0.0 1804 36 ? S 18:08 0:00 \_ /bin/sh -c set fnord $MAKEFLAGS; amf=$2; dot_seen=no; target=`ec root 4427 0.0 0.0 2072 44 ? S 18:08 0:00 \_ make all root 4428 0.0 0.0 1804 36 ? S 18:08 0:00 \_ /bin/sh -c set fnord $MAKEFLAGS; amf=$2; dot_seen=no; ta root 4797 0.0 0.1 2156 80 ? S 18:12 0:02 \_ make all-am root 5184 0.0 0.0 1656 32 ? S 20:47 0:00 \_ /usr/i386-pc-linux-gnu/gcc-bin/3.3.5/i386-pc-linux root 5185 14.0 34.0 47456 19840 ? D 20:47 6:21 | \_ /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5/cc1pl root 5186 0.0 0.0 2804 56 ? S 20:47 0:01 | \_ /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5/../.. root 5257 0.0 0.1 1656 108 ? S 21:27 0:00 \_ /usr/i386-pc-linux-gnu/gcc-bin/3.3.5/i386-pc-linux root 5258 47.4 45.3 31380 26424 ? D 21:28 2:26 \_ /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5/cc1pl root 5259 0.0 0.1 2276 108 ? S 21:28 0:00 \_ /usr/lib/gcc-lib/i386-pc-linux-gnu/3.3.5/../.. mini src # vmstat 1 procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 1 1 81160 1500 108 5200 3 25 29 34 26 56 77 12 1 9 1 1 81160 1436 108 5272 312 0 384 0 1054 61 86 4 0 10 0 2 81216 1604 108 5152 624 140 700 140 1086 131 48 8 0 43 0 3 81280 1664 108 5076 744 148 780 148 1095 184 13 9 0 78 1 2 81280 1456 108 4792 748 0 748 0 1101 151 13 7 0 80 1 2 81380 1572 108 4400 500 384 500 384 1116 144 53 14 0 33 1 1 81384 1524 108 4360 324 40 324 40 1070 104 94 6 0 0 1 1 81428 1640 80 4008 736 180 736 180 1115 174 86 14 0 0 I will continue this page as installation proceeds ... March, 15: Started frentic disc activity, build process slowed down even more. The machine was swapping like mad ... Killed a March, 17: Still compiling ... (22 packages left) |