证据打开很慢

证据打开很慢

自从我更新了 debian 以来,evince启动速度一直很慢 - 大约需要半分钟。打开后,一切正常,就是打开速度慢。过去从来没有花那么长时间——过去只需要几秒钟。我怎样才能让它再次快速运转?

$ uname -a
Linux mypc 5.10.0-9-amd64 #1 SMP Debian 5.10.70-1 (2021-09-30) x86_64 GNU/Linux

我注意到它evince在以下行挂了大约半分钟:

$ strace evince
...
eventfd2(0, EFD_CLOEXEC|EFD_NONBLOCK)   = 11                                    
write(11, "\1\0\0\0\0\0\0\0", 8)        = 8                                     
write(10, "\1\0\0\0\0\0\0\0", 8)        = 8                                     
futex(0x562f5b8ffac0, FUTEX_WAKE_PRIVATE, 1) = 1                                
futex(0x562f5b909b30, FUTEX_WAKE_PRIVATE, 1) = 1                                
futex(0x562f5b8bd158, FUTEX_WAKE_PRIVATE, 1) = 1                                
poll([{fd=11, events=POLLIN}], 1, 25000) = 1 ([{fd=11, revents=POLLIN}])        
read(11, "\1\0\0\0\0\0\0\0", 16)        = 8                                     
poll([{fd=11, events=POLLIN}], 1, 25000) = 0 (Timeout) # <- hanging here for a while

然后它继续evince正常打开,evince然后工作正常。

我有自己的.xinitrc,我不确定我是否配置正确 - 所以这可能是问题所在:

$ cat ~/.xinitrc 
#!/bin/bash

# update the xterm colors, font size, etc
[[ -f ~/.Xresources ]] && xrdb -merge ~/.Xresources

# run the window manager in the background first
metacity &

# get the window manager process id
wm_pid=$!

# make the window manager process id available to kill later if required
export wm_pid

# run urxvt instead of xterm since this seems able to render greek symbols etc
urxvt &

# do not let the window manager become a zombie
wait $wm_pid

然后startx从 调用.bashrc。相关部分是:

$ tail -20 ~/.bashrc

# go straight to x on login. only do this for tty1 so that we can still use the
# other tty consoles without starting x. also only do this when there is no
# display, otherwise the terminal will try and do this after x starts aswell.
# finally, only do it when x is installed (command -v startx checks if startx
# exists).
# note: as of xorg-server 1.16, x is rootless but can only be started on the
# current vt (1)
[[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]] && \
command -v startx > /dev/null 2>&1 && \
startx -- :0 vt1

# if using rxvt or urxvt immediately set the window to fullscreen
if [[ $TERM == *"rxvt"* ]]; then
    # make the window with rxvt in the name the active window
    wmctrl -a rxvt

    # make the active window fullscreen
    wmctrl -r ":ACTIVE:" -b add,fullscreen
fi

编辑:添加一些 dbus 信息

$ ls -l ~/.dbus/session-bus/
total 28
-rw-r--r-- 1 me me 465 Nov  8 06:23 c984eb16cbd294a01d56c2ac523f7100-0
-rw-r--r-- 1 me me 465 Nov  6 14:11 c984eb16cbd294a01d56c2ac523f7100-1
-rw-r--r-- 1 me me 476 Apr 24  2017 c984eb16cbd294a01d56c2ac523f7100-10
-rw-r--r-- 1 me me 465 Jun  5  2017 c984eb16cbd294a01d56c2ac523f7100-100
-rw-r--r-- 1 me me 476 Apr  7  2017 c984eb16cbd294a01d56c2ac523f7100-11
-rw-r--r-- 1 me me 465 Nov  6 14:37 c984eb16cbd294a01d56c2ac523f7100-2
-rw-r--r-- 1 me me 463 May  6  2016 c984eb16cbd294a01d56c2ac523f7100-3
$ echo $DBUS_SESSION_BUS_ADDRESS
# empty!

相关内容