I have a DataStor parallel port external hard drive enclosure bought in 1997 and a laptop computer (Pentium MMX 133, 128M RAM) from around 2001. By today’s technology standard, those are indeed old dinosaurs.

My DataStor external enclosure worked great under Windows 95, it supported hot plug and play. I used it under Windows 98 as well. But the driver support became pretty bad under Windows 2000 and made reliable backups virtually impossible. Furthermore, there has been no official support for the drivers since Windows 2000. So the external case has been sitting there gathering dust for at least 6 years now. So I decided to try to find out whether I could utilize these old equipments under Linux.

The Linux distro I used is RedHat 9.0. There’s no particular reason why I chose RedHat 9.0 distro as oppose to SuSE or Mandrake, I just happened to have the CDs lying around. I am pretty sure that almost any Linux distro will be able to do the job.

The installation of RedHat 9.0 went pretty effortlessly. Within an hour, I was able to run it. Amazingly the installation recognized virtually every piece of hardware I had on that laptop. Even KDE loaded up correctly, albeit slow. But I was not concerned about the GUI performance anyway, since I was going to use it as a file server and the configurations could be done in text mode.

Then I set up Samba and was ready to attach my parallel port enclosure. I have a 13G IDE Seagate hard drive from 1999, which is a perfect candidate for the file server.

To get the system recognize my parallel port hard drive turned out to be a little bit more work. Sadly, since the days of parallel enclosures were long passed, the information I could find on the internet was very sketchy. Nevertheless, I found an excellent manual on how to setup parallel port device for running on Linux on http://cyberelk.net/tim/parport/paride.html.

Here are the steps on how to get DataStor parallel port external hard drive to work.

1. Make sure that the parallel port is set to use EPP mode in BIOS (standard mode works also, but is significantly slower). If the BIOS has a setting for whether the computer should support Plug and Play, choose No (Non Plug Play). Since my computer is pretty old, for the OS to recognize the drive geometry properly, I also needed to select Disk Type to be other (e.g. UNIX) instead of DOS (e.g. Windows).

2. Modify /etc/fstab, add the following line so that the external drive can be mounted later:

/dev/pda1 /mnt/hdd ext2 defaults 0 0

3. Log in as root, go to /sbin and type the following command in the given order to setup the parport driver:

modprobe paride
insmod dstr
insmod pd

And the driver for the external drive is now loaded. To verify take a look using dmesg and lines similar to the following should be in the log:

paride: version 1.06 installed (parport) paride: dstr registered as protocol 0 pd: pd version 1.05, major 45, cluster 64, nice 0 pda: Sharing parport0 at 0x378 pda: dstr 1.01, DataStor EP2000 at 0x378, mode 4 (EPP-32), delay 1 pda: ST313032A, master, 25434228 blocks [12419M], (16383/16/63), fixed media pda: pda1

4. Use mke2fs /dev/pda1 to create a new ex2 file system on the external drive.

5. Suppose you have Samba installed already, you can add a section in your /etc/samba/smb.conf file to enable the share so that Windows machines can see.

6. Finally, run /etc/rc.d/init.d/smb restart so the new Samba setting can take effect.

The speed of the external hard drive is pretty slow (even in EPP mode) compares to the standard we use today. Copying files of mixed sizes resulted in just above 500K per second. But hey, we are talking about a computer that is ten years old here. And for backup usage, the slow speed actually works very well. Because the lower transfer rate at the external hard drive side, there’s no noticeable performance degradation on the computer from which the backup operation is initiated. Who cares how long the backup runs since it would be running in the background anyway…

Be Sociable, Share!

Leave a Reply

Your email address will not be published. Required fields are marked *