在 Debian 上打开 /dev/shm 后,thunderbird 在 libxul.so 中启动时崩溃

在 Debian 上打开 /dev/shm 后,thunderbird 在 libxul.so 中启动时崩溃

我无法Thunderbird启动我的 Debian 机器。该thunderbird软件包来自“buster”。

我以前从来没有尝试过让它工作——这是第一次。 Firefox工作正常。

以下是我从命令行运行它时得到的结果:

$ thunderbird
ExceptionHandler::GenerateDump cloned child 19926
ExceptionHandler::SendContinueSignalToChild sent continue signal to child
ExceptionHandler::WaitForContinueSignal waiting for continue signal...

如果我通过运行 thunderbird-bin ,它会在打开strace文件后立即崩溃:/dev/shm

openat(AT_FDCWD, "/dev/shm/org.chromium.4Awtde", O_RDWR|O_CREAT|O_EXCL, 0600) =
-1 EACCES (Permission denied)
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0} ---

/dev/shm看起来不错:

$ ls -lsdt /dev/shm/
0 drwxrwxrwt 2 root root 120 May 25 13:40 /dev/shm//

ulimit输出:

$ ulimit -a
core file size          (blocks, -c) 200000
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 30450
max locked memory       (kbytes, -l) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 95
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1024
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

当我通过 gdb 运行它时,它在 libxul 中崩溃:

Program received signal SIGSEGV, Segmentation fault.
0x00007fbc882e85d1 in ?? () from /usr/lib/thunderbird/libxul.so
(gdb) where
#0  0x00007fbc882e85d1 in ?? () from /usr/lib/thunderbird/libxul.so
#1  0x00007fbc8715879e in ?? () from /usr/lib/thunderbird/libxul.so
#2  0x00007fbc871b552c in ?? () from /usr/lib/thunderbird/libxul.so
#3  0x00007fbc8744995e in ?? () from /usr/lib/thunderbird/libxul.so
#4  0x00007fbc87a87fb7 in ?? () from /usr/lib/thunderbird/libxul.so
#5  0x00007fbc892a3ed2 in ?? () from /usr/lib/thunderbird/libxul.so

我不知道该怎么做才能让它工作。

答案1

这个问题似乎和发布在https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949450

解决办法是

sudo ln -s /etc/apparmor.d/usr.bin.thunderbird /etc/apparmor.d/disable/usr.bin.thunderbird
sudo apparmor_parser -R /etc/apparmor.d/usr.bin.thunderbird

现在,它运行正常。

不确定为什么最新的修复程序/etc/apparmor.d/usr.bin.thunderbird没有1:68.8.0-1~deb10u1修复它。显然,禁用apparmorthunderbird唯一的解决方法。

相关内容