bind-mounting files in mock

Clark Williams williams at redhat.com
Fri Mar 27 15:37:42 UTC 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Wow, that's bizarre (but works). :)

It's not described in the man page, so I'm a bit leery about depending
on that behavior. That being said, it's not a normal use-case for mock
builds, so it'll probably only bite the livecd creation stuff it the
bind-mount behavior changes. 

Ok, I'll pull it in for the next release.

Clark


On Fri, 27 Mar 2009 10:39:54 -0400
Jay Greguske <jgregusk at redhat.com> wrote:

> Hi Clark,
> 
> If you're bind mounting a file, you have to bind it to an existing file, 
> not a directory. Try touching /dev/myloop first, and then mounting the 
> real loop device to it.
> 
> Thanks,
> -jay
> 
> 
> Clark Williams wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > On Wed, 18 Mar 2009 14:52:35 -0400
> > Jay Greguske <jgregusk at redhat.com> wrote:
> >
> >   
> >> Hello,
> >>
> >> While trying to get livecd-creator working in a mock-built chroot, I 
> >> discovered that only directories could be bind-mounted using the 
> >> bind_mount plugin. I made a few code changes and attached a patch for 
> >> your consideration that enables the bind-mounting of files. Like 
> >> directories, the bind-mounting of files will require 
> >> 'internal_dev_setup' be set to False, otherwise the mount command will fail.
> >>
> >> In the chroot configuration file the following syntax would be allowed 
> >> (which looks just like that which was used for bind-mounting directories):
> >>
> >> config_opts['plugin_conf']['bind_mount_opts']['files'].append(('/dev/loop0', 
> >> '/dev/loop0'))
> >>
> >> Please let me know what you think, and thanks in advance for your time!
> >>
> >> - Jay
> >>     
> >
> > Jay,
> >
> > Finally got some time to pull in mock patches and work on bugs. Sorry
> > it's taken this long...
> >
> > I'm not seeing how your stuff would work. A bind-mount only works on
> > directories, not files. If I try to bind-mount /dev/loop0 somewhere by
> > hand I get the following:
> >
> > $ mkdir -p /tmp/foo && cd /tmp/foo
> > $ sudo mount -n --bind /dev/loop0 .
> > mount: Not a directory
> > $ mkdir dev
> > $ sudo mount -n --bind /dev/loop0 dev
> > mount: Not a directory
> >
> > What am I missing here?
> >
> > Clark
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v2.0.9 (GNU/Linux)
> >
> > iEYEARECAAYFAknM5GYACgkQHyuj/+TTEp1CWQCgsPClxT4qV2XCQx3oyHihhBlE
> > t9UAoIekmO6wJCgp9T+OwukEguLJ21Qz
> > =63u9
> > -----END PGP SIGNATURE-----
> >   
> 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAknM8swACgkQHyuj/+TTEp2i/QCfZa1y4KBC2z4A3ZP9+rO8muZF
Q3gAoItg2iK5NMf9vnfVLgaT4BSTWhLC
=j3Sw
-----END PGP SIGNATURE-----




More information about the Fedora-buildsys-list mailing list