Saya ingin menjalankan skrip segera setelah autentikasi lightdm saya berhasil, dan Unity saya mulai memuat. dan saya ingin menjalankan skrip saya sebagai pengguna root.
di mana skrip startup berada di Unity?
Saya ingin menjalankan skrip segera setelah autentikasi lightdm saya berhasil, dan Unity saya mulai memuat. dan saya ingin menjalankan skrip saya sebagai pengguna root.
di mana skrip startup berada di Unity?
Jawaban:
Pertama, masukkan skrip Anda /usr/bin
dan berikan izin eksekusi.
Sekarang buat file .desktop /home/[user-name]/.config/autostart/
yang menjalankan skrip Anda yang berjalan saat startup.
Contoh: - Biarkan nama file skrip Anda adalah "contoh" atau "contoh.sh"
Buat file .desktop dengan gedit dengan baris berikut dan simpan sebagai filename.desktop di /home/[user-name]/.config/autostart/
[Desktop Entry]
Type=Application
Exec=sudo example
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name=myscript
Comment=Startup Script
Di sini Exec=sudo example
atau Exec=sudo example.sh
jalankan skrip Anda sebagai root dari /usr/bin
Berikan izin eksekusi ke file .desktop.
Sekarang, Script berjalan saat startup.
Kemungkinan lain:
Buat file dalam $HOME/.config/upstart/my-upstart-script.conf
start on desktop-start
stop on desktop-end
script
sudo fdisk -l > /home/[user-name]/upstart-test.txt
end script
Rincian lebih lanjut untuk Pemula :
http://ifdeflinux.blogspot.de/2013/04/upstart-user-sessions-in-ubuntu-raring.html
http://upstart.ubuntu.com/cookbook/
Info berjalan sudo
tanpa kata sandi:
Bagaimana menjalankan aplikasi menggunakan sudo tanpa kata sandi?
Bagaimana cara menjalankan perintah sudo tertentu tanpa kata sandi?
/home/yourusername/.config/upstart/
. Buka direktur rumah Anda di nautilus, tekan Ctrl + H dan Anda akan melihat direktori .config
Untuk menjalankan perintah sebagai root , setelah login, ada trik sederhana lain:
Dibutuhkan dua langkah:
/etc/crontab
), untuk menjalankan skrip kecil (menjalankan perintah Anda) jika dan hanya jika file pemicu ada. Karena file pemicu dihapus oleh skrip yang sama, perintah Anda hanya berjalan sekali.Urutannya adalah:
USER LOGIN > trigger file is created > cronjob runs script (with your command) and removes trigger file, > next time the script passes, since the trigger file does not exist anymore
Pengaturan
Dua skrip kecil:
Satu untuk membuat file pemicu saat masuk:
#!/bin/sh
touch $HOME/.trigger
dan satu dua jalankan perintah:
#!/bin/bash
FILE="/path/to/your/homedirectory/.trigger"
# don't use $HOME here, since you run it by root
if [ -f $FILE ]; then
<your command here, run by root>
rm -f $FILE
fi
create_trigger.sh
dan run_command.sh
.Tambahkan perintah berikut ke Aplikasi Startup Anda (Dash> Startup Applications> Add)
/path/to/create_trigger.sh
Tambahkan baris berikut ke /etc/crontab
file ( sudo nano /etc/crontab
):
* * * * * root /path/to/run_command.sh
Sekarang perintah yang ditentukan dijalankan dalam waktu satu menit dalam satu menit dari login.