double location of the jail?

Matthias Apitz guru at unixarea.de
Sat Mar 11 09:36:20 UTC 2017


Hello,

I have a CURRENT server with the sources of the kernel in /usr/src:

# svn info /usr/src
Path: /usr/src
Working Copy Root Path: /usr/src
URL: svn://svn.freebsd.org/base/head
Relative URL: ^/head
Repository Root: svn://svn.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 314251
Node Kind: directory
Schedule: normal
Last Changed Author: imp
Last Changed Rev: 314250
Last Changed Date: 2017-02-25 07:11:59 +0100 (Sat, 25 Feb 2017)

# uname -a
FreeBSD jet 12.0-CURRENT FreeBSD 12.0-CURRENT #0 r314251: Sat Feb 25 17:14:40 CET 2017     root at r303343-amd64:/usr/obj/usr/src/sys/GENERIC  amd64

and a jail created in it within a ZFS pool:

# mount
/dev/da0p2 on / (ufs, local, journaled soft-updates)
devfs on /dev (devfs, local, multilabel)
poudriere on /poudriere (zfs, local, nfsv4acls)
poudriere/poudriere on /poudriere/poudriere (zfs, local, nfsv4acls)
poudriere/poudriere/jails on /poudriere/poudriere/jails (zfs, local, nfsv4acls)
poudriere/poudriere/ports on /poudriere/poudriere/ports (zfs, local, nfsv4acls)
poudriere/poudriere/jails/freebsd-r314251 on /usr/local/poudriere/jails/freebsd-r314251 (zfs, local, noatime, nfsv4acls)
poudriere/poudriere/ports/ports-20170304 on /usr/local/poudriere/ports/ports-20170304 (zfs, local, noatime, nfsv4acls)
/dev/md0 on /tmp (ufs, local)

# poudriere jail -l
JAILNAME        VERSION              ARCH  METHOD   TIMESTAMP           PATH
freebsd-r314251 12.0-CURRENT r314250 amd64 svn+http 2017-03-04 19:48:34 /usr/local/poudriere/jails/freebsd-r314251

all this worked fine to compile some ~1800 ports.

Today I wanted to make a copy with tar of /usr/src and /usr/obj (to move
both to some other host to update this without 'make buildworld' and
'make buildkernel' there). I was surprised to find below /usr/obj somehow
a copy of the jail:

# ls -l /usr/obj/usr/local/poudriere/jails/freebsd-r314251
total 4
drwxr-xr-x  3 root  wheel  512 Mar  3 16:48 usr

# find /usr/obj/usr/local/poudriere/jails/freebsd-r314251/ | wc -l
  109769
# find /usr/local/poudriere/jails/freebsd-r314251 | wc -l
  174006

What does this mean, why is something of the jail below /usr/obj?

The inodes of the two dirs are not the same:

# ls -lid /usr/local/poudriere/jails/freebsd-r314251 /usr/obj/usr/local/poudriere/jails/freebsd-r314251
       4 drwxr-xr-x  17 root  wheel   21 Mar  4 21:19 /usr/local/poudriere/jails/freebsd-r314251
31139731 drwxr-xr-x   3 root  wheel  512 Mar  3 16:48 /usr/obj/usr/local/poudriere/jails/freebsd-r314251

i.e. this is not to some kind of symlink. Can I remove the tree /usr/obj/usr/local/poudriere/?

Thanks for some clarification.

	matthias

-- 
Matthias Apitz, ✉ guru at unixarea.de, ⌂ http://www.unixarea.de/  ☎ +49-176-38902045


More information about the freebsd-ports mailing list