[libvirt] libvirt-1.0.2 qith lxc and /proc/meminfo
Daniel P. Berrange
berrange at redhat.com
Mon Mar 4 12:06:29 UTC 2013
On Mon, Mar 04, 2013 at 12:41:39PM +0100, Thierry Parmentelat wrote:
> Hello there
>
> I'm using libvirt-1.0.2 to spawn off linux containers
> We currently have 2 very similar setups that run on fedora 16 and f18 respectively
> And I'm seeing one weird difference concerning /proc/meminfo
> While everything is fine on the fedora16 world, on the fedora18 side here is what the container sees
>
> bash-4.2# ls /proc
> ls: cannot access /proc/meminfo: Permission denied
> 1 257 bus devices fb irq kpagecount mdstat net schedstat swaps tty
> 10 377 cgroups diskstats filesystems kallsyms kpageflags meminfo pagetypeinfo scsi sys uptime
> 15 522 cmdline dma fs kcore latency_stats misc partitions self sysrq-trigger version
> 16 542 consoles dri interrupts key-users loadavg modules pidsu slabinfo sysvipc vmallocinfo
> 18 acpi cpuinfo driver iomem keys locks mounts procprotect softirqs timer_list vmstat
> 19 buddyinfo crypto execdomains ioports kmsg lxcsu mtrr sched_debug stat timer_stats zoneinfo
>
> bash-4.2# ls -l /proc | grep meminfo
> ls: cannot access /proc/meminfo: Permission denied
> -????????? ? ? ? ? ? meminfo
>
> bash-4.2# cat /proc/meminfo
> cat: /proc/meminfo: Permission denied
Indeed that looks wrong. I suspect this is probably a bug in the way
libvirt sets up FUSE. Guess we've not set the right permissions on
the meminfo file we bind into the container
> =====
> we rebuild libvirt-1.0.2 more or less as is modulo a few features that are turned off, our specfile can be found here
> http://git.onelab.eu/?p=libvirt.git;a=blob;f=libvirt.spec
>
> the most obvious difference between both builds lies in using fuse:
> ---
> # fuse is used to provide virtualized /proc for LXC
> %if 0%{?fedora} >= 17 || 0%{?rhel} >= 7
> %define with_fuse 0%{!?_without_fuse:1}
> %endif
> ---
>
> I was wondering what exactly should be the requirements on the root context for running this properly
> In particular the fuse rpm was not pulled as part of the libvirt dependencies, which might be an omission ?
> Can I expect my problem to go away if I make sure fuse gets installed ?
We only need the fuse libraries, which are pulled in automatically by
the libvirt-daemon RPMs \
$ rpm -q libvirt-daemon --requires | grep fuse
libfuse.so.2()(64bit)
libfuse.so.2(FUSE_2.2)(64bit)
libfuse.so.2(FUSE_2.5)(64bit)
libfuse.so.2(FUSE_2.6)(64bit)
libfuse.so.2(FUSE_2.8)(64bit)
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list