Apakah ada cara untuk menambahkan aplikasi / skrip ke startup Linux sehingga setiap kali sistem boot itu akan dieksekusi?
Saya mencari beberapa cara otomatis, yaitu pengguna tidak boleh menambahkan ini dengan pekerjaan cron atau sesuatu seperti itu.
Jawaban:
Sesuatu seperti Cron ?
Perhatikan
@reboot
entriIni adalah pendekatan yang paling fleksibel, dan yang paling mirip dengan Windows "Tugas Terjadwal" (sebenarnya lebih baik).
sumber
/etc/cron.d
, atau panggil crontab dari program Anda tanpa mereka sadari.Xorg mulai otomatis
Terlepas dari skrip startup tingkat sistem, lingkungan desktop Anda mungkin memiliki caranya sendiri untuk menjalankan program. Folder
.config/autostart
ini seharusnya menjadi cara netral untuk mendefinisikan entri autorun di desktop./etc/xdg/autostart
adalah untuk konfigurasi seluruh sistem. Rincian tentang spesifikasi di http://developer.gnome.org/autostart-spec/ .Untuk entri autostart LXDE juga dapat diatur
~/.config/lxsession/LXDE/autostart
.Ini sedikit berbeda jika Anda perlu menjalankan skrip Anda setelah jaringan aktif dan berjalan. Dalam hal ini Anda harus memeriksa skrip post-connect khusus yang dapat ditentukan untuk manajer jaringan Anda. Kedua NetworkManager dan Wicd memiliki cara mereka sendiri menentukan entri autorun pasca-connect. Jika jaringan dikonfigurasi melalui
ifupdown
, maka skrip post-up dapat ditempatkan di/etc/network/if-up.d/
folder. Tetapi pendekatan yang lebih baik untuk menjalankan skrip post-connect mungkin systemd (untuk sistem yang mendukungnya, yang merupakan mayoritas dari distro modern).Mulai otomatis sebagai layanan systemd
Jika hal yang ingin Anda autostart bukan aplikasi grafis yang memerlukan desktop maka yang terbaik adalah menghindari menggunakan fasilitas autostart yang disediakan oleh xorg atau oleh lingkungan desktop Anda saat ini.
systemd
telah menjadi mana-mana di banyak distro modern, dan ia menawarkan banyak kontrol dan fleksibilitas dalam hal bagaimana layanan Anda dimulai dan bagaimana mereka dijalankan.Saya akan merangkum beberapa manfaat ( systemd dapat melakukan lebih banyak ):
User=myuser
Restart=on-failure|on-watchdog|on-abnormal|always
Type=simple|forking|oneshot|notify|dbus
Wants=network-online.target
di[Unit]
bagian).Contoh layanan yang memulai daemon telegram-cli. Tempatkan dalam
/etc/systemd/system/tg.service
.Sekarang Anda dapat mengaktifkan layanan untuk memulai kembali secara otomatis:
Mulai layanan:
Hentikan layanan:
Periksa status:
Nonaktifkan layanan:
Untuk menghemat Anda mengetik tambahan, Anda dapat menambahkan di
~/.bashrc
barisalias sc='sudo systemctl $*'
Anda maka Anda akan dapat mempersingkat perintah di atas untuk misalnyasc start tg
.Info lebih lanjut:
sumber
Ya, adalah mungkin untuk menjalankan program saat startup di Linux dengan mendefinisikan path ke executable
rc.local
yang berada di direktori/etc
atau/etc/rc.d
, misalnya:Catatan: jangan lupa untuk memberikan hak yang dapat dieksekusi seperti yang dijelaskan dalam dokumentasi file, yaitu
Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure that this script will be executed during boot.
sumber
cron
penjadwal adalah teman Anda.Startup applications
menggunakan tombol homeAdd
Startup command box
masukkan perintahOK
(Anda akan melihat perintah baru Anda dalam daftar)Close
Tes dengan memulai kembali atau keluar dan kembali.
Sumber: https://help.ubuntu.com/community/AddingProgramToSessionStartup
sumber
Setiap distribusi menggunakan masing-masing teknik bootstrap sendiri, jadi perlu melihat dokumen untuk distro Anda. /etc/rc.local adalah tempat di mana Anda dapat meletakkan beberapa skrip otomatis, tetapi ini benar-benar ketinggalan zaman. Sekarang sebagian besar sistem berbasis linux menggunakan runlevels atau systemd bootstraping, sehingga sebagian besar pekerjaan autostarted dapat dikontrol dengan baik.
sumber
Saya menemukan jawaban saya di sini: /programming/7221757/run-automatically-program-on-startup-under-linux-ubuntu saya dapat membuat file / skrip untuk mematikan trackpad saya saat saya di sesi Linux Ubuntu 12.10 saya.
sumber