plan9front/lib/namespace
cinap_lenrek 4ed03dff93 auth/factotum: mount factotum onto /mnt/factotum instead of /mnt by default
Factotum used to mount itself on /mnt and serving the first-level
directory "factotum" itself. This has the undesired consequence
that it has to respond to all walks crossing the /mnt directory.

Instead, we make factotum interpret the previously ignored
mount-spec (aname). If it is "factotum", it serves the
factotum directory as the root, so it can be directly mounted
onto /mnt/factotum. For backwards compatibility, the old
behaviour is preserved.

The namespace file will now always mount factotum onto /mnt/factotum.
In the case of a old factotum, that ignores the mount-spec,
do a bind moving /mnt/factotum/factotum to /mnt/factotum.
2024-11-23 16:05:11 +00:00

46 lines
865 B
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# kernel devices
bind #c /dev
bind #d /fd
bind -c #e /env
bind #p /proc
bind -c #s$srvspec /srv
bind -q #σ /shr
bind -a #¤ /dev
bind -qa #¶ /dev
# root
mount -C /srv/boot /root $rootspec
bind -a $rootdir /
# mount points
mount -a /srv/slashn /n
mount -a /srv/slashmnt /mnt
mount -a /srv/mntexport /mnt/exportfs
# authentication
mount /srv/factotum /mnt/factotum factotum
bind -q /mnt/factotum/factotum /mnt/factotum
# standard bin
bind /$cputype/bin /bin
bind $rootdir/rc /rc
bind -a /rc/bin /bin
# internal networks
# mount -a /srv/ip /net
bind -a #l /net
bind -a #I /net
bind -a #a /net
mount -a /srv/cs /net
mount -a /srv/dns /net
mount -a /srv/net /net
mount -C /srv/boot /n/other other
bind -c /n/other/usr/$user/tmp /usr/$user/tmp
bind -c /usr/$user/tmp /tmp
cd /usr/$user
. /lib/namespace.local
. /lib/namespace.$sysname
. /cfg/$sysname/namespace