On Tue, May 22, 2001 at 05:44:08PM +0200, Edouard G. Parmelan wrote: > I will enter "PowerPC side of the Force" in two weeks,
Excellent! :) > I read various docs but I have few questions. Folks have answered most of these, but here's my $0.02 anyway... > - Is someone already install NetBSD or GNU/Linux on an iBook G3/500 ? Not on an iBook, but I've installed OS 9, OS X, NetBSD & Linux (Linux/PPC 2000 Q4) all on a PowerBook G3 Lombard. A co-worker has successfully installed Linux on his iBook G3/500, although I don't know the details. > - which NetBSD and/or GNU/Linux filesystems Mac OS X support ? Natively, none. OS X does support UFS, but it doesn't seem to recognize NetBSD's 4.4BSD ffs (if I try mounting NetBSD's ffs under OS X, the mount command recognizes the fs as a BSD fs, but it can't make sense of the structures in the filesystem and fails to mount the fs). Don't know if NetBSD 4.3BSD filesystems created w/ "newfs -O" would be mountable by OS X. In principle, one could add FFS or ext2 support to Darwin, but don't know if anyone has (try browsing through the Darwin list archives at http://lists.apple.com/mailman/listinfo/darwin-development ; unfortunately, these can't searched currently). > - can NetBSD and/or GNU/Linux access to Mac OS X filesystem ? If it is HFS or HFS+, yes. Linux can mount HFS directly, while NetBSD requires hfsutils. hfsplusutils will let you access HFS+ from Linux & NetBSD. Don't know if Linux or NetBSD can mount OS X UFS though. > - can NetBSD use an ext2fs partition as / ? You can mount ext2fs partitions in NetBSD, but I wouldn't mount it as /. For one thing /etc & /dev will be completely different on the two. You'll want a completely separate /, /usr & /var for each OS. I'd recommand mounting your Linux partitions under /emul/linux. You can then enable COMPAT_LINUX in the NetBSD kernel & run most all of the Linux executables under NetBSD. In my case (single-user, laptop computer), I just have a single partition each for NetBSD & Linux, so I mount the Linux partition as /emul/linux. If you'd like, you can make a separate /home partition and share that between NetBSD & Linux. > - can GNU/Linux access to NetBSD FFS partition ? Yes, though you'll need to configure support into the kernel (at least as of the 2.2.18 kernel in Linux/PPC). Enable CONFIG_UFS_FS & CONFIG_UFS_FS_WRITE and compile a new kernel (I configured UFS support as a module, and it works fine). You'll need to mount the FFS partition with option "ufstype=44bsd", eg: mount -t ufs -o ufstype=44bsd /dev/... /netbsd > - can NetBSD use the same swap partition that GNU/Linux ? Yes, although as already mentioned, Linux wants its swap partition to be "formatted" and NetBSD's use of swap will wipe out this formatting. Linux "formats" the swap partition using the "mkswap" command, so you can simply modify the relevant startup script to run mkswap on the partition before the swap partition is enabled. I added the following to /etc/rc.d/rc.sysinit (again, this is LinuxPPC; Debian may be different) just before it does a "swapon -a": ## local hack: format swap partitions, as they may be shared w/ other OSes while read dev mnt fstype opt freq pass ; do if [ "$fstype" = "swap" ]; then /sbin/mkswap $dev > /dev/null fi done < /etc/fstab action "Activating swap partitions" swapon -a > - GNU/Linux seem to need/require yaboot. Can yaboot start NetBSD ? No, and > - I have read that there is a Darwing version of BootX (that use Open > Firmare). Can this version start NetBSD, GNU/Linux and Mac OS X ? no. As others said, though, you can simply use multiple bootloaders: yaboot for Linux, ofwboot for NetBSD, etc. To make the boot process easier, I recommend using ybin. ybin is a Bourne shell script which can create a boot script which OpenFirmware can use for booting the different bootloaders. The boot script is a "CHRP" script (basically, a script written in Forth) which OpenFirmware can load from disk and interpret. The boot script presents you w/ a text menu from which you can choose which OS to boot. Mine gives me the following menu: Pick an OS, any OS: Press m for MacOS, t for MacOS X, b for NetBSD, l for Linux, or c for CDROM, n for Network, o for OpenFirmware. Boot: Once you enter a choice, the script then executes the required boot command, eg: boot hd:10,\\:tbxi for MacOS on partition 10 boot hd:9,\ofwboot.elf hd:12/netbsd for NetBSD w/ bootloader on 9, kernel on 12 boot hd:9,\yaboot for yaboot bootloader on 9 The boot script is simply a text file of type "tbxi" and creator "chrp", and it can be booted from OF using, eg, "boot hd:9,\:tbxi" if it's at the root of the filesystem. ybin will use hfsutils to copy the script to your "boot" partition. You can find ybin at http://www.alaska.net/~erbenson/ybin/ > Which is the installation order ? I have read that Mac OS X should be > install first, is it mandatory ? And after, is NetBSD or Debian have > the same requirement ? Install order doesn't really matter. I installed OS 9, then OS X, then Linux, then NetBSD (saved the best for last... :) ). The only order I would recommend is to place your NetBSD partition ahead of the Linux partition. The reason for this is that both use partitions of type "Apple UNIX SVR2", and the generic NetBSD kernel will by default pick the first such partition it finds in the partition map as the root filesystem and try to mount it. This can be overridden (by passing the "-a" option to the kernel at boot and/or by compiling a custom kernel pointing root to the correct partition), but it will be easier in the long run to simply make your NetBSD partition the first SVR2 partition in the partition map. I partitioned my disk using Apple's Drive Setup. In order, I created an HFS "boot" partition (on which I store yaboot, yaboot.conf, NetBSD's ofwboot.elf, and ofboot.b, the ybin CHRP boot script; I used HFS since I can easily access this fs type from all OSes as well as from OpenFirmware), an HFS+ partition to hold OS 9, a second HFS+ partition for OS X, an Apple UNIX SVR2 root partition for NetBSD (all of NetBSD is installed in this partition), an Apple UNIX SVR2 swap partition for swap (shared by both NetBSD & Linux), and finally an Apple UNIX SVR2 usr partition for Linux (all of Linux is installed on this partition). Hope this helps, John