O AppArmor está causando segfaults do Firefox

2

Eu percebo que esta é provavelmente uma má pergunta, mas estou preso. Depois de muito googling eu estou lutando para consertar o problema. Eu tenho tentado fazer com que o AppArmor funcione no Debian. Estou seguindo as instruções do link .

Parte da instrução me disse para fazer

sudo perl -pi -e 's,GRUB_CMDLINE_LINUX="(.*)"$,GRUB_CMDLINE_LINUX="$1 apparmor=1 security=apparmor",' /etc/default/grub
sudo update-grub
sudo reboot

Porque eu não entendi o comando perl que fiz na minha VM e agora não posso usar o Firefox, nem mesmo no modo de segurança. Eu obtenho um segfault.

Fontconfig error: Cannot load default config file

(firefox:3875): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='common'
Crash Annotation GraphicsCriticalError: |[0][GFX1]: no fonts - init: 1 fonts: 0 loader: 0 (t=0.206719) [GFX1]: no fonts - init: 1 fonts: 0 loader: 0
[3875] ###!!! ABORT: unable to find a usable font (Sans): file /tmp/buildd/firefox-47.0.1/gfx/thebes/gfxTextRun.cpp, line 1875
[3875] ###!!! ABORT: unable to find a usable font (Sans): file /tmp/buildd/firefox-47.0.1/gfx/thebes/gfxTextRun.cpp, line 1875
Segmentation fault

apt-cache policy apparmor

apparmor:
  Installed: 2.9.0-3
  Candidate: 2.9.0-3
  Version table:
     2.10.95-4~bpo8+2 0
        100 http://ftp.uk.debian.org/debian/ jessie-backports/main amd64 Packages
 *** 2.9.0-3 0
        500 http://ftp.uk.debian.org/debian/ jessie/main amd64 Packages
        500 http://mirror.bytemark.co.uk/debian/ jessie/main amd64 Packages
        100 /var/lib/dpkg/status

ls -l em /etc/fonts/fonts.conf retorna o seguinte:

-rw-r--r-- 1 root root 5533 Nov 23 2014 /etc/fonts/fonts.conf

Eu tentei exportar o caminho de configuração da fonte com o comando

export FONTCONFIG_PATH=/etc/fonts

mas isso não ajudou.

Eu sei que isso está procurando uma fonte que não existe porque verifiquei o caminho, mas agora estou em um impasse, sem ideias e não consigo mais encontrar ajuda do Google.

    
por Ben 28.07.2016 / 18:21

1 resposta

0

Eu consegui resolver o problema. A maneira como fiz isso foi editando o / etc / default / grub e alterando o GRUB_CMDLINE_LINUX de

GRUB_CMDLINE_LINUX=" apparmor=1 security=apparmor"

para

GRUB_CMDLINE_LINUX=""

Em seguida, depois de executar sudo update grub e sudo reboot , o problema foi corrigido. No entanto, isso impediu que o apparmor funcionasse, pois deu o erro:

apparmor.common.AppArmorException: 'Warning: unable to find a suitable fs in /proc/mounts, is it mounted?\nUse --subdomainfs to override.\n'

No entanto, consegui resolver isso usando os comandos do guia debian novamente.

sudo perl -pi -e 's,GRUB_CMDLINE_LINUX="(.*)"$,GRUB_CMDLINE_LINUX="$1 apparmor=1 security=apparmor",' /etc/default/grub
sudo update-grub
sudo reboot

Após a reinicialização, tentei executar o firefox e não recebi nenhum erro, e agora está tudo funcionando bem. No entanto, depois de tentar no meu pc eu comecei a ter o problema segfault novamente e essa correção não funcionou. mas depois de comparar os perfis do apparmor em /etc/apparmor.d achei que as regras do perfil eram diferentes.

Regras sobre segfaulting pc:

# Last Modified: Tue Aug  2 11:32:25 2016
#include <tunables/global>

/usr/lib/firefox/firefox {
  #include <abstractions/base>

  /usr/bin/firefox r,

}

Regras sobre o PC de trabalho:

# Last Modified: Tue Aug  2 11:32:25 2016
#include <tunables/global>

/usr/bin/firefox {
  #include <abstractions/base>
  #include <abstractions/bash>

  /bin/dash ix,
  /usr/bin/firefox r,

}

Adicionei #include <abstractions/bash> e /bin/dash ix, ao arquivo de configuração, depois mudei o caminho para /usr/bin/firefox e agora o problema foi corrigido após a reinicialização.

    
por 02.08.2016 / 13:00