আপনি যখন একই ফাইল সিস্টেমের মধ্যে কোনও ফাইল স্থানান্তর করেন, mv
তখন ফাইলটিকে তার পুরানো অবস্থান থেকে আলাদা করে তার নতুন অবস্থানে সংযুক্ত করে; অনুমতিগুলির মতো মেটাডেটা একই থাকে। আপনি যখন কোনও ফাইলকে অন্য কোনও ফাইল সিস্টেমে স্থানান্তরিত করেন, ফাইলটি mv
অনুলিপি করেন, যথাসম্ভব মেটাডেটা প্রতিলিপি করার চেষ্টা করেন এবং মূলটি সরিয়ে ফেলুন।
যেহেতু আপনি একটি আলাদা ফাইল সিস্টেমে চলেছেন এবং আপনি খুব বেশি মেটাডেটা প্রতিলিপি করতে চান না, আপনি সেই ফাইলটি অনুলিপি করে তারপরে মূলটি সরিয়ে ফেলতে পারেন।
cp "$backupfile" "$destination" && rm "$backupfile"
এটি কিছু পরিমাণে ফাইলের অনুমতি সংরক্ষণ করে (যেমন ওয়ার্ল্ড-রিডিবিলিটি, এক্সিকিউটেবিলিটি)। ফাইলটির পরিবর্তনের সময়টি সংরক্ষণ করা হয়নি। জিএনইউcp
দিয়ে আপনি --preserve=…
মেটাডেটা আরও সূক্ষ্মভাবে প্রতিলিপি করা হয়েছে এমন কনটোল করার বিকল্পটি ব্যবহার করতে পারেন , যেমন --preserve=mode,timestamps
।
আপনি rsync
কী সংরক্ষণ করতে চান তাও এটি ব্যবহার করতে এবং বলতে পারেন। বিকল্পটির -a
অর্থ হল "সর্বাধিক মেটাডেটা সংরক্ষণ করুন", যার মালিক যদি কেবল রুট হিসাবে চলমান থাকে includes
rsync -a --no-owner --no-group --remove-source-files "$backupfile" "$destination"