July 31, 1998 Welcome to MkLinux Developer Release 3 (DR3) FTP archive. If you're not familiar with MkLinux, please see the web site: http://www.mklinux.apple.com/ The easiest way to install MkLinux is using the MkLinux DR3 CD-ROM. Please see the web page or the DR3 announcement for details on obtaining the CD. In most cases, it is possible to install MkLinux DR3 from this FTP archive. If that's what you want to do, continue reading! We've duplicated the CD's directory structure in this FTP archive. However, there are a few differences, which are outlined below. What's on the CD ---------------- The DR3 CD contains the following files or folders at the top level: README - Mac and Unix versions, containing identical text MacOS Utilities/ - Three partitioning programs that run under MacOS Mac Files/ - The pieces of MkLinux that reside in your MacOS volume mach_servers/ - The pieces needed to boot the MkLinux installer RedHat/... - Many packages that can be installed as part of DR3 SRPMS/ - Sources to the above DR3 packages extra/... - More packages that can be installed later mklinux_source/ - Sources to MkLinux's Mach microkernel and Linux server misc_source/ - Other sources that may be of interest What's different here --------------------- There is an extensive README file on the CD, which has been renamed "README_DR3" in this FTP archive. You should read it, as almost all of it is applicable to you. The "README" that you're looking at right now describes only the additional information that you need to install MkLinux from this FTP archive. The file "Announcement" contains the announcement for MkLinux DR3. The folders "MacOS Utilities", "Mac Files", and "mach_servers" are recreated here in two forms. Each folder has been bundled into a self-extracting archive. If you are downloading these pieces for the first time, we suggest that you simply retrieve the three "sea.hqx" files. If you're looking for just one or two files from one of those folders, then you can look in the similarly named directory here. (If you do this with files in "mach_servers", be sure to FTP them in _binary_ mode, even "bootstrap.conf", even though it looks like a text file!) There are a few RPMs and SRPMs that are available here, in the "extra" directory that do not exist on the CD. These files were left off the CD because they were either too large to fit on the CD, or simply not required for DR3. They are: extra/RPMS/howto-translations-5.0-5a.noarch.rpm extra/SRPMS/howto-5.0-5a.src.rpm extra/SRPMS/X11R6.3-01-1r.src.rpm extra/RPMS/emacs-19.34-1B.ppc.rpm extra/RPMS/emacs-X11-19.34-1B.ppc.rpm extra/RPMS/emacs-el-19.34-1B.ppc.rpm extra/RPMS/emacs-nox-19.34-1B.ppc.rpm extra/SRPMS/emacs-19.34-1B.src.rpm extra/RPMS/gcc-2.8.0-1c.ppc.rpm extra/SRPMS/gcc-2.8.0-1c.src.rpm The howto-translations and the howto SRPM are huge, as is the X SRPM. They were left off the CD so that everything else would fit. The emacs-19.34 is a slightly older version than the official DR3 version (emacs-20.2). We've left it on the FTP site in "extra" because there are a few things that don't work right in the newer emacs. Some zealous emacs users will want to stick with the older 19.34 version for now. EGCS (Experimental GNU Complier System) is the official compiler for DR3. These days, most of the Open Source PowerPC compiler development is occuring on the "egcs" package. gcc-2.8, which has some problems, is provided via FTP only. Installing DR3 using files from the FTP archive ----------------------------------------------- 1) Read the file "README_DR3" in this directory. 2) Use the programs in MacOS_Utilities to partition your disk for MkLinux. If you don't know how to do this, go back to step 1. 3) Put the "Mac Files" into your MacOS system volume according to the instructions in README_DR3. For now, ignore the part about SCSI vs. ATAPI CD-ROM drives and editing lilo.conf's rootdev line. Yes, you will need to edit the rootdev line; we'll get to that later. 4) Place the "mach_servers" folder at the top level (ie. not on the desktop) of a suitable volume on your Mac. For MkLinux to be able to access your mach_servers folder, the volume containing it must be: a) on an HFS (MacOS Standard) volume, not HFS+ (MacOS Extended) b) on a drive that MkLinux can recognize. Right now, MkLinux does not recognize any drives attached to PCI SCSI adapters. Also, the DR3 kernel is known to have some difficulty with some IDE drives. If you get the infamous "bootstrap cannot find config file" message, then you may need to use a SCSI device to hold your mach_servers folder. Once you completed the MkLinux installation, you will not need this mach_servers folder anymore. 5) Determine the MkLinux device name for the partition where you finally ended up putting your mach_servers folder. Typical device names look something like this: /dev/hda4 (fourth partition on the first IDE drive) /dev/sda5 (fifth partition on the first SCSI drive) /dev/sdb7 (seventh partition on the second SCSI drive) The pdisk utility is probably the best tool to determine the device names for your MacOS partitions. Use the "L" command to display the partition tables for every drive attached to your Mac. It may take some sleuthing, but you should be able to figure out the partition which contains the HFS volume containing the mach_servers folder. Here's an example of pdisk output: Partition map (with 512 byte blocks) on '/dev/sda' #: type name length base ( size ) 1: Apple_partition_map Apple 63 @ 1 2: Apple_Driver43*Macintosh 54 @ 64 3: Apple_Driver43*Macintosh 74 @ 118 4: Apple_Patches Patch Partition 512 @ 192 5: Apple_HFS untitled 614400 @ 704 (300.0M) 6: Apple_UNIX_SVR2 swap 196608 @ 615104 ( 96.0M) 7: Apple_UNIX_SVR2 root 3381703 @ 811712 ( 1.6G) In this case, the device name for the MacOS partition is '/dev/sda5'. 6) Put that device name into your lilo.conf file's rootdev line. You do this by invoking the MkLinux control panel. Click on the "Custom" button. SimpleText will launch and you'll be editing a preferences file called "lilo.conf". Edit the "rootdev=" line so that it points to the partition containing your mach_servers. 7) Reboot, when the MkLinux "Splash Screen" comes up, select MkLinux. After a few moments of booting messages, you should be in the MkLinux Installer. 8) In general, you will follow the installer screens according to the instructions given in README_DR3. However, once you get to Installation Method, you'll need to pick something other than "Local CDROM". The installer needs to be able to access the RPMs and other files that are in the "RedHat" directory (under DR3 on this FTP site). If you are connected to the internet via the ethernet port on your Mac, you can retrieve the RPM's via FTP as they are needed (ie. you don't need to download them all beforehand). If you choose the FTP install, you'll need to know the name of an FTP site and the name of the directory that contains the RedHat directory. On ftp.mklinux.apple.com, that directory would be "/pub/DR3", because that's where the RedHat directory is. Another thing you need to know is that sometimes the installer cannot determine the address of the FTP site if its name is a "DNS alias". For instance, the installer won't recognize "ftp.mklinux.apple.com" because that's really an alias for "www.mklinux.apple.com". As a last resort, you could always use the actual IP address (ww.xx.yy.zz) of the ftp site. And one more tidbit about FTP installs: the main MkLinux FTP site, ftp.mklinux.apple.com (or really, www.mklinux.apple.com) is usually under heavy load. If you try to do a FTP install directly from it, the install process may fail and you'll have to start over. You'll be much better off if you choose a Mirror site. The Mirror site list is shown when you connect to ftp.mklinux.apple.com, and is also contained in the file "Mirrors" at the top level (/pub) of the FTP archive. As an alternative to the FTP install, you can load all the RPMs onto a local disk. The structure of the RedHat directory must be preserved, including the directory (or Folder) "RedHat" itself. Some of the files in the RedHat folder have names longer than 32 characters, and their names will be truncated when placed onto a MacOS volume. Don't worry about this; the installer knows that if the files are coming from a local disk, it may have to look for truncated names. 9) Continue in the installer according to README_DR3. When you have completed the installation, you may remove the "mach_servers" folder. Closing words ------------- If you have difficulties, be sure to check the Frequently Asked Questions (FAQ) on the MkLinux web site, http://www.mklinux.apple.com/ Good Luck, The MkLinux Team ------------------------------------------------------------------------------ MkLinux device naming primer: Here's how drives are named under MkLinux, for any release since Nov 26, 1997, including many of the "wips" on the ftp site, as well this pre-DR3, DR3 final, and all versions going forward. SCSI Drives: MkLinux scans your SCSI busses counting from ID#0 through ID#6. It scans the internal bus first, then the "internal/external" bus. Any disks that are found are assigned the names "sda", "sdb", "sdc", REGARDLESS of their SCSI ID. So, if you don't have a drive at ID#0, but you do have one at ID#1 on the internal bus, then that drive will be "/dev/sda". This is different from earlier MkLinuxes. SCSI CDROMs are also labeled as they are found in the scan, starting with "scd0". So, here's a gnarly example: Internal ID What type disks cdroms 0 (empty) 1 SCSI Disk Hard Disk /dev/sda 2 (empty) 3 cdrom CDROM /dev/scd0 4 zip drive Hard Disk /dev/sdb 5 SCSI Disk Hard Disk /dev/sdc 6 (empty) External: 0 (empty) 1 (empty) 2 SCSI Disk Hard Disk /dev/sdd 3 (empty) 4 Another CDROM CDROM /dev/scd1 5 jaz drive Hard Disk /dev/sde 6 (empty) ^ ^ | | See how the names increase | | consecutively in these two --------+----------------+ columns? ATA and ATAPI drives: ATA naming is quite different from SCSI naming. Your IDE drives and ATAPI CDROMs are numbered like so: On the first ATA bus, you have /dev/hda and /dev/hdb. On the second ATA bus, you have /dev/hdc and /dev/hdd. Etc. Example: On the PowerMac 4400, the first ATA bus has the hard disk, and the second ATA bus has the CDROM: First ATA bus: Master IDE Drive /dev/hda Slave (empty) /dev/hdb Second ATA bus: Master CDROM /dev/hdc Slave (empty) /dev/hdd ^ | + These names fixed to the assigned positions even if there's an "empty" position. Partitions: Once you have determined what MkLinux calls the drive, the partition number on that drive is specified by appending a number. Examples: /dev/hda5 (partition #5 on hda) /dev/sdd4 (partition #4 on sdd) The best way I know to look at a partition map is to use the pdisk utility. It's not pretty to look at, but it really tells you what's going on with the drives in your system. Pdisk is in the "MacOS_Utilities" directory on this ftp site.