erro LXC no Ubuntu Precise 12.04, não consigo encontrar apparmor, isso funcionou bem em 11.10

1

Estou recebendo este erro usando 12.04. Quando eu executo sudo lxc-execute -n foo -f lxc.example.conf ls , obtenho

/usr/lib/lxc/lxc-init: error while loading shared libraries: libapparmor.so.1: cannot open shared object file: No such file or directory

Alguma ideia de como resolver isso? Eu instalei libapparmor-dev e ainda sem sorte.

    
por Travis Reeder 12.06.2012 / 03:27

2 respostas

0

A biblioteca está no pacote libapparmor1:

% dpkg -S /usr/lib/libapparmor.so.1
libapparmor1: /usr/lib/libapparmor.so.1

E isso é na verdade uma dependência do lxc-init, que mora no pacote lxc:

% dpkg -S /usr/lib/lxc/lxc-init
lxc: /usr/lib/lxc/lxc-init

% dpkg -s lxc | grep Depends
Depends: upstart-job, libapparmor1 (>= 2.6~devel), libc6 (>= 2.14), libcap2 (>= 2.10), apparmor, bridge-utils, dnsmasq-base, iptables, rsync

Você tem uma instalação quebrada? Isso pode ajudar:

apt-get update
apt-get install -f
    
por 12.06.2012 / 13:52
0

Então, depois de algumas brincadeiras, o que acabei tentando foi copiar o libapparmor.so.1 em minha máquina host para o container convidado e parece ter funcionado. Portanto, o problema não estava na máquina host na qual eu estava tentando executar o lxc-execute. No final, para o nosso script de compilação, eu instalei o libapparmor-dev no sistema de arquivos do contêiner:

chroot $JAIL /bin/sh -c "apt-get -yf install libapparmor-dev"

Depois disso, posso executar lxc-execute nesse contêiner. $ JAIL sendo o diretório onde está localizado.

E para ler mais, aqui está um post que descobri sobre o porquê do apparmor ser uma dependência:

    
por 13.06.2012 / 10:36