Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Oct 2013 16:24:46 +0100 (BST)
From:      Anton Shterenlikht <mexas@bris.ac.uk>
To:        bsam@passap.ru, mexas@bris.ac.uk
Cc:        freebsd-ports@freebsd.org
Subject:   Re: poudriere zfs setup help
Message-ID:  <201310251524.r9PFOkC5002129@mech-cluster241.men.bris.ac.uk>
In-Reply-To: <526A46EA.9080202@passap.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
>From bsam@passap.ru Fri Oct 25 11:47:07 2013
>> 
>> Still no luck. Now I cannot even get 'poudriere testport -i'
>> to leave the jail intact. I get:
>> 
>> # poudriere testport -i -o ports-mgmt/pkg -j ia64
>> ====>> Creating the reference jail... done
>> *skip*
>> => SHA256 Checksum OK for pkg-1.1.4.tar.xz.
>> mkdir: /usr/ports/ports-mgmt/pkg/work: Read-only file system
>> *** Error code 1
>> 
>> Stop.
>> make[1]: stopped in /usr/ports/ports-mgmt/pkg
>> *** Error code 1
>> 
>> Stop.
>> make: stopped in /usr/ports/ports-mgmt/pkg
>> ====>> Cleaning up
>> ====>> Umounting file systems
>> # 
>> 
>> I also tried "-I" option - still the same - the jail
>> is unmounted after the failure.
>> 
>> This is poudriere-3.0.11.
>> 
>> What else can I try?
>
>Investigate your system as I had described earlier.

ok, it seems only poudriere-devel correctly implements "-i",
and leaves the jail running after "poudriere testport -i ...".

Anyway, I guess I'm asking for help with jails.

On the host I get:

# poudriere ports -l
PORTSTREE            METHOD     PATH
default              svn+https  /pdr/ports/default
# poudriere jails -l
JAILNAME             VERSION              ARCH    METHOD  PATH
ia64                 11.0-CURRENT         ia64    svn+https /pdr/jails/ia64
# df ports    
Filesystem         1K-blocks   Used     Avail Capacity  Mounted on
/pdr/ports/default 138074817 890565 137184251     1%    /pdr/data/build/ia64-default/ref/usr/ports
# 

i.e. the poudriere ports tree is mounted
under the ia64-default reference jail
as /usr/ports. However, for some reason,
this mount happens read-only. So I can
have write access to the ports tree directly
via /pdr/ports/default:

# touch /pdr/ports/default/zzz
#

but not via the jail route:

# rm /pdr/data/build/ia64-default/ref/usr/ports/zzz
override rw-r--r--  root/wheel uarch for /pdr/data/build/ia64-default/ref/usr/ports/zzz? y
rm: /pdr/data/build/ia64-default/ref/usr/ports/zzz: Read-only file system
# 

Is this something to do with various "allow.mount.no***" below?

# jls
   JID  IP Address      Hostname                      Path
    34  -               ia64-default                  /pdr/data/build/ia64-default/ref
# jls -n
devfs_ruleset=0 nodying enforce_statfs=2 host=new ip4=inherit ip6=inherit jid=34
 name=ia64-default parent=0 path=/pdr/data/build/ia64-default/ref persist securelevel=-1
 allow.chflags
 allow.nomount allow.mount.nodevfs allow.mount.nonullfs allow.mount.noprocfs allow.mount.notmpfs
       ^^^^^^^             ^^^^^^^             ^^^^^^^^             ^^^^^^^^             ^^^^^^^
 allow.mount.nozfs
             ^^^^^
 allow.noquotas allow.raw_sockets allow.set_hostname allow.socket_af allow.sysvipc children.cur=0 children.max=0 cpuset.id=2 host.domainname="" host.hostid=0 host.hostname=ia64-default host.hostuuid=00000000-0000-0000-0000-000000000000 ip4.addr= ip4.saddrsel ip6.addr= ip6.saddrsel
#

Am I on the right track at least?

Many thanks

Anton



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201310251524.r9PFOkC5002129>