2012-05-25 10 views
10

से इनकार किया logrotate उपयोग करने के लिए कोशिश कर रहा है और जब मैं logrotate.d में एक विशेष परिभाषा के लिए लॉग घुमाने स्क्रिप्ट चलाने मैं निम्नलिखित त्रुटि मिलती हैत्रुटि: त्रुटि राज्य फ़ाइल बनाने/var/lib/logrotate/स्थिति: अनुमति

error: error creating state file /var/lib/logrotate/status: Permission denied

/var/lib/logrotate$ ls -lah 
total 12K 
drwxr-xr-x 2 root root 4.0K 2012-05-11 06:25 . 
drwxr-xr-x 43 root root 4.0K 2012-05-18 08:07 .. 
-rw-r--r-- 1 root root 911 2012-05-25 06:25 status 

मुझे लगता है कि पथ छुआ है, तो मुझे आश्चर्य है कि क्यों यह डिफ़ॉल्ट रूप से एक त्रुटि पैदा करेगा ...

उत्तर

0

क्या आप वाकई रूट के रूप में इस आदेश को चलाने के हैं ...? ;) मैं f कृपया जांचें कि सिस्टम पर AppArmour है या नहीं - यदि हाँ इसे कॉन्फ़िगरेशन की जांच करें या इसे अनइंस्टॉल करें (उबंटू केस)।

+0

यकीन नहीं है, अंत में मैंने 'स्थिति' को 666 पर chmoded और यह काम किया। आप बहुत अच्छे हो सकते हैं इसलिए मैं जवाब स्वीकार करूंगा :) –

27

को नहींchmod डिफ़ॉल्ट स्थिति फ़ाइल करते हैं। यदि आप chmod हैं, तो सिस्टम पर हर उपयोगकर्ता हमले वेक्टर के रूप में logrotate का उपयोग करने में सक्षम है।

विकल्प [-s|--state file] विकल्प के साथ बस अपने उपयोगकर्ता के लिए एक (निजी) राज्य फ़ाइल परिभाषित करें (मान लें कि आप इसे नियमित उपयोगकर्ता के रूप में चलाने की कोशिश कर रहे हैं)। राज्य फ़ाइल/var/चलाने/logrotate/स्थिति बनाने में त्रुटि: भले ही यह रूट के रूप में चल रहा था, मैं "त्रुटि से छुटकारा नहीं मिल सका

* * * * * root logrotate -s /var/run/logrotate.status /etc/logrotate.conf 

:

0

एक crontab में इस लाइन थी : अनुमति अस्वीकार "त्रुटि।

तो मैं बस एक अलग निर्देशिका का प्रयोग किया:

* * * * * root /usr/sbin/logrotate -s /var/log/logrotate.status -v /etc/logrotate.conf >/tmp/logrotate.out 2>&1 

https://serverfault.com/questions/762587/daily-logrotate-error-creating-unique-temp-file-permission-denied से डीबगिंग विचार प्रयुक्त लेकिन बदल यह इतना आउटपुट फ़ाइल अनिश्चित काल के लिए भी नहीं बढ़ता है, जो विडंबना होगा।

वर्बोज़ मोड ने इस मामले में कोई अतिरिक्त जानकारी प्रदान नहीं की, वैसे ही, जिस कॉन्फ़िगरेशन फ़ाइल को पढ़ रहा था और वही त्रुटि संदेश था। लेकिन यह/var/mailspool की बजाय उस फ़ाइल पर आउटपुट बेहतर था।

संबंधित मुद्दे