Pertanyaan Bagaimana cara kerja "Aplikasi Startup"?


Saya tertarik untuk mengetahui bagaimana "Aplikasi Startup", yang dapat Anda akses dari dermaga, 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. Apa yang membingungkan saya adalah bahwa saya tidak melihat program membuat entri apa pun dalam file yang disebutkan di atas.


10
2018-05-24 13:58


asal




Jawaban:


  • /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, Multiuser Runlevel berarti ketika Anda melakukan boot.

  • /etc/profile

    File ini hanya dipanggil untuk shell login karena itu adalah tujuan spesifiknya.

    /etc/profile, dijalankan oleh semua cangkang yang kompatibel dengan Bourne (termasuk bash dan 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.
    

    Keduanya ~/.bashrc dan ~/.bash_profile adalah skrip yang dapat dieksekusi ketika bash dipanggil. Itu ~/.bashrc file dijalankan ketika Anda menjalankan bash menggunakan shell interaktif yang bukan shell login. Itu ~/.bash_profile hanya dijalankan selama shell login.

    Sumber

    Jadi saya pikir .profile dijalankan jika tidak ada yang (untuk alasan apa pun).

  • Akhirnya, metode GUI Anda mungkin menempatkan .desktop peluncur di /home/$USER/.config/autostart

    Ini dijalankan di logon pengguna (hanya login GUI yang saya kira - jadi startx akan tetapi tidak tty masuk).


8
2018-05-24 14:12



Tidak akan. Perintah profil dijalankan di GUI login? - daltonfury42
@ user3073656 hmmm apa aplikasi GUI yang disebut? - Tim
Maaf, kesalahan ceroboh! Kamu benar. - daltonfury42
@ user3073656 diedit - Tim


Setiap lingkungan desktop mengikuti spesifikasi freedesktop (alias XDG) harus digunakan aplikasi autostarting pada login pengguna atau kapan pun removable medium dimasukkan.

Untuk autostarting aplikasi di login pengguna lingkungan desktop mencari a .desktop file untuk mengeksekusi aplikasi yang ditentukan di sana. Ini .desktop file biasanya berada 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

Bagaimanapun juga a .desktop file berada di ~/.config/autostart didefinisikan sebagai file yang paling penting untuk dijalankan sehingga menimpa .desktop file di lokasi lain.

Ubuntu memenuhi spesifikasi ini dan pengguna dapat menambahkan aplikasi dengan pendekatan GUI ke "Aplikasi Mulai Otomatis".

Aplikasi dapat dimulai secara otomatis dari desktop dari berbagai lokasi lain seperti ~/.profile untuk shell, di /etc/rc.local untuk berjalan pada awal sistem atau, lebih baru dengan menggunakan systemd.


8
2018-05-24 15:07



Menambahkan perintah dengan cara ini adalah yang terbaik karena ini benar-benar tidak membutuhkan waktu ketika dibandingkan dengan file .profile di mana kita menambahkan perintah startup kita. Saya telah menguji keduanya pada dell inspiron 7560 saya dengan ubuntu 16.04 dan cara ini tampaknya lebih baik. - Jasser
Saya juga menduga ini lebih baik daripada mengedit file / etc / profile karena hanya dipanggil untuk shell login yang setelah lingkungan desktop dimulai. Yup, diuji itu juga. Saya benar. - Jasser