Date: Wed, 3 Jul 1996 21:01:44 -0700 (MST) From: Terry Lambert <terry@lambert.org> To: joelh@gnu.ai.mit.edu Cc: terry@lambert.org, jmb@freefall.freebsd.org, tom@sdf.com, jgreco@brasil.moneng.mei.com, root@friday.keanesea.com, hackers@FreeBSD.org Subject: Re: What is the best way to setup a drive Message-ID: <199607040401.VAA12261@phaeton.artisoft.com> In-Reply-To: <199607040348.XAA14514@kropotkin.gnu.ai.mit.edu> from "Joel Ray Holveck" at Jul 3, 96 11:48:59 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> >> But how would you mount your filesystems at boot time? > > > > Mounts will be inserted into the fs hierarchy post-facto by > > mount-point mapping of the vnodes according to the content of the > > fstab. > > But with /etc as a symlink to something on a different filesystem, > then how would the fstab be read, since the root filesystem is the > only one that can be mounted before fstab is availible? > > I think that this point has been made and remade many times before my > post made it. Incorrect. All file systems will have mount point vnode assignments as a result of a callback as a result of device probe. This means all mount structure will be filled out. What will not be filled out is the hierarchy assignment, including covered vnodes. This is what is filled out by /etc/fstab, if we don't choose to make fstab "go away" entirely. The root file system is identifiable by a preinitialized "last mounted on" field. This field, and additional metadata from a file on the file system itself (it works for quotas, after all), or from an extended superblock, can be used to encode all necessary mount options. The "/etc" directory is not allowed to be other than on the root file system, by definition. That resolves the symlink problem. I think perhaps that the confusion is coming from the (incorrect) idea that system configuration information will exist or be acted upon prior to the file systems mounted vnodes being mapped into the mounted FS hierarchy? The idea that /etc must be localizable by file modification instead of being localizable by data madification in /var (or elsewhere) is a lame idea. It is unacceptable for the idea of sharing a read-only root among multiple clients, and must be discarded as historical cruft, which we may ignore at our leisure. IP mapping can be achieved via bootp followed by a DNS call, since there is sufficient information to get there without a valid "/etc/hosts" file. I don't see any contradictions. If you think non-DNS-based host name assignment for identification purposes must occur early in the boot process (I don't see why you would be under this incorrect impression), then you can always implement DHCP... there are RFC's which handle that "need" quite nicely (for instance, if during the boot process you need to do a "netaddname" call for 1001/1002 NetBIOS support (NetBIOS is not a boot critical system component, so that's quite unlikely in any case). Regards, Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199607040401.VAA12261>