Saya mencoba menjalankan skrip ketika Raspberry Pi saya melakukan booting. Saya ingin browser web terbuka secara otomatis.
Saya telah mencoba menemukan solusi sederhana, (seperti meletakkan skrip saya di direktori "startup" atau yang serupa), tetapi saya tidak melihat yang seperti itu.
Saya telah melihat ke pemula , tetapi saya berjuang untuk memahami bagaimana itu bekerja. Setiap skrip yang saya coba belum berfungsi saat saya mengujinya.
.xinitrc
atau Anda.xsession
.Jawaban:
Untuk menjalankan Midori saat startup, lihat tutorial ini . Untuk solusi DIY, baca terus.
Anda dapat menambahkan perintah skrip yang dapat dieksekusi ke bagian bawah skrip
.bashrc
yang akan menjalankan skrip Anda setiap kali membuka terminal (atau menjalankan instance barubash
) .Pastikan Anda berada di
pi
folder:Buat file dan tulis skrip untuk dijalankan di file:
Menyimpan dan keluar: Ctrl+ X, Y,Enter
Buka
.bashrc
untuk konfigurasi:Gulir ke bawah ke bawah dan tambahkan baris:
./superscript
Menyimpan dan keluar: Ctrl+ X, Y,Enter
Jika Anda mencari solusi yang berfungsi saat boot ke konsol , lihat tautan ini . Ikhtisar dasar:
Buat file untuk skrip startup Anda dan tulis skrip Anda di file:
Menyimpan dan keluar: Ctrl+ X, Y,Enter
Jadikan skrip dapat dieksekusi:
Daftarkan skrip untuk dijalankan saat startup:
Jika Anda ingin skrip dijalankan ketika Anda boot ke lingkungan LXDE , Anda bisa melihat posting forum Raspberry Pi ini :
Navigasi ke
~/.config/lxsession/LXDE-pi
Buka
autostart
file di folder itu:Tambahkan
@midori
pada baris baru. Jika Anda ingin menjalankan sesuatu seperti skrip python, letakkan sesuatu seperti@python mypython.py
di baris baru. Menjalankan file skrip mungkin@./superscript
, tetapi karena beberapa alasan skrip berjalan dalam loop tak terbatas (mungkin ini akan menghentikannya).Menyimpan dan keluar: Ctrl+ X, Y,Enter
Mulai ulang Raspberry Pi Anda ke lingkungan LXDE.
sumber
$ sudo startx
?.bashrc
tidak dibaca ketika sistem melakukan boot atau ketika pengguna masuk , hanya ketika membuka terminal baru (dan itu dibaca setiap kali pengguna membuka terminal baru). Saya bingung bahwa jawaban ini mendapat begitu banyak upvotes: bagian pertama jelas salah . Bagian ketiga benar untuk menjalankan program GUI.Cara yang saya lihat kebanyakan orang melakukannya (lihat di forum Raspberry Pi), dan telah berhasil dengan sukses
/etc/rc.local
.Yang perlu Anda lakukan di sini adalah memasukkan
./myscript
file teks rc.local. Jika itu dalam python, masukkanpython myscript.py
.Ini secara harfiah adalah "solusi sederhana, (seperti meletakkan skrip saya di beberapa direktori" startup "atau yang serupa)" - mungkin mencari di forum ketika Anda memiliki pertanyaan, solusi ini muncul pada 4 hasil pertama dari pencarian Google!
sumber
python myscript.py
. Jika Anda ingin chmod + x dan menambahkan#! /bin/python
, Anda dapat menjalankan skrip dengan melakukan di$pathtofile/myscript.py
mana$pathtofile
adalah.
jika Anda berada di direktori yang sama atau jalur absolut atau relatif ke file./etc/rc.local
hanya untuk memulai layanan sistem (program yang tidak memiliki antarmuka pengguna).Tambahkan ke crontab
Crontab menjalankan perintah pada waktu yang ditentukan.
Edit file:
Tambahkan baris ke file (di sini skrip python):
sumber
python3
), lihat di sini/etc/rc.local
hanya untuk memulai program yang tidak memiliki antarmuka pengguna.Memulai ulang aplikasi xorg
Jika skrip yang ingin Anda mulai memerlukan sesi xorg maka Anda dapat mencoba mengikuti spec autostart freedesktop yang mungkin atau mungkin tidak berfungsi tergantung pada lingkungan desktop yang Anda gunakan.
Atau, Anda dapat menargetkan lingkungan desktop spesifik Anda seperti yang dijelaskan di https://wiki.archlinux.org/index.php/autostarting .
Menjalankan skrip sebagai layanan systemd
Jika skrip Anda cocok dengan deskripsi daemon atau 'layanan', dan sistem Anda menjalankan systemd yang merupakan kasus untuk raspbian dan linuces paling modern, maka Anda dapat mengonfigurasi skrip Anda untuk dijalankan sebagai layanan systemd - ini memberikan kontrol granular atas siklus hidup dan lingkungan eksekusi, serta prasyarat untuk memulai kembali skrip, seperti jaringan yang sedang berjalan dan berjalan. Dimungkinkan juga untuk mengkonfigurasi restart layanan jika terjadi kegagalan (
Restart=always
, dan penundaan antara restart misalnyaRestartSec=10
).Untuk penggunaan seluruh sistem, buat file unit sistemd Anda di bawah
/etc/systemd/system
, misalnya denganvim /etc/systemd/system/autossh.service
:Lihat juga:
[
unit
] konfigurasi[
service
] konfigurasiSekarang kami siap untuk menguji layanan:
Memeriksa status layanan:
Menghentikan layanan:
Setelah Anda memverifikasi bahwa layanan berfungsi seperti yang diharapkan, aktifkan dengan:
sumber
Saya ingin memasukkan dua sen saya, meskipun ini adalah pertanyaan lama tetapi umumnya diminta untuk melakukan hal sederhana - autostart. Saya mencoba semua solusi yang disarankan di semua jawaban untuk pertanyaan ini. Tidak satu pun dari mereka yang bekerja untuk saya. Saya menggunakan Raspberry PI Model 2 dengan Raspbian.
Satu-satunya cara agar aplikasi saya berhasil autostart berhasil adalah melalui skrip sebagai berikut. Saya katakan berhasil karena aplikasi saya mulai seperti yang diharapkan tanpa ada masalah seperti memulai dengan jalur kerja yang salah.
1. Buat file kosong dengan ekstensi .sh dan beri nama apa pun yang Anda inginkan.
2. Salin dan Rekatkan berikut ini PERSIS kecuali mengubah "nama aplikasi Anda" menjadi nama skrip yang baru saja Anda buat.
Kemudian, simpan file skrip dalam folder aplikasi Anda
Lalu, buka
/home/pi/.config/autostart
folder. Mungkin berbeda dalam kasus Anda. Cukup buka folder rumah Anda dan aktifkan tampilan folder tersembunyi. buka.config/autostart
. Jika Anda tidak melihat folder autostart, lalu buat folder bernama autostart dalam folder .config.dalam folder autostart Anda perlu membuat pintasan ke file skrip yang Anda buat sebagai berikut. Buat file kosong dengan ekstensi
.desktop
.Copy dan paste berikut di file desktop yang kosong kecuali Anda akan perlu mengubah
Comment
,Name
,Exec
,Path
danIcon
nilai lapangan.Simpan dan tutup file setelah mengubah semua bidang yang diperlukan. Kamu selesai. Coba saja.
sumber
/usr/local/bin/ApplicationName
...?home
jika itu adalah perangkat terpisah) tidak akan ada masalah dengan skrip (atau file yang dapat dieksekusi) tidak tersedia saat file sistem gagal kembali ke/bin/sh
shell pengguna tunggal ! Saat inisystemd
caranya adalah dengan memasang keduanya/
dan/usr
sebelum PID 1 dimulai ...Saya juga mengalami masalah dengan ini. Pada Raspberry Pi3 menjalankan Raspbian inilah yang saya lakukan:
sumber
Pada Raspberry Pi3 yang menjalankan Peregangan Raspbian, inilah yang saya lakukan:
Edit file autostart LXDE-pi
Tambahkan ini ke bagian bawah file itu
simpan & reboot
sumber
Metode 1:
Untuk meluncurkan perintah secara otomatis saat login, masukkan perintah ke file bernama
dalam direktori pengguna (misalnya / home / pi)
Misalnya, file tersebut dapat berisi
untuk meluncurkan Chromium di layar penuh yang diarahkan ke www.google.com
Metode 2:
Solusi ini bekerja dengan sangat baik. Setelah browser memuat ada kotak hitam kecil di kiri atas layar yang tampaknya menjadi bug umum (yang disebutkan di forum oleh orang lain) tetapi sebaliknya mode layar penuh menyembunyikan semuanya kecuali halaman browser.
Edit file autostart:
Mengomentari semuanya menggunakan '#' di awal setiap baris dan kemudian tambahkan baris berikut
Jalankan browser secara otomatis
Jika perlu gunakan alat konfigurasi untuk mengaktifkan GUI pada powerup secara otomatis
Jika Anda perlu keluar kembali ke command prompt CTRL+ ALT+F1
CTRL+ ALT+F2
sumber
Anda dapat menempatkan skrip Anda di bagian bawah
/etc/profile
file.Opsi lain tidak berfungsi untuk saya, tetapi ini mungkin karena saya meletakkan skrip saya di desktop.
sumber
buat file .sh dengan perintah 'python /path/to/your/script.py' ketik 'sudo nano /etc/rc.local' dan ketikkan path ke file .sh
sebelum
Atau Anda bisa mengetik
atau
jika Anda ingin skrip dijalankan saat startup
di dalam tipe file di
sumber
itu BEKERJA. (Pada setiap boot ulang, siapkan pengiriman berikut ini secara otomatis)
sumber
Inilah yang biasanya saya lakukan.
Edit file:
sudo nano .bashrc
Pergi ke akhir file dan tulis:
sudo python mycode.py
Jika Anda ingin output disimpan dalam file txt, edit kode pada Langkah 3 sebagai berikut:
sudo python mycode.py >> output.py
Semoga ini membantu!
sumber