Bagaimana cara kerja "Aplikasi Permulaan"?

10

Saya tertarik mengetahui bagaimana "Aplikasi Startup", yang dapat Anda akses dari dock, berfungsi.

Saya ingin tahu ini karena saya ingin tahu perbedaan antara menambahkan entri di tempat-tempat ini:

/etc/rc.local 
/etc/profile  
/home/$USER/.profile

dan melakukan hal yang sama melalui aplikasi GUI ini. Yang membingungkan saya adalah saya tidak melihat program membuat entri dalam file yang disebutkan di atas.

daltonfury42
sumber

Jawaban:

8
  • /etc/rc.local

    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    

    Pada dasarnya Multilever Runlevel berarti ketika Anda boot.

  • /etc/profile

    File ini dipanggil hanya untuk shell login karena itulah tujuan spesifiknya.

    /etc/profile, dijalankan oleh semua shell yang kompatibel dengan Bourne (termasuk bashdan dash) ketika dimulai sebagai shell login.

  • /home/$USER/.profile

    # ~/.profile: executed by the command interpreter for login shells.
    # This file is not read by bash if ~/.bash_profile or ~/.bash_login
    # exists.
    

    Baik ~/.bashrcdan ~/.bash_profileskrip yang dapat dijalankan ketika pesta dipanggil. The ~/.bashrcfile akan dijalankan ketika Anda menjalankan bash menggunakan shell interaktif yang tidak shell login. Satu- ~/.bash_profilesatunya dieksekusi selama shell login.

    Sumber

    Jadi saya pikir .profileakan dieksekusi jika tidak satupun dari mereka (untuk alasan apa pun).

  • Akhirnya, metode GUI Anda mungkin memasukkan .desktoppeluncur/home/$USER/.config/autostart

    Ini dijalankan pada pengguna logon (GUI masuk hanya saya pikir - begitu startxjuga tidak ttymasuk).

Kata ganti saya adalah Dia / Dia

Tim
sumber
Tidak akan. Perintah profil dijalankan pada login GUI?
daltonfury42
@ user3073656 hmmm apa nama aplikasi GUI?
Tim
Maaf, kesalahan ceroboh! Kamu benar.
daltonfury42
@ user3073656 diedit
Tim
8

Setiap lingkungan desktop yang mengikuti spesifikasi freedesktop (alias XDG) harus menggunakan aplikasi autostarting pada login pengguna atau setiap kali media yang dapat dilepas dimasukkan.

Untuk memulai ulang aplikasi secara otomatis saat pengguna masuk, lingkungan desktop mencari .desktopfile untuk menjalankan aplikasi yang ditentukan di sana. .desktopFile-file ini biasanya terletak di

$XDG_CONFIG_DIRS/autostart

Tetapi kami juga dapat memilikinya di lokasi berikut:

~/.config/autostart/ ## if $XDG_CONFIG_HOME is not set
etc/xdg/autostart/ ## if $XDG_CONFIG_DIRS is not set

Dalam setiap kasus .desktopfile yang terletak di ~/.config/autostartdidefinisikan sebagai file yang paling penting untuk dijalankan sehingga menimpa .desktopfile di lokasi lain.

Ubuntu memenuhi spesifikasi ini dan pengguna dapat menambahkan aplikasi dengan pendekatan GUI ke "Autostart Applications".

Aplikasi dapat dimulai secara otomatis dari desktop dari berbagai lokasi lain seperti ~/.profileuntuk shell, /etc/rc.localuntuk berjalan pada saat sistem dimulai atau, lebih baru dengan menggunakan systemd .

Takkat
sumber
Menambahkan perintah dengan cara ini adalah yang terbaik karena ini benar-benar tidak membutuhkan waktu bila dibandingkan dengan file .profile tempat kami menambahkan perintah startup kami. Saya telah menguji keduanya pada dell inspiron 7560 saya dengan ubuntu 16.04 dan cara ini tampaknya lebih baik.
Jasser
Saya juga kira ini lebih baik daripada mengedit file / etc / profile karena hanya dipanggil untuk shell login yang setelah lingkungan desktop dimulai. Yup, mengujinya juga. Saya benar.
Jasser