ฉันมีชุด cronjob นี้:
* * * * * /usr/bin/systemctl suspend
และมันไม่ทำงาน แต่ฉันสามารถเรียกใช้ในเชลล์และใช้งานได้ ฉันไม่เข้าใจสิ่งที่อาจไม่ทำงาน
EDIT การ
เปลี่ยนเส้นทางข้อผิดพลาดออกเพื่อ/tmp/error
ให้สิ่งนี้:
Failed to issue method call: Access denied
Failed to issue method call: Access denied
คำถามของฉันคือ: cronjobs ทำงานเป็นผู้ใช้พิเศษ ( cron
ตัวอย่าง) ซึ่งจะอธิบายว่าผู้ใช้ของฉันสามารถเรียกใช้คำสั่ง แต่ไม่ใช่cron
ตัวเองหรือไม่
คำอธิบายเพิ่มเติม:
นี่เป็นตัวอย่างเล็กน้อยเพื่อแสดงปัญหาที่ฉันมีในสคริปต์ (ที่เหมาะสมกว่าคำสั่งเดียวที่ให้ไว้ที่นี่)
systemctl
systemd
เป็นส่วนหนึ่งของ ฉันคิดว่าการรีบูตการปิดการทำงานชั่วคราวกำลังทำงานกับผู้ใช้ที่ไม่ใช่รูsystemd
ท อย่างไรก็ตามมันทำงานบนระบบของฉันสุดท้ายผมใช้ Arch Linux และ
/bin
,/usr/sbin
,/sbin
มี symlinks/usr/bin
ทั้งหมดเพื่อ
systemctl
อยู่ใน/usr/bin
และยอมรับsuspend
เช่นนั้น? คุณใช้คำอะไร *
systemctl suspend
ไม่ได้ทำงานกับ Debian หรือ RedHat distros) และอธิบายว่าคุณไม่ต้องการทำสิ่งที่คุณแสดง :) นอกจากนี้ลองเพิ่ม2> /tmp/error
หรือบางสิ่งบางอย่างเพื่อจับข้อผิดพลาดที่คุณอาจได้รับ สุดท้ายบอกเราว่าผู้ใช้รายใดกำลังเรียกใช้ crontab นี้