कृपया ध्यान दें : मैंने सभी समान प्रश्नों को फिर से पढ़ा है। क्रोन, पथ, एनवी चर और इतने पर, लेकिन कोई भी नहीं मिला है जो मेरी विशेष समस्या के समाधान की पेशकश करता है।
मेरे पास एक स्क्रिप्ट है जो कुछ MySQL डंप बनाती है और फिर पुराने लोगों को इस तरह हटा देती है:
/usr/bin/find "/home/bkp/dbdump" -name "*.gz" -mtime +5 -delete
( टिप्पणी से सुझावों द्वारा मेरी मूल कमान से ऊपर आदेश को संशोधित किया गया है )
हालाँकि, जब क्रोन इस स्क्रिप्ट को चलाता है तो फाइलें कभी डिलीट नहीं होती हैं। क्रोन उपयोगकर्ता रूट है।
नोट डीबग करना
यदि मैं उस स्क्रिप्ट को मैन्युअल रूप से चलाता हूं जिसमें कमांड दिखाई देती है, तो यह उन्हें अपेक्षित रूप से हटा देता है।
यदि मैं उपर्युक्त खोज कमांड को कमांड लाइन से रूट के रूप में चलाता हूं, तो यह उन्हें अपेक्षित रूप से हटा देता है (और -प्रिंट के साथ यह अपेक्षा के अनुसार 5 दिनों से अधिक पुरानी फाइलों की सूची लौटाता है)
मैंने रूट के crontab के लिए एक स्पष्ट पथ विवरण भी जोड़ा है, लेकिन
इससे कुछ भी नहीं बदलता है।क्रोन कोई त्रुटि नहीं भेजता है, और यदि मैं एक लॉग फ़ाइल में खोज ऑपरेशन को पाइप करता हूं,
जो खाली आता है या बिल्कुल नहीं बनाया जाता है।मैं Ubuntu सर्वर 14.04.03 LTS का उपयोग कर रहा हूं।
/usr/bin/find /home/bkp/dbdump/*.gz -mtime +5
cronकमांड शेल के माध्यम से चलाए जाते हैं, और शेल वाइल्डकार्ड का विस्तार करता है।
cronआउटपुट और त्रुटि संदेशों के साथ ईमेल भेजना चाहिए। क्या आपको इस नौकरी से कोई ईमेल मिलता है?