Saya memiliki set cronjob ini:
* * * * * /usr/bin/systemctl suspend
Dan itu tidak berfungsi. Tapi saya bisa menjalankannya di shell dan berfungsi. Saya tidak mengerti apa yang mungkin tidak berhasil.
EDIT
Mengarahkan output kesalahan untuk /tmp/errormemberikan ini:
Failed to issue method call: Access denied
Failed to issue method call: Access denied
Pertanyaan saya adalah: Apakah cronjobs dijalankan sebagai pengguna khusus ( cronmisalnya), yang akan menjelaskan bahwa pengguna saya dapat menjalankan perintah, tetapi tidak dengan cronsendirinya?
Penjelasan tambahan:
Ini adalah contoh minimal untuk menunjukkan masalah yang saya miliki dalam skrip (yang lebih masuk akal daripada perintah tunggal yang disediakan di sini)
systemctladalah bagian darisystemd. Saya pikir reboot, shutdown, suspend bekerja dengan pengguna non-rootsystemd. Bagaimanapun, ini bekerja pada sistem saya.Akhirnya, saya menggunakan Arch Linux dan
/bin,/usr/sbin,/sbinsemua symlink untuk/usr/bin.
systemctlmasuk /usr/bindan menerima suspendseperti itu? Apa * nix yang Anda gunakan?
systemctl suspendtidak berfungsi pada distro Debian atau RedHat) dan begitu juga menjelaskan bahwa Anda sebenarnya tidak ingin melakukan apa yang Anda tunjukkan :). Juga, coba tambahkan 2> /tmp/erroratau sesuatu untuk menangkap kesalahan yang mungkin Anda dapatkan. Akhirnya, beri tahu kami pengguna mana yang menjalankan crontab ini.