bizarre mount_nullfs issue with jails / ezjail

Dan Naumov dan.naumov at gmail.com
Tue Apr 6 21:29:56 UTC 2010


So, I want the basejail to only contain the world and link the ports
tree from the host into each individual jail when it's time to update
the ports inside them, but I am running into a bit of a bizarre issue:
I can mount_nullfs /usr/ports elsewhere on the host just fine, but it
doesn't work if I try to mount_nullfs it to /usr/ports inside the
jail:

mount_nullfs /usr/ports/ /usr/ports2

df -H | grep ports
cerberus/usr-ports                34G    241M     34G     1%    /usr/ports
cerberus/usr-ports-distfiles      34G      0B     34G     0%
/usr/ports/distfiles
cerberus/usr-ports-packages       34G      0B     34G     0%
/usr/ports/packages
/usr/ports                        34G    241M     34G     1%    /usr/ports2

mount | grep ports
cerberus/usr-ports on /usr/ports (zfs, local)
cerberus/usr-ports-distfiles on /usr/ports/distfiles (zfs, local)
cerberus/usr-ports-packages on /usr/ports/packages (zfs, local)
/usr/ports on /usr/ports2 (nullfs, local)

mount_nullfs /usr/ports/ /usr/jails/semipublic/usr/ports
mount_nullfs: /basejail: No such file or directory

What is going on here? I also note that the error actually wants a
/basejail on the host, which is even more bizarre:

mount_nullfs /usr/ports/ /usr/jails/semipublic/usr/ports
mount_nullfs: /basejail: No such file or directory

mkdir /basejail

mount_nullfs /usr/ports/ /usr/jails/semipublic/usr/ports
mount_nullfs: /basejail/usr: No such file or directory

Yet, this works:

mkdir /usr/jails/semipublic/test
mount_nullfs /usr/ports/ /usr/jails/semipublic/test
umount /usr/jails/semipublic/test

Any ideas?


- Sincerely,
Dan Naumov


More information about the freebsd-questions mailing list