मैं अपने घर निर्देशिका का बैकअप लेने के लिए इस rsync मंगलाचरण का उपयोग करता हूं:
rsync -aARrx --info= --force --delete --info=progress2 -F "$USER_HOME" "$BACKUP_MNTPOINT"
rsync मैन पेज कहता है कि -a का अर्थ है -g और -o (अन्य स्विच के बीच), जो स्वामित्व को संरक्षित करना चाहिए। हालाँकि मैंने देखा है कि अगर कोई निर्देशिका मौजूद नहीं है $BACKUP_MNTPOINT/$USER_HOME, तो इसे रूट: सही स्वामित्व के बजाय रूट स्वामित्व के साथ बनाया जाता है। (यह केवल निर्देशिका के अंतर्गत होता है $BACKUP_MNTPOINT/$USER_HOME)। ऐसा क्यों है?
$BACKUP_MNTPOINTएक स्थानीय घुड़सवार ड्राइव है। $BACKUP_MNTPOINT/$USER_HOMEसही स्वामित्व और अनुमतियाँ हैं। न तो $USER_HOMEहै और न ही $BACKUP_MNTPOINTएक स्लैश के साथ समाप्त होता है।
स्रोत और लक्ष्य फाइलसिस्टम दोनों ही XFS हैं और चल रहा mkdir $BACKUP_MNTPOINT/$USER_HOMEहै जो अपेक्षित स्वामित्व के साथ एक निर्देशिका बनाता है।
/homeऔर बैकअप ड्राइव के लिए XFS का उपयोग करता हूं । अब तक मुझे लगता है कि यह केवल मूल निर्देशिका के लिए हुआ है। न तो $BACKUP_MNTPOINTहै और न ही $USER_HOMEएक स्लैश के साथ समाप्त होता है। संपादित करें: मैं पुष्टि कर सकता हूं कि यह केवल नीचे निर्देशिकाओं में होता है$BACKUP_MNTPOINT/$USER_HOME
$BACKUP_MNTPOINT/$USER_HOMEसही अनुमति है लेकिन किसी भी उपनिर्देशिका नहीं है? कृपया अपना प्रश्न संपादित करें और इन विवरणों को जोड़ें। यह भी स्पष्ट करें कि क्या mkdir $BACKUP_MNTPOINT/$USER_HOME/fooआप अपने उपयोगकर्ता के स्वामित्व वाली निर्देशिका बनाते हैं यदि आप इसे मैन्युअल रूप से करते हैं।
mkdir $BACKUP_MNTPOINT/$USER_HOME/fooउपयोगकर्ता के स्वामित्व के साथ एक निर्देशिका बनाता है।
strace(जैसा कि छद्म उत्तर में निर्दिष्ट है)।
$BACKUP_MNTPOINTऔर इसे किस विकल्प के साथ रखा गया है? क्या यह केवल माता-पिता ($BACKUP_MNTPOINT/$USER_HOME) निर्देशिका या निर्मित सभी निर्देशिकाओं के लिए होता है? करो$BACKUP_MNTPOINTऔर$USER_HOMEएक के साथ अंत/?