自动启动延迟?大约需要 90 秒

自动启动延迟?大约需要 90 秒

登录后,我希望我的自动启动应用程序能够立即启动,但它们似乎只在大约 90 秒后才启动。

我尝试用谷歌搜索,但我看到的都是想要延迟启动应用程序的人......我在寻找相反的东西。

我使用 guake(下拉终端),有时想在登录后立即点击它,但我必须等待自动启动。

这种情况已经持续了很长时间,我甚至不确定它是否是设计使然,但我想知道是否有办法立即运行它(我尝试使用 systemd,但我猜对于 X11 应用程序来说这也不太合适)。这在我的多台机器上表现相同……以前和现在的台式机和笔记本电脑,我从来没有花时间研究它,因为我可以在登录时简单地启动应用程序,它确实立即工作……但是当我让它自动启动时,它会延迟。今天我试图弄清楚,但我完全没有弄清楚如何调试它……

还尝试使用不同的应用程序(gedit)来查看是否是应用程序正在做的事情,但它的行为相同,并且从顶部看你会清楚地看到它们没有运行......然后(90 秒后)它们启动了。

~  cat ~/.config/autostart/guake.desktop                                                                                                                            seg 20 dez 2021 11:35:40
[Desktop Entry]
Name=Guake Terminal
Comment=Use the command line in a Quake-like terminal
TryExec=guake
Exec=guake
Icon=guake
Type=Application
Categories=GNOME;GTK;System;Utility;TerminalEmulator;
StartupNotify=true
X-Desktop-File-Install-Version=0.22
X-GNOME-Autostart-Delay=0
 ~  cat /etc/*elease                                                                                                                                                 seg 20 dez 2021 11:38:38
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.3 LTS"
NAME="Ubuntu"
VERSION="20.04.3 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.3 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

有人知道发生了什么事吗?

** 编辑 **

~  free -h                                                                                                                                                          qui 30 dez 2021 19:07:54
              total        used        free      shared  buff/cache   available
Mem:           31Gi       2,6Gi        25Gi        30Mi       2,9Gi        28Gi
Swap:         2,0Gi          0B       2,0Gi
 ~  sysctl vm.swappiness                                                                                                                                             qui 30 dez 2021 19:07:56
vm.swappiness = 60

登录后但在自动启动应用程序启动之前

top - 19:12:55 up 10 min,  5 users,  load average: 0,11, 0,32, 0,31
Tasks: 460 total,   1 running, 458 sleeping,   0 stopped,   1 zombie
%Cpu(s):  0,0 us,  0,4 sy,  0,0 ni, 99,6 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
MiB Mem :  32015,8 total,  27507,7 free,   1505,3 used,   3002,8 buff/cache
MiB Swap:   2048,0 total,   2048,0 free,      0,0 used.  30073,2 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                                                                                                
    832 root      20   0       0      0      0 S   1,7   0,0   0:09.37 nvidia-modeset/                                                                                                        
   6604 root      20   0   24,2g  55624  35720 S   1,3   0,2   0:01.70 Xorg                                                                                                                   
   7245 pguedes   20   0  816508  84356  49328 S   1,0   0,3   0:01.19 guake                                                                                                                  
    200 root      20   0       0      0      0 I   0,3   0,0   0:00.08 kworker/15:1-events                                                                                                    
   1517 root     -51   0       0      0      0 S   0,3   0,0   0:02.13 irq/110-nvidia                                                                                                         
   6747 pguedes   20   0 5041032 374532 112356 S   0,3   1,1   0:03.69 gnome-shell                                                                                                            
   6757 pguedes   20   0  153416   8964   7020 S   0,3   0,0   0:00.19 gesticled                                                                                                              
   7931 pguedes   20   0   12272   4156   3076 R   0,3   0,0   0:00.20 top                                                                                                                    
      1 root      20   0  168648  12748   8436 S   0,0   0,0   0:01.21 systemd                                                                                                                
      2 root      20   0       0      0      0 S   0,0   0,0   0:00.00 kthreadd                                                                                                               
      3 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_gp                                                                                                                 
      4 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 rcu_par_gp                                                                                                             
      6 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 kworker/0:0H-events_highpri                                                                                            
      7 root      20   0       0      0      0 I   0,0   0,0   0:00.04 kworker/0:1-rcu_par_gp                                                                                                 
      9 root       0 -20       0      0      0 I   0,0   0,0   0:00.00 mm_percpu_wq                                                                                                           
     10 root      20   0       0      0      0 S   0,0   0,0   0:00.00 rcu_tasks_rude_                                                                                                        
     11 root      20   0       0      0      0 S   0,0   0,0   0:00.00 rcu_tasks_trace                                                                                                        
     12 root      20   0       0      0      0 S   0,0   0,0   0:00.00 ksoftirqd/0                                                                                                            
     13 root      20   0       0      0      0 I   0,0   0,0   0:00.13 rcu_sched                                                                                                              
     14 root      rt   0       0      0      0 S   0,0   0,0   0:00.00 migration/0                                                                                                            
     15 root     -51   0       0      0      0 S   0,0   0,0   0:00.

答案1

最终我发现问题是一个守护进程(我自己编写的)导致了这个问题,因为我错过了 gnome 文档中的以下几行。

应用程序的启动阶段由其 .desktop 文件中的 X-GNOME-Autostart-Phase 键控制。如果未设置,则默认为应用程序阶段。前 4 个阶段中的应用程序在启动并运行时必须向会话管理器发出信号(通过 XSMP);会话管理器不会启动下一个阶段,直到当前阶段的每个应用程序都表明它已准备就绪。应用程序阶段中的应用程序不一定会与会话管理器通信。

并且在同一页面上稍后还出现:

在“初始化”阶段,应用程序可以以状态 0 退出,以表明已完成设置。

https://wiki.gnome.org/Projects/SessionManagement/NewGnomeSession#Startup

这意味着在初始化阶段启动的应用程序需要返回 0 以表明它们已完成设置,gnome 会话启动可以继续...否则它会超时(就像发生在我身上的情况一样)。我在文档中错过了这一点,所以我基本上是在那个阶段从那个 .desktop 启动我的守护进程 :facepalm:

修复非常简单:https://github.com/pguedes/gesticle/commit/7ad281066e77614a6a8f56cd37eef3a40fedab28#diff-80193a39279910d0f7d03cd29dba92ad660f9f167b53480f9a36e461868e8903

把答案留在这里,以防它能帮助别人调试类似的东西

相关内容