Saya telah mengedit tab root cron saya untuk secara berkala mengeksekusi skrip yang terletak di folder pengguna tertentu menggunakan perintah ini:
sudo crontab -e
Ketika cron menjalankan skrip, ini adalah output:
sh: 1: /home/user/Location/Of/Script: Permission denied
Saya pikir root cron memiliki izin untuk melakukan apa saja. Saya tidak memiliki masalah ketika saya menjalankan skrip ini secara manual sebagai root.
Saya telah membaca di dokumentasi bahwa info kesalahan lebih lanjut dapat ditemukan di sini:
sudo cat /var/log/syslog
Inilah yang saya temukan:
Jan 30 12:30:01 backup CRON[17702]: (CRON) info (No MTA installed, discarding output)
Namun, saya pikir ini mungkin tidak terkait dengan masalah izin yang ditolak.
Jadi apa yang harus saya lakukan?
ubuntu
permissions
cron
Lonniebiz
sumber
sumber
/home/user/Location/Of/Script
? Misalnyala -l /home/user/Location/Of/Script
. Secara kebetulan, Anda memerlukan MTA yang diinstal untuk penggunaan internal normal, bahkan jika Anda tidak mengirim / menerima email secara eksternal. Saya terkejut sistem Anda belum menginstalnya.Jawaban:
Saya pikir skrip Anda tidak dapat dieksekusi. Jadi, gunakan perintah berikut untuk membuatnya:
Atau, jika Anda bukan pemilik skrip itu:
sumber
./Scipt
atau/home/user/Location/Of/Script
tidak ok. Umumnya skrip apa pun harus dapat dieksekusi. Lihat Cara menjalankan skrip shell di Linux .