On Tue, May 27, 2003 at 09:50:32PM +0200, Per Olofsson wrote: > And /bin, /sbin, /lib etc. could also be on different partitions. But > why have /usr? Why separate some "important" binaries and the rest? Is > there a real reason?
You can't put /sbin on a different partition because that's where init lives, and without init you can't actually start the userspace aspect of the operating system and so you can't mount other partitions. You can't put /bin on a different partition because that's where sh lives, and without sh you'll have a lot of trouble running your startup scripts, and without running your startup scripts you can't mount other partitions. You can't put /lib on a different partition if mount or init or anything else if your startup procedure is a dynamic executable (on OBSD they're not dynamic, and there is no /lib); and, under Linux, you may need access to your kernel modules before you can reach all your required filesystems. That's why critical binaries are separated from the rest. Specifically to be on the ROOT filesystem. Not just to be conveniently isolated from the rest of the world. Don't forget that at boot time / is usually read-only. You have the option of keeping it that way by filling out /etc/fstab appropriately. I used to do that under Debian, and had no trouble. I can't be bothered testing it under OpenBSD. I also have a NetBSD setup at work where everything is read-only except for a ramdisk /var, and that behaves itself too.
