Menu
Home
|
|
Hardware And Software Notes
Currently running debian wheezy on a 8 core x86 processor in a mixed 32/64 bit environment w/ 8 gigs ram (scroll way down).
This is about the 16th set of hardware for this server.
HISTORICAL NOTES:
This is my Tenth build of a versatile server on the Linux
PowerPC platform. This machine serves multiple mailing
lists, multiple web servers, a news server, mail to news
gateway, an ftp server, multiple radio routing interfaces,
nameserver and more. It has over 600 routes in the routing
table and has 7 active interfaces (4 tcp/ip radio
interfaces, one ampr tunneling interface, a internet
interface (connected to a cisco 678) and an internal
network interface (connected to a 100mb switch).
Original
Hardware:
Mac 7200 (First Generation PCI PowerMac). Includes built in
video (4 megs vram), ethernet, 16 bit sound, scsi, dual
8530 serial ports, keyboard and mouse ports. Processor is
an IBM PowerPC 601 at 90 mhz.
I have
equipped this with 104 megs ram, 4 gig HD, 8 port Comtrol
Rocketport PCI serial board, 1 RealTek (ne2k-pci) 10 mb
ethernet card, 1 Tulip (21143) 100 mb ethernet card, a 2 gb
SCSI DAT drive, a 12x cdrom and an external Yamaha 4416s
CDRW drive. My favorite mouse, an OLD Logitech c7 serial
mouse (connected to the Rocketport) rounds out the
hardware.
Hardware
Update September 2000:
I'm now using a Mac 7500 that I got for a good deal.
Ram is currently 96 megs and the rest of the machine
configuration is the same as was the 7200. I got the 7500
because it can easily take a newer processor (G3/G4) unlike
the 7200. Also, I was hoping that the 7500 would solve
the built in ethernet problem (however the 7500 didn't help
the ethernet problem).
Hardware
Update January 2001:
The 7500 is
now running with a XLR8 Carrier Zif and a G3 ZIF at 250
mhz. It's much snappier than the 100 mhz 601. Also upgraded
the ram to 192 megs. Still have
the 7200, I'm using it as a test box.
Hardware
Update August 2001: This is
probably a jinx but it appears the the 2.4.9 kernel I just
compiled kills the mace ethernet problem. Really cool IF
it's true. I've got the main system back on the 7200 for
now so I can play with OSX on the 7500/G3. The 7200 is
working pretty good except that I lost my webcam (no video
inputs). I just ordered a Philips ToUcam (USB) webcam. It
can do 60 frames/sec at 640x480. I am hoping that my usb
card that replaces the now unnecessary ethernet card will
allow me to do the webcam as well as get more serial ports.
Then I can get rid of the multiport card and use a 2940 for
better scsi performance.
Hardware
Update November 2002: Currently on
a SuperMac S900 (6 slots, came in handy). The 7500 went to
work, needed a Mac there... The S900 has 320 megs of ram
and a G3 400 upgrade card. I'm using the original iMac USB
keyboard and a usb contour Unimouse. The HD is a 9 gig IBM
scsi. It's on a separate NCR ultrawide scsi card. The
Rocketport is still taking care of serial port needs. Still
have the 2 gig DAT drive and the external yamaha 4416s cd
burner. The video is a generic Mach64 card which unforch
isn't supported in XFree 4.2.0 so I'm using the xpmac
driver from 3.3.6. I've got a tulip card for the internal
network and a pci-ne2k for the external network. A simple
opti usb 1.1 card rounds out the card stock. I JUST got
mac-on-linux working on this setup so I can use my MacOS9
in another window. Looks like it's time for a bit more
ram... I got a Mac 9500 cheap that I'm using for OSX. MOL
boots OSX now too, wheee. This means I may get back down to
one machine again....Yeah... The 7200 was put to good use,
it's running one of the local ampr-internet gateways with
debian 3.0.
Hardware
Update November 2004:
Still on the S900. Moved to 30 gig ATA drive with Apple bootable
ide controller. Running Debian Sarge and a Ati Orion Mach 128 card
which now works with DRI, Wheee... Updated the DSL to 1.5/1.0 MB speed.
The built-in Mace ethernet is now working reliably enough for
using as the external ethernet interface. Added a generic firewire
card and have a external Pioneer 108d DVD burner which works good.
Extra external stuff I have working with linux on PPC include a Pontis
SP600 MP3 player (works nicely as a generic mass storage device), a Creative
Jukebox (USB mp3 player 6g HD), PJB-100 (USB mp3 player 6g HD, like the
iPod but it came out a year before iPod existed),
Imation RIPGO! mini-cdr (8cm) mp3/wma recorder/player. It did need the
following hack appended to /usr/src/linux/drivers/usb/storage/unusual_devs.h
UNUSUAL_DEV( 0x0c07, 0x0001, 0x0000, 0x9999,
"IMATION",
"RIPGO!",
US_SC_SCSI, US_PR_BULK, NULL, US_FL_MODE_XLATE ), recompile
usb-storage which you should be using as a module anyway and it
works as a CDR drive. You can burn mp3 and wma files to it as well
as m3u playlists (with no leading paths). Finally, a
Clie Palm device using jpilot. Just got the clie working with PPP to
the linux box too. Way cool... Finally, I was able to convert the old
linuxppc Q4 CD which boots on old-world Macs to a bootcd that
can be used to bring up the system in case of a messup on the HD as well
as boot to a ramdisk to enable me to do extensive file system checks.
As a side benefit, since I can boot from the CD I don't really need any
Apple compatible controllers, ide or scsi, to boot the system. Can
just use any PC junk. Looks like this opens up the possibility of
using a generic PC ide or scsi raid controller.
Hardware
Update December 2005:
Still on the S900 (512 megs ram) but made some changes to increase reliability. First was to put a jumper
across the pad marked j38 just above the CPU to disable the onboard cache (many G3
cards have problems with both onboard cache and onboard memory). After that failed
to make the system completely stable, I decided to disable the onboard 16 megs of
70 ns memory. This is MUCH more difficult and should only be attempted by someone very
used to working with small tools and surface mount chips. What I did was to cut pin 29 (-OE)
on each of the 8 TMS418160 2 megabyte ram chips with a VERY small cutter half way
down the pin so I could gently lift the part of the pin remaining on the chip up and then
soldered all 8 pin 29's together and then to one VCC pin 21. What this does is to put a high
signal on all of the -OE (output enable) pins thereby disabling the ram. Worked like a
charm. YMMV. Also, updated the drive to 80 gigs IDE. Am using a 1 gen ipod regularly
on it now with gtkpod .99.2. Works great! Also, have my full music library on a
PJB-100 mp3 player (expanded the driver to 20 gigs) which works great with a kernel patch
and a command line utility from the PJB SDK. (Yahoo groups, pjb100-mp3). Got a Fossil
palm watch roughly equivalent to the CLIE T-415 that I'm now using with j-pilot in place
of the CLIE for better portability.
Hardware
Update September 2006:
Switched to a 9600 (512 megs ram). Needed all 6 slots to work and there is a problem with the S900 in kernels later than 2.6.15 dealing with the interrupts (the S900 ties the interrupts of the last 3 slots together with a dec 21052 PCI chip, note this was fixed in 2.6.21 or so with my assistance). I put all of the S900 cards into the 9600. The only problems with the 9600 is that I had to disable the MB cache and there isn't a lot of room for a heatsink on top of the G3 card. I'm going to try a PC AGP card heatsink/fan on it. The MB cache should be disabled as usual when using a G3 update card. The way to do it on the 9600 is to remove a surface mount zero ohm resistor R31. Check this page for instructions. Local copy here
Hardware
Update March 2008:
Got a G4/1ghz sonnet processor card. The G4 cards present many more difficulties in the process of getting them to work properly than did any of the G3 cards I owned.
First, Linux offers no way to enable the L3 cache on the G4 card. It assumes that it's been enabled in open firmware and since L2CR vanished from /proc in 2.6.16.something you can't get at that directly any more either. To overcome this, I added a kernel parameter to set the l3cr on boot. A patch is here. It works on 2.6.20 or so and above. My boot command line now includes this l2cr=0x8000000 l3cr=0x9f020300. Unless you are using this exact card your parameters will probably be different.
Second, I had a devil of a time with stability on the 9600. The onboard L2 has been disabled for a while so that was not the problem. The system would simply freeze for no reason. It also ONLY worked with the onboard mesh scsi or a Adaptec 2940 card. The 66 mhz IDE card I got from OWC caused corrupted data when used with the G4. I tried dropping the base (bus) freq of the G4 card by replacing it's xtal can (50 mhz) with a 42 mhz one but that was no help. As a side note, this often helps with G3 cards on the old-world Macs, dropping the bus speed to 46 mhz or so and pumping up the multiplier can result in a much more stable machine. Sonnet advised that the G4 cards were much more picky about your PCI cards. Since I have so many PCI cards installed, I want through an exhaustive process of replacing them with other cards to try and find some stability. I never did get the 9600 working properly (except for when it had only a video card and a scsi card in it). Reluctantly I went back the S900 chassis (I was reluctant since the S900 ties all 4 bottom slot IRQS together whereas the 9600 has separate IRQS for all of the slots).
Third, the S900 was picky too! I think I might have just achieved stability in my current setup. The G4 card back up to 48mhz/960mhz (probably would be OK at 50/1000 but I'm not taking any chances). Also, I tried hard to avoid ganged interrupts on the bottom 4 slots. The machine didn't lock up but occasionally it would hang for a while (presumably stuck in some IRQ loop) and then recover. This was with 2 tulip cards, one for internal ethernet and one for external on the same IRQ in the bottom 4 slots.
Fourth, Open Firmware in old world macs doesn't work well with more than one PCI card with firmware on them, ESPECIALLY with the G4 processor card. I couldn't use my Radeon 7000 with the G4 card no matter what I did, it wouldn't initialize.
What I've got running now: PCI cards top to bottom, ATTO scsi express PSC (flashed from apple firmware to ATTO firmware or it wouldn't work), USB2 card, open slot, intel pro100+ ethernet, Rocketport PCI, Rage 128. I'm using the internal MACE ethernet for connection to a DSL modem and the internal 8530 serial port for monitoring the APC UPS with APCUPSD. A Microsoft Natural Keyboard Elite and a Logitech Trackman Wheel to save me from carpal tunnel (works great).
Hardware
Update November 2008:
My patch for L3CR made it to the mainline kernel with credit! Wheee, my 3rd kernel contribution!
Still using the S900. Finally figured out that the ganged interrupts in the lower 4 slots are not reliable.
They crash the kernel when the interrupts are generated faster than, say a USB 1 card. The only cards I have
in the bottom 4 slots now are ones that don't generate interrupts. (the rocketport card is polled, I'm not using
interrupts on the Rage 128 card and the other 2 slots are open). This forced me to use a usb2->ethernet dongle
to get the second ethernet port without using one of the bad slots. BTW, this seems related to the G4
somehow, the G3 was rock stable with the cards in the lower slot and it doesn't matter how low I drop
the base clock speed of the G4 card, stuff that generates lots of interrupts in the lower slots simply crash the machine.
What I've got running now: PCI cards top to bottom, Promise Ultra 100 20268 IDE card) which has no Mac firmware and as
such is NOT bootable), USB 2.0 5 port card (with asix 100mb usb 2.0 ethernet dongle amongst the other USB stuff),
open slot, open slot, Rocketport PCI, Rage 128. An Adesso natural keyboard and logitech trackman wheel round out the input devices.
I boot from a small scsi drive attached to the internal mesh scsi controller switching to root on a 185g
ide drive on the PC controller then spin down the unused boot drive with scsi-spin.
lspci
00:0b.0 Host bridge: Apple Computer Inc. Bandit PowerPC host bridge (rev 03)
00:0d.0 Mass storage controller: Promise Technology, Inc. PDC20268 (Ultra100 TX2) (rev 02)
00:0e.0 USB Controller: NEC Corporation USB (rev 43)
00:0e.1 USB Controller: NEC Corporation USB (rev 43)
00:0e.2 USB Controller: NEC Corporation USB 2.0 (rev 04)
00:0f.0 PCI bridge: Digital Equipment Corporation DECchip 21052 (rev 01)
00:10.0 Class ff00: Apple Computer Inc. Grand Central I/O (rev 02)
01:02.0 Communication controller: Comtrol Corporation RocketPort 8 port w/external I/F (rev 02)
01:03.0 VGA compatible controller: ATI Technologies Inc Rage 128 RE/SG
/proc/interrupts
CPU0
16: PMAC-PIC Edge PowerMac Zilog
17: PMAC-PIC Edge PowerMac Zilog
18: PMAC-PIC Edge 53C94
20: PMAC-PIC Edge MACE
21: PMAC-PIC Edge MACE-txdma
23: PMAC-PIC Level pata_pdc2027x
24: PMAC-PIC Level ohci_hcd:usb1, ohci_hcd:usb2, ehci_hcd:usb3
26: PMAC-PIC Edge MACE-rxdma
27: PMAC-PIC Edge PMac
28: PMAC-PIC Edge PMac Output
29: PMAC-PIC Edge PMac Input
30: PMAC-PIC Edge SWIM3
32: PMAC-PIC Edge ADB
33: PMAC-PIC Edge MESH
BAD: 0
Hardware
Update February 2014:
I am now running on Intel hardware. Specifically an 8 core i7 Ivy Bridge MB. It is running at 4 ghz and has 16 GB of ram. The storage is a 500GB ssd and some raided spinners for bulk storage along with a removable external spinner for a second level of backup. Can never be too safe! The ram is nice since I'm running a bunch of Virtual Machines under debian linux (as usual). Still have the rocketport card as well as a Natural keyboard and Logitech Trackman Wheel.
Software:
Qmail, Apache, Innd, AX25 tools and utils, djbdns,
fbb, mailman, ezmlm, Mozilla, firefox, thunderbird, netatalk, RealPlayer 10, AbiWord, xmcd,
the XOrg X11 server (with working DRI support), XEphem, gaim, XFCE, Azureus, opera, gtkpod, jpilot, grip, xmcd, xcdroast, mplayer, xine, pyTivo, ffmpeg (the G4 helped a LOT with pyTivo and ffmpeg)
MOL and a host of others. Java 1.6 from the IBM web site for the P series IBM linux boxes
works great on my S900. Current OS is Debian Etch (4.0 ppc) and
current kernel version is the 2.6.23.15 version patched for the PJB-100 mp3
player and setting the L3CR. 2.6.x WAS broken on PPC in the
AX.25 drivers but I fixed it (and got the fix committed). Gave up on bind (after using it,
porting it and fixing it for about 7 years). It's really
too buggy. Hopefully djbdns will work out better (so far, very good).
I run under the
XFCE 4.3.99 desktop now (oscillation.de). I really wanted the virtual screens and XFCE4 is
lightweight enough. This is a change from using the Motif Window Manager
(mwm) from OpenMotif.
Historical Machine Notes
Ins and outs of the 7200:
The 7200 in an interesting machine. They can be had pretty
cheap on the used market. My pros and cons. Pros:
Great Case! Small, stable, quiet, lots of stuff built
in. Cons: Weird PCI bus (perhaps), slow scsi
controller (async only), lack of drivers (more about that
later). The PPC 601 is only at 90 mhz so it is a little
slow but it's a pretty decent chip so it can do the current
job.
Getting the
Rocketport 8 PCI driver to work was a real trip. It is a
necessary component because of the need to handle the radio
networks. Fortunately we now have a PowerPC port of the
driver thanks to the author Ted Ts'o, Ichiro Hieda
(the first person to get it to work on a PPC), Paul
Mackerras (troubleshooting) and a little work by myself
testing and narrowing down the problem
areas.
The internal
(Mace) ethernet seems unreliable due supposedly to the 10bt
interface. Using a AAUI external converter is rumored to
fix the problem, we'll see. Update: AAUI converter
does NOT fix this problem. Testing shows the Mace is
dropping packets (90% failure) on input.
While the
intel pro100 works on other PCI PowerMac, it does not on
the 7200. It is perhaps a bus mastering problem, THOUGH the
adaptec 2940uw (also known as a powerdomain) works
and I do not see how it could if it did not bus
master.
Using an
ASUS PCI 200 (ncr53c8xx) scsi controller resulted in a 50%
speedup for the drives though it can't be used as a boot HD
controller. The 2940 was even faster and has been used
successfully by others as a boot controller.
I recently
installed LinuxPPC 2000 Q4 edition (Halloween) on the 7200
and it even boots with yaboot even though that is not
supposed to work on old world macs. Very
interesting! Figured this out, it uses miboot!
The 7200 is currently running the
MN amprnet gateway at Augsburg college, it's running kernel 2.6.14.
Ins and
Outs of the 7500:
The 7500 has exactly the same case as the 7200. It is about
the same speed (stock 100 mhz compared to 90 mhz of my
7200). There are some major differences though. First, it
has a real synchronous SCSI controller (the linux
driver name is MESH). This works much better with
PPC linux. I can even burn CD's at 4x without any
hassles now. With a WD ultra scsi drive I get 3.5
megs/sec on writes and 4 megs/sec on reads with iozone. The
tape drive is connected to the external scsi controller
(which BTW also has an internal connector). The
external controller is the same as the primary controller
in the 7200, a NCR 53C94. The reason I connnected the
tape drive (as well as the CDRW drive) to the
external SCSI bus is because the tape drive was
limiting the internal scsi bus to 5 mbits/sec. With the
tape drive moved the hard drive now runs at 10
mbits/sec.
Unfortunately,
the internal MACE ethernet STILL doesn't work
right. I would like to add a nice ATI 3d rage pro agp 2x
card to the machine to get accelerated X but can't
until I free up a slot by getting the mace to work right.
Another option would be to go with the experimental XFree
4.0x Xfree86_FBDev server which has been patched to provide
some acceleration with the 7500's control video
chip. Unforch, the controlfb video driver has been
unwilling to sense the full 4 megs of ram in the 7500.
There is a fix for the 2.4.x kernels and though I have
other unresolved problems with them, I'm now running 2.4.x
full time. My current kernel will run
on the S900. It includes support for various amateur
radio drivers as well as the Rocketport Serial, Tulip and
ne2k-pci ethernet drivers.
Outstanding
Issues with the 7500: MACE is
unreliable (maybe fixed now?) and the 53C94
external scsi doesn't support disconnect and hangs on the
slightest error. (Really was never fixed).
Interesting
things about the 9600:
It's got 6
slots and a second Bandit PCI controller! Otherwise, very similar to a 7500.
Interesting things about the S900: Like a 9600 but with a DEC PCI controller for the lower 3 slots instead of a second bandit, ties the interrupts for the last 4 slots together (boo hiss). Has a second processor slot for a custom 604 (not useful for me). Has less ram slots (8 as opposed to the 12 in the 9600). Had onboard ram AND cache which needed to be disabled to run with G3/G4 cards.
It's open firmware is a bit funky, doesn't report that it's actually an apple. Nice small case (compared to the 9600), runs cool. Interestingly, neither the 9600 or the S900 will let me see more than 768 megs of ram in linux though more shows up in Mac OS9.
I'm using the XFS filesystem.
|