Running linux on Dell Dimension 8400: Planning

Note: this is a now obsolete plan for setting up my home computer to be a myth-tv-box which I made before actually getting the computer. For an up-to-date report on how to set up the Dell Dimension 8400 to run linux, se the main linux on dell page.

Since most hw-vendors doesn't officially support linux, I have done quite a bit of research to ensure that I will be able to meet these requirements and that everything will work.

The configurations considered are all Dell computers, for which i have gotten special offers for through my employer. Thus the details of the specifications are fixed to 4 different setups. The models able to meed the requirements above were Dell Dimension 8400 and Dell Dimension XPS. Summarised, the differences between these two systems were:

XPS8400
3.6 GHz CPU, 2GB Ram, 500 GB HDD3.4GHx CPU, 1GB Ram, 340GB HDD
ATI Radeon X800PROnVidia GeForce 6800
almost twice the price of 8400

ATI-cards seems to be less supported in linux, and in my opinion the extra power doesn't really justify the price. In general, the last inch up to the high-end system is usually not worth it...

Planning stage

Main configuration

Ok, so the make and model is chosen. This was indeed a very good offer, so there is no doubt I get a lot for my money. The next question is whether this will work with linux. The table below summarise my findings.

Who uses floppies these days? This will probably disapear and leave room for another disk...
ComponentTypeAnalysis
ProsessorIntelŪ PentiumŪ 4 Prosessor 550 med HT teknologi (3.4GHz, 800MHz FSB, 1MB cache) I don't expect any trouble with this. Intel are good at compatibility with themselves, and the gcc-people are good at supporting different CPUs.
ChipsetIntelŪ 925X Express There are 3 issues which might arise with this board that I can imagine:
  • PCI Express: This seems a fairly new standard which makes me a bit worried, but it also seems to be the choice for the future, som I'm confident that this is either working already or will be pretty soon.
  • USB: There seems to have been some issues with USB in linux in the past, but USB-support is not that important (yet), so I'm not worried.
  • S-ATA controller: more on that below
RAM1024MB Dual Channel DDR2 400Mhz (2x512MB) (4 DIMM slots, maks 4096MB) Probably ok (?)
Harddisk320GB SATA Harddisk RAID 0 Stripe 2x160GB, 7.200RPM As with USB, SATA-support in linux seems to be immature, but I'm not afraid of the cutting edge. RAID is just a matter of configuration, and this is not that important, if I can't get it to work, I'll do without.
Floppy1.44 Floppy
SoundcardCreative Soundblaster Audigy II (PCI) A fairly high-end soundcard there. I don't think it will matter much to my ears. If there is no proper linux-support, I suppose I could always get it working as a SoundBlaster-16...
GFX Card256MB PCI Express nVidia Geforce 6800 DVI/TV OUT Now, for running Doom with any real framerate, it seems Radeon X800 or GeForce 6800. Reports on the net seems to indicate that with some luck you can get the Radeon working, but GeForce is a safer bet.
DVD burner16X DVD+/-RW
DVD-ROM16X
NW-cardIntegrated Gigabit NetworkingI can't imagine this not being compatible with something linux supports. In my experience, networking in linux is never any problem.
RAID controllerIntegrert med IntelŪ Matrix Storage teknologi Now, this is something to think about. Intel are pointing to a driver supporting this. This is a path for linux 2.4, but support is apparently included in 2.6. I have seen reports indicating that the performance might not be as good as with original intel (windows) drivers. If everything fails, I hope I can still use the disks without RAID. Music and video are quite disk-intensive applications, but modern disks should have no problem reading and writing two separate videostreams anyway. This issue can be devided in 3:
  • Being able to read the SATA-drives in the installed system. Using kernel 2.6, this will probably be OK. I'm eagerly waiting for Gentoo 2005.0 which will use 2.6 as default.
  • Installing on a SATA-disk. To do this, the kernel booted from the install-media has to have SATA-drivers loaded. Again, this will probably be OK in the next Gentoo. For other distros there is a bootstrap problem, building a custom linux-kernel without having linux installed might be tricky...
  • Booting from a SATA-disk. Is Grub or Lilo able to load the kernel from a SATA-device?
Anyway, I'll probably work around this problem by installing an 18GB ATA-disk I have lying around and use this for both linux and windows root-partitions.
Modem56k analogt data/fax (PCI)This is something I would remove if I had the option to tailor the configuration...
FirewireIEEE1394 on the sound-cardThis is really not important to me, but atleast there is a driver available.
Keyboard/MouseDell 105-taster / Dell Two-Button Wheel Optical.
Slots3 PCI, 1 PCI-E 1X, 1 PCI-E 16X
Chassis2 external 5.25' bays, 2 external 3.5' bays, 2 internal 3,5' baysMost of these are probably used already for the two disks, two dvd-players and the floppy
Ports1 parallell, 1 serial, 2 PS/2If I can't get a printer to work over USB, atleast I have parallell as a backup
USB8, USB 2.0USB probably works?

Peripherals

Printer

For photo editing work I would need a photo-printer. However, linux-support for these seem to be varying, and there are plenty of models available at any price, so I'll leave this for later. To start with, I'm getting a Dell 3000CN color laserprinter (this particular model because it is also a part of the same offer..). The product-sheet claims it supports PCL-6, which will probably work fine in linux. I'm not sure about USB, but I can anyway fall back to parallell.

Wireless keyboard

I'm also getting a Logitech LX 700 wireless desktop. The last time I tried a wireless keyboard on linux it didn't work, but I'm not sure if this was USB not working or if the keyboard itself had some issues in linux. Googling for this didn't give to many relevant results, but atlest the MX700 (mouse only) seems to be working

Scanner

I feel on thin ice with this one, a Canon Canoscan 8400, but it was an add-on to the same good offer, so I'm taking my chances... There is scanner-support in the linux usb-driver.

TV-tuner

For myth-tv to be useful I also need a TV-tuner-card. These come with or without mpeg2-encoding in hardware. And although this CPU is probably more than powerful enough for encoding and decoding an mpeg-stream at once, it would be nice to be able to use the computer while recording without risking loosing any video.

There seems to be to recommended alternatives here: Hauppauge WinTv-350 or 250. 250 is cheaper, but it seems to be unavailable, replaced by a new card, 150. However, the latter doesn't have any linux-support yet, and this might take a while, as they apparently use completely different chips in this one. That means I have to go all the way and get the 350. The nice thing about this is that it also has TV-out, which means I can effectively connect 3 screens (tv, monitor, and in the future: a projector), and it has an FM radio-tuner.

Planning the setup

Linux-distro

First question, which distribution? Atleast I'm considering:

I'll probably go for Gentoo.

Disk

For a mostly-single-user computer, there is no need for the many different partitions one usually configures on a unix-server. However, some will be needed. The setup below is inspired by this recomendation.

Boot-disk 18GB ATA

Data-disks 2x160GB SATA

If I can get RAID-0 to work, and the performance is actually better than with single disks, I'll use that. Otherwise, I'll put everything except /home on the first disk and use LVM for /home.

Connections

Click on image for bigger version

Plan

StepDetails
Linux boot-medium With any luck, this can be done from an USB-memory-stick. Things I need to figure out:
  • Exactly which kernel-version, -modules and other tools are needed to get RAID.
  • Which other tools are needed to get RAID
  • How to create a linux boot-disk with a custom kernel
The gentoo live-cd seems to have most of what I need.
Get RAID working
  • Measure transfer-speeds without raid
  • Measure speeds with sw-raid, if possible
  • performance options: hdparm -d 1 -A 1 -m 16 -u 1 -a 64 /dev/hda
  • measure: hdparm -tT
  • bonnie++
This step alone means formatting the disks twice
Partition and install Special care has to be taken to cater for dual-boot between windows and linux. Assuming raid is working, the partitioning and installation-process will be as described below. More details here
  • Using windows installer, set up RAID, reserve the first 25MB for boot-partition create 20GB for windows.
  • Install windows. This might also format the other partitions as NTFS, but that doesn't really matter yet.
  • Install GRUB on the first sector of the /boot-partition. Not in the MBR, that's for windows.
  • Copy the linux boot-sector: dd if=/dev/hda1 of=/osshare/linux.bin bs=512 count=1
  • Reboot in windows, copy linux.bin to c:
  • add c:\linux.bin="Linux" to c:\boot.ini
  • Reboot in linux, partition the rest of the disk and install
video-drivers nVidia drivers available here
sound-drivers Audigy on Linux
try doom
gimp
printer
scanner
tv-tuner/mythtv
tv-out

Experiences

After I get the system in-house (end of february) and start playing with it, I will post my experiences here.

Useful links


rolfn@pvv.org