INSTRUCTIONS FOR CREATING A JOLIET CD FOR INSTALLING RED HAT LINUX 5.0

Unfortunately, creating an appropriate installation CD is a task with a number of potential pitfalls. Note, however, that I'm not an official authority on the subject; I've no connection to Red Hat except as an occasional customer (I've bought Red Hat 4.0 and ApplixWare from them), and I haven't even studied the source for the installation programs. What I relate is based on trial-and-error, newsgroup postings, and my own (possibly flawed) reasoning processes. Take it for what it's worth, then.

I'm not going to cover Linux installation per se, or even creating a physical floppy disk from the joliet.img file. These topics are covered in plenty of other places. If you're a Linux newbie, I suggest you get a good book or start browsing at http://www.linux.org, which has lots of useful information and links to yet more useful information.

FILE DOWNLOAD

The first step is to download the files. Presumably, you're interested in my installation floppy because you've got a fast network connection and a CD-R drive on a machine that only runs Windows 95 (or possibly MacOS or some other non-Unix OS). Or you might have Win95 or some other OS set up on your machine, have a CD-R drive, and want to try Linux. In either case, use your existing machine to log onto Red Hat's ftp server (ftp.redhat.com), the Sunsite ftp server (ftp.sunsite.unc.edu), or some other location with the Red Hat installation tree. Locate the installation tree for Red Hat 5.0. You're interested in the following directories:

    RedHat/
        RPMS/
        instimage/
            lib/
            usr/
                bin/
        base/

(Although I've provided URLs to get to these ftp sites from your web browser, that's a poor way to get a Linux distribution, since most web browsers only let you download files a file at a time, and the Red Hat 5.0 distribution contains far too many files to do this comfortably.)

Actually, I'm not certain that the "base" subdirectory is necessary, but it's pretty small, so you might as well get it. Ultimately, you'll want these to appear on your burned CD exactly as above. That is, under Win95 or DOS, if your CD is "D:", you'd want D:\RedHat, D:\RedHat\RPMS, D:\RedHat\instimage, etc.

Pitfall #1: Downloading the wrong directory tree. Red Hat does assume that its files will be laid out precisely as I've specified. As far as I know, there's no way to override this, so if you burn a CD incorrectly (say, by making the RPMS directory at the base of the directory tree for that CD), you'll have created a "coaster."

Pitfall #2: Case matters! Creating \RedHat\rpms or \redhat\RPMS or any other variant just won't do. You must get the case right or you'll be out of luck. This is true all through the directory tree! So check all the files, or at least all you can stomach. Compare against the directory listing from the ftp site. Also, keep this in mind during the burn process, since CD-R programs might decide to change things.

Pitfall #3: Exact filenames matter! This is true even of the contents of the RPMS directory. Some networking software for Win95 may try to change filenames, so keep an eye out for that. One or two missed RPMs may not be a big deal if they're non-critical, since you can install them manually later, even if they're recorded with the wrong filename; but you don't want to be doing this for dozens of packages. This is doubly important for the contents of the \RedHat\instimage directory tree, since these are programs and libraries that the install routine will be running during installation. Note also that MacOS's HFS may not be adequate to maintain the complete filenames of all files, so Mac users who have Joliet creation capabilities may have to check for incomplete filenames at burn time.

Pitfall #4: Losing links. A few files, notably in the \RedHat\instimage\ hierarchy, are actually symbolic links to other files. As far as I know, Joliet doesn't support these. The workaround is to include multiple copies of the same file under different names. There's more than enough space on a 650MB disc to handle this duplication. Just be sure you've got the actual files for each and every link.

On my system, the "base" files consume about 250MB (including duplicate files for links). That leaves about 400MB for supplementary material, like updated RPMs, the Red Hat "contrib" directory, etc. Feel free to include them. It might also be a good idea to include both the original boot.img and supp.img files, and my modified joliet.img file. To do anything with these files on a system that doesn't yet have Linux installed, you'll need the DOS utility RAWRITE.EXE, which should be somewhere obvious on the ftp site from which you get the main Red Hat distribution. The DOS utility FIPS can also be handy (note that there's a version of FIPS available from http://bmrc.berkeley.edu/people/chaffee/ that supports FAT-32). Put these wherever you want; it shouldn't really matter.

CD-ROM CREATION

The next step is to burn a CD. I'll assume that you know how to burn a CD with your Win95 (or whatever) software. If not, try reading the documentation, or check the CD-R FAQ at http://www.cd-info.com/CDIC/Technology/CD-R/FAQ.html. As to the rest, it's just a matter of firing up your favorite Win95 (or whatever) CD creation program and having at it, right? Well, maybe. A few pitfalls still lurk for the unwary:

Pitfall #5: Filenames (again?!? Yes!) If your filenames are correct on the hard disk, you should be set. Sadly, this isn't always the case. Specifically, I've created disk-based images with four programs: Adaptec's Easy CD Creator 3.01 and their Easy CD Pro 95, Ahead's Nero 3.0.1.2, and mkhybrid 0.48a (a Linux program, so it's largely moot; if you can use it, you can create a Rock Ridge CD). My final test CD was created with Nero, and it worked fine. Easy CD Pro and mkhybrid also produced images that looked like they would work, though I haven't verified that. Easy CD Creator, though, insisted on planting periods (".") after every short filename. This would likely render the disk useless for installing Red Hat Linux, since the utilities in the RedHat/instimage/usr/bin directories would have, from Linux's point of view, the wrong filenames. Thus, I'd recommend avoiding Easy CD Creator for this function, unless you can find some way to disable this tendency. Other programs may have similar limitations.

Pitfall #6: CD-ROM type mis-match. On one of my "dry runs" in creating a disk image of a test CD, I found that Linux and its Joliet support did not mount a CD image that was created with the CD-ROM XA specification, as implemented by Adaptec's Easy CD Creator 3.01. I changed the setting to "CD-ROM Type 1" and it worked better (but not well enough; see Pitfall #5).

Pitfall #7: Other (unknown) settings. I've by no means done extensive testing with the dozens of CD-R burning programs available, so there are probably other options or settings than the ones I've tried that would create problems. I recommend being a bit on the conservative side, when in doubt. Joliet is necessary, and it would be good to have a "plain" ISO9660 filesystem in addition to this, but I'd recommend shunning other more exotic options. (If your software creates Joliet but doesn't give access to the files via "plain" ISO9660, you won't be able to access your CD's contents from Linux unless you recompile your kernel with Joliet support, once you've installed everything!)

Once you've created a Joliet CD, you can check the files and filenames in Win95 (or some other Joliet-enabled OS). In Win95, note that the best way to check filenames is via a DOS prompt window, since it lists both the DOS short filename (which is unrelated to the ISO9660 filename) and the Joliet long filename. As far as I know, the Joliet filename as reported by Win95's DOS box will be what Linux sees as the filename.

LINUX INSTALLATION

You should now be able to install Linux by using my modified floppy image and the Joliet CD you've created. With any luck, you won't run into any further problems, but there are a few more points that are of importance.

Pitfall #8: Driver differences. In order to create my modified boot disk, I had to recompile the Linux kernel and replace all the drivers on the original Red Hat boot floppy. As I have no idea what driver parameters, or even necessarily what drivers, went into Red Hat's original kernel, I can't guarantee that my disk will work in all cases where the original will, or that the system installed on the hard disk will work where my boot floppy did. A few specific cases where I know there may be problems include:

  1. I couldn't get the Linux floating-point emulation to compile; it kept complaining that it couldn't find a rule to make some particular target. I've therefore omitted it, and my boot floppy will be useless if you don't have an FPU in your system. (All Intel, AMD, and Cyrix Pentium-class and better CPUs do have FPUs, as do most 486 systems and many 386es.)
  2. Similarly, I couldn't get the NCR 5380 driver to compile, and so I've omitted it. This driver doesn't seem to have been in the original Red Hat boot disk, either, though. Note that I am not talking about the NCR/Symbios 53c8xx or 53c7,8xx drivers, both of which are included on my disk.
  3. Because I may have used different driver parameters as defaults, it's possible that you may need different parameters to boot the install disk than to boot the system once it's installed. I ran into this myself; both the installed system and Red Hat's original install floppy hang on my NCR/Symbios 53c825-based system, but my floppy boots up fine. The solution in my case was the same as the solution to install using Red Hat's original disk and a Rock Ridge CD: select "expert" mode and the 53c7,8xx driver rather than the 53c8xx driver that's otherwise used.

Also, I've omitted all the networking drivers that are included on the original Red Hat disk. After all, the whole point of this is to install locally using Joliet, for which the networking drivers are moot. This shouldn't prevent networking from functioning once the system's installed, though it's conceivable that the networking configuration during installation will fail (I've no way of testing this myself). It might be best to forego network configuration until the entire system is installed, therefore. Note, however, that the lack of networking in this boot floppy doesn't prevent you from installing Red Hat on a networked machine via a Joliet CD attached to a local network server. In that case, it's only necessary that the server understand Joliet, and you'd use the standard Red Hat install floppies.

Note #1: Error about unmounting filesystems. On my system, once installation is complete I get a message about being unable to un-mount a filesystem. I don't know what causes this, but as far as I can tell it doesn't really do any harm. I believe it refers to the RAMdisk, but it might be the CD-ROM. In either case, it doesn't affect the just-installed system, so I've ignored it, and suggest you do, too, unless you know why you shouldn't (in which case, please clue me in!).

Note #2: Joliet support once installed. Red Hat 5.0 does not pull the final configuration's boot kernel off of the floppy; it takes it from the CD. Therefore, the Joliet support compiled into my modified kernel will not be transferred to your final installation. The main consequence of this is that the CD-ROM you created will revert to 8.3 filenames under Linux once you've installed it. You may or may not have .rpm extensions on all your RPMs, the RPMs won't be exactly where glint will look for them, etc. You can either live with this (as far as I know, if you use glint for package management it won't make any difference once you tell it where to look for packages) or compile yourself a new kernel with Joliet support. Look for the original Joliet patches at http://bmrc.berkeley.edu/people/chaffee/.

CONCLUDING REMARKS

That should be it, then. I've done a couple of test installations with this modified boot floppy, and the procedure seems to work fine.


Copyright © 1997 Rod Smith, rodsmith@fast.net
Return to the Red Hat Joliet installation page