ম্যাকোজে সিপি-আর-এল (হার্ড লিঙ্কগুলি সংরক্ষণের পুনরাবৃত্ত অনুলিপি)


12

আমি ফাইলটিতে হার্ডলিঙ্কগুলি সংরক্ষণ করে একটি ডিরেক্টরি ট্রি অনুলিপি করার চেষ্টা করছি। Gnu সিপি ব্যবহার করে, এটি -l পতাকা সহ কাজ করবে। সিপি তখন ডিরেক্টরি কাঠামো পুনরায় তৈরি করতে পারে তবে প্রতিটি ফাইলের বিষয়বস্তু অনুলিপি করার প্রয়োজন হবে না।

এটি ব্যাকআপের প্রাথমিক, প্রথমে আমি আগের ব্যাকআপের একটি সস্তা (হার্ডলিঙ্কযুক্ত) অনুলিপি তৈরি করতে চাই এবং তারপরে এই অনুলিপিটির উপর উত্স ডিরেক্টরিটি সিএনসি করতে চাই। মোটামুটিভাবে:

 cp -r -l yesterdays_backup todays_backup
 rsync -a source_dir todays_backup

দুর্ভাগ্যক্রমে, ওএসএক্স এর সিপি -l পতাকা সমর্থন করে না, যতদূর আমি বলতে পারি, সিপিও পুনরাবৃত্তির অনুলিপি সমর্থন করে না। অন্য বিকল্পটি প্যাক্স, তবে এটি পুরো ডিরেক্টরি কাঠামো অনুলিপি করে:

 pax -rw backups/yesterdays_backup backups/todays_backup

রূপান্তরগুলির:

 yesterdays_backup
 |
  \source_dir (...)

প্রতি:

 todays_backup
 |
  \backups
          \yesterdays_backup
                            \source_dir(...)

এটি করার একটি সহজ / সুস্পষ্ট উপায় থাকা উচিত তবে আমি বর্তমানে স্টাম্পড ... সিপিও এবং প্যাক্সের কোনও বিকল্প? আমি gnu সিপি ইনস্টল করা এড়াতে চাই।

আমি টাইমম্যাচিন সম্পর্কে সচেতন, তবে এটি সঠিকভাবে এনক্রিপ্ট করা ডিরেক্টরিগুলি বর্ধমানভাবে ব্যাক আপ করবে না।

mac  backup  rsync  cp 

যেমন এখানে বর্ণিত cpio সহ অবস্থান খুঁজে বার করে রিকার্সিভ cpio অভাব কাছাকাছি পেতে: ( mikerubel.org/computers/rsync_snapshots/#Incremental ) কিন্তু খুব মার্জিত না বলে মনে হচ্ছে না ...

উত্তর:


16

ম্যাকপোর্টস থেকে সিপি ইনস্টল করা যথেষ্ট সহজ, তবে আপনি যদি পোর্টেবল স্ক্রিপ্ট তৈরি করতে না চান বা করতে চান না, তবে আপনার কাছে তিনটি বিকল্প রয়েছে:

rsync

rsync --archive --link-dest=../yesterdays_backup backups/yesterdays_backup\
   backups/todays_backup

cpio

mkdir backups/todays_backup
cd backups/yesterdays_backup
find . -print | cpio -p -al ../todays_backup

প্যাক্স

mkdir backups/todays_backup
cd backups/yesterdays_backup
pax -rwl . ../todays_backup

যদি উত্স এবং গন্তব্য বিভিন্ন ডিস্কে থাকে? গন্তব্যস্থলে তৈরি অনুলিপিটিতে কি আরএসআইএনসি সূত্র থেকে শক্ত লিঙ্কগুলি সংরক্ষণ করবে?
lpacheco

7

ম্যাকপোর্টসcoreutils থেকে প্যাকেজটি ইনস্টল করা সহজ, যার নাম পরিবর্তন করে GNU কমান্ড রয়েছে ।cpgcp

তবে আরও ভাল, কমপক্ষে ওএস এক্স 10.5 এর একটি সহ আরএসসিঙ্কের নতুন সংস্করণগুলি --link-dest বিকল্পটি সমর্থন করে যা প্রাথমিক সিপি -al এর প্রয়োজনীয়তা অপসারণ করবে। এখানে দেখুন । বর্ধিত বৈশিষ্ট্য, এসিএল ইত্যাদি অনুলিপি করার জন্য -E বিকল্পটি ব্যবহার করা ভাল অনুশীলন


1

যদিও cpioসরাসরি পুনরাবৃত্তির অনুলিপি সমর্থন করে না, আপনি তার স্ট্যান্ডার্ড ইনপুটটিতে অনুলিপি করতে চান এমন ফাইলগুলির সঠিক তালিকাটি খাওয়াতে পারেন এবং findপাইপযুক্ত ব্যবহার করে পুনরাবৃত্তির অনুলিপিটির প্রভাব অর্জন করতে পারেন cpio। এটি সরাসরি tarবিকল্পগুলি -T -(যেমন স্ট্যান্ডার্ড ইনপুট থেকে ব্যাক আপ করার জন্য ফাইলগুলির তালিকাটি পড়ুন) সহ জিএনইউ ব্যবহার করার সাথে সমান ।


1

আমি বিশ্বাস করি আপনি যা চান তা দিয়েও অর্জন করা যায় ditto yesterdays_backup todays_backup। ডিফল্টরূপে, dittoএকটি পুনরাবৃত্তির অনুলিপি যা হার্ড লিঙ্কগুলি, এসিএল এবং বর্ধিত বৈশিষ্ট্যগুলি সংরক্ষণ করে।


সমস্যাটি হ'ল অনুলিপিটি আর সস্তার হয় না যখন উদ্দেশ্য হ'ল ডিরেক্টরি ক্ষেত্র জুড়ে হার্ড লিঙ্কগুলি তৈরি করা। ডিট্টো উপস্থিত থাকলে তাদের সংরক্ষণ করতে পারে তবে নকল তৈরির পরিবর্তে এটি লিঙ্ক করতে বলা যায় না।
ফ্লোরেনজ ক্লি

আমি মনে করি না ডিট্টো এমনকি ডিরেক্টরি হার্ড লিঙ্কগুলি সংরক্ষণ করার জন্য বলা যেতে পারে। ম্যান পেজ বলছে এটি কেবলমাত্র হার্ড লিঙ্কগুলিই ফাইল করে
ক্রিস এফ ক্যারল

0

পলসের উত্তরের জন্য +1। ডিট্টো একটি বিকল্প হবে, তবে কেবল যদি এটি সন্ধানের সাথে ব্যবহার করা হয় - তবে এটি হার্ড লিঙ্কগুলি সংরক্ষণ করে তবে কেবল ডিরেক্টরিগুলির মধ্যে inside

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.