मेरे पास एक ऐसी साइट है जिसके लिए एक डेटाबेस में एक डेटाबेस डेटाबेस को धक्का देने के लिए व्यवस्थापक में लॉग इन करने की क्षमता की आवश्यकता होती है। पहली चीज यह करता है एसक्यूएल डंप और लक्ष्य डेटाबेस को धक्का। यह ठीक काम करता है, लेकिन जब मैं अपलोड की गई सामग्री वाले फ़ोल्डर को rsync पर जाता हूं, तो मुझे एक त्रुटि मिलती है। यह केवल तब होता है जब स्क्रिप्ट को दृश्य के भीतर से बुलाया जाता है, कमांड लाइन या पायथन शेल से नहीं। यहां फ़ंक्शन है:Django व्यू से स्थानीय फ़ोल्डर में rsync कैसे करें
def copy_media(self, origin_folder, target_folder):
command_string = "rsync -a %s %s" % (origin_folder, target_folder)
return_code = subprocess.call(command_string, shell=True)
return return_code
रिटर्न कोड त्रुटियों पर "12" है। मेरा सबसे अच्छा अनुमान यह है कि स्क्रिप्ट खत्म होने से पहले काफी देरी हो रही है, इसलिए यह नहीं पता कि इसे समाप्त होने के लिए उचित तरीके से इंतजार कैसे किया जाए। मेरा अनुमान था कि किसी भी तरह से पथ दृश्य के भीतर से खराब हो जाते हैं।
क्या यह संभावित रूप से फाइलों पर उपयोगकर्ता लेख सेट के कारण हो सकता है? आप -o विकल्प का प्रयास कर सकते हैं। क्या आपने यह देखने के लिए rsync पर -v विकल्प का प्रयास किया था कि कोई चेतावनी जारी की गई है या नहीं? – Priyeshj
मैं कोशिश करूँगा ... किसी विचार से rsync को कॉल करने के सर्वोत्तम तरीके पर कोई विचार? – Sebastian
इस कोड का उत्पादन तब तक न करें जब तक आप सुनिश्चित न हों कि 'origin_folder' और' target_folder', अन्यथा आप एक खोल इंजेक्शन के लिए प्रवण हैं। –