मेरे पास यह क्रोनजॉब सेट है:
* * * * * /usr/bin/systemctl suspend
और यह काम नहीं कर रहा है। लेकिन मैं इसे एक शेल में चला सकता हूं और यह काम करता है। मुझे समझ नहीं आ रहा है कि क्या काम नहीं किया जा सकता है।
EDIT/tmp/error इसे
देने के लिए त्रुटि आउटपुट पुनर्निर्देशित करता है:
Failed to issue method call: Access denied
Failed to issue method call: Access denied
मेरा सवाल तो यह है: क्या क्रोनोजर एक विशेष उपयोगकर्ता ( cronउदाहरण के लिए) के रूप में चलाए जाते हैं , जो यह समझाता है कि मेरा उपयोगकर्ता कमांड चला सकता है, लेकिन cronस्वयं?
अतिरिक्त स्पष्टीकरण:
यह मेरे पास एक स्क्रिप्ट में एक समस्या दिखाने के लिए एक न्यूनतम उदाहरण है (जो कि यहां दिए गए एकल आदेश की तुलना में अधिक समझ में आता है)
systemctlका हिस्सा हैsystemd। मुझे लगता है कि रिबूट, शटडाउन, सस्पेंड एक गैर-रूट उपयोगकर्ता के साथ काम कर रहे हैंsystemd। वैसे भी, यह मेरे सिस्टम पर काम कर रहा है।अंत में, मैं आर्क लिनक्स का उपयोग करें और
/bin,/usr/sbin,/sbinकरने के लिए सभी सिमलिंक हैं/usr/bin।
systemctlमें है /usr/binऔर यह इस suspendतरह स्वीकार करता है? आप क्या उपयोग कर रहे हैं?
systemctl suspendडेबियन या रेडहैट डिस्ट्रोस पर काम नहीं करता है) और इसलिए यह समझा रहा है कि आप वास्तव में वह नहीं करना चाहते जो आप दिखा रहे हैं :)। इसके अलावा, 2> /tmp/errorकिसी भी त्रुटि को पकड़ने के लिए कुछ जोड़ने या कुछ करने का प्रयास करें । अंत में, हमें बताएं कि कौन सा उपयोगकर्ता इस क्रॉन्ब को चला रहा है।