Gdzie są przechowywane polecenia uruchamiania?

45

Gdy przejdziesz do „Aplikacje startowe”, zobaczysz listę poleceń wykonywanych podczas uruchamiania i możesz dodać własne.

Chciałbym wiedzieć, gdzie jest przechowywana ta lista. Czy to gdzieś w gconf?

Są dwa powody, dla których chcę to wiedzieć:

  • dodawać polecenia programowo
  • wyłącz niektóre polecenia (w Oneiric te domyślne nie są już wyświetlane)
scribu
źródło

Odpowiedzi:

49

Zgodnie ze specyfikacją autostartu aplikacji komputerowej , którą przestrzegają Ubuntu i wszystkie główne środowiska graficzne, takie jak Gnome, LXDE, XFCE, aplikacje startowe są .desktopplikami przechowywanymi na użytkownika

~/.config/autostart

A także globalnie, dla wszystkich użytkowników, w

/etc/xdg/autostart

(jest to uproszczenie, rzeczywiste katalogi są określone przez XDG Base Directory Specification )

Funkcja włączania / wyłączania zapewnia ten atrybut w każdym .desktoppliku:

X-GNOME-Autostart-enabled=true (or false)

Jeśli użytkownik przełącza włączanie / wyłączanie stanu danej aplikacji (bez usuwania), która była w folderze systemowym, jest ona kopiowana do katalogu użytkownika, a następnie atrybut X-GNOME-Autostart-enabledjest zmieniany. Jeśli użytkownik usunie daną aplikację z listy, pulpit .desktop zostanie skopiowany do folderu użytkownika z Hidden=trueatrybutem (lub plik zostanie po prostu usunięty, jeśli był obecny tylko w katalogu użytkownika)

Pliki w folderze użytkownika i systemowym nie muszą być oznaczane jako pliki wykonywalne. Domyślne uprawnienie to 644 (rw-r - r--). Uprawnienia do .desktopplików wykonywalnych są przydatne tylko w programach uruchamiających w obszarze pulpitu (obszar roboczy), więc pokazują ich ikonę i umożliwiają dwukrotne kliknięcie, aby uruchomić aplikację. W przypadku Dasha, Launchera, Autostartu i menu bit wykonywalny jest nieistotny.

MestreLion
źródło
2
Dzięki, to było pomocne. Te same ścieżki działają również w Kubuntu.
ctd
@ctd: (większość) powinien również działać na innych komputerach, takich jak XFCE i LXDE, ponieważ jest to standard stworzony przez FreeDesktop.org i mający na celu kompatybilność z wieloma komputerami.
MestreLion
Niesamowite! Oznacza to, że można użyć aplikacji startowych do zamontowania zaszyfrowanych kontenerów veracypt, a polecenie zawierające klucz byłoby bezpieczne w zaszyfrowanym katalogu domowym użytkownika. Musieliby tylko użyć visudo, aby zezwolić rootowi na veracrypt bez hasła dla tego użytkownika.
nhorning
Cóż, szukałem i próbowałem wielu alternatyw, ale tylko plik na pulpicie /etc/xdg/autostartdziałał dla mnie w Bionic Beaver (18.04). Dzięki!
Arthur Henrique Della Fraga
1
@ArthurHenriqueDellaFraga, właśnie przetestowałem i ~/.config/autostartnadal obowiązuje dla Ubuntu 18.04. Spróbuj dodać dowolny program uruchamiający za pomocą Startup Applications(wyszukaj go w swoich aplikacjach), a tam utworzy się .desktopplik
MestreLion
6

Używam xfcei znalazłem większość poleceń autostartu związanych z systemem, takich jak

power-managers, gnome-keyring, ubuntuone, blueman etc

są przechowywane, /etc/xdg/autostartpodczas gdy większość autostartu specyficznego dla użytkownika znajduje się w

$USER/.config/autostart Możesz rzucić okiem na te 2 miejsca.

sagarchalizować
źródło
/ etc / xdg / autostart są dla systemu i będą działać dla wszystkich użytkowników
Pavak Paul
4

W KDE to jest

~ / .kde / Autostart

Zostało to amortyzowane, KDE Plasma jest teraz zgodne ze specyfikacją XDG. Systemowy katalog startowy znajduje się w, /etc/xdg/autostarta specyficzny dla użytkownika w~/.config/autostart

Mam tam skrypt, który uruchamia Krusadera:

 #!/bin/bash
 krusader &

Nie zapomnij stworzyć skryptów, które umieścisz w Autostart - aby były one wykonywalne.

Cegła suszona na słońcu
źródło
2
KDE miało swoje własne katalogi autostartu, ale obecnie są zgodne ze specyfikacją XDG. Być może ~/.kde/Autostartnadal działa, ale dla kompatybilności krzyżowej lepiej jest użyć katalogów
XDG