আরএসআইএনসি মুছুন বিকল্পের মধ্যে পার্থক্য কী?


118

আমি আরএসআইএনসি ম্যান পেজে দেখতে পাচ্ছি যে অনেকগুলি deleteবিকল্প রয়েছে তবে তাদের মধ্যে পার্থক্যটি সত্যই বুঝতে পারি না। এই বিকল্পগুলির মধ্যে পার্থক্য কী?

 --del                   an alias for --delete-during
 --delete                delete extraneous files from dest dirs
 --delete-before         receiver deletes before transfer (default)
 --delete-during         receiver deletes during xfer, not before
 --delete-delay          find deletions during, delete after
 --delete-after          receiver deletes after transfer, not before
 --delete-excluded       also delete excluded files from dest dirs

2
কেন --delete-beforeহিসাবে বর্ণনা করা হয় (default)? আমি বুঝতে পারছি না (default)মানে কি ।
মার্কো মার্শালা

1
manপৃষ্ঠায় এটি আর ডিফল্ট হিসাবে নির্দিষ্ট করা হয়নি rsync version 3.1.2 protocol version 31। যাইহোক, উদ্ধৃত পাঠ্য সহ সংস্করণ সম্পর্কে আমার অনুমানটি হ'ল আপনি যদি কেবল তার --deleteচেয়ে বেশি ব্যবহার করেন --delete-WHENতবে তা মনে হয় আপনি --delete-WHENযেখানে WHENডিফল্ট সেখানে নির্দিষ্ট করেছেন before
টম হালে

উত্তর:


114
  • --del/--delete_during: ফাইলগুলি অনুলিপি করার সাথে সাথে গন্তব্য দির থেকে মুছে ফেলা (তুলনায় মেমরি সংরক্ষণ করে --delete-before: --delete-beforeমুছতে সক্ষমগুলির জন্য পৃথক স্ক্যান তৈরি করে)

  • --delete: উত্স ডিরেক্টরিতে ফাইলগুলি উপস্থিত না থাকলে গন্তব্য ডিরেক্টরিতে ফাইলগুলি মুছে দেয়।

  • --delete-before: উত্স ডিরেক্টরি থেকে একই নামের ফাইল-অনুলিপি করার আগে গন্তব্য ডিরেক্টরিতে ফাইলগুলি মুছুন

  • --delete-during: গন্তব্য ডিরেক্টরিতে ফাইলগুলি মুছুন যখন উত্স ডিরেক্টরি থেকে একই নামের ফাইল-অনুলিপি করুন

  • --delete-delay: স্থানান্তরকালে মুছে ফেলা চিহ্নিত করুন, কিন্তু স্থানান্তর সম্পূর্ণ হওয়া পর্যন্ত অপেক্ষা করুন

  • --delete-after: রিসিভারটি হস্তান্তর করার পরে মুছে ফেলা হয়, এর আগে নয় ... আরএসসিএনসি-র কিছু অংশ যদি অতিরিক্ত ফাইল অন্য কোথাও স্থানান্তরিত করে, আপনি এটির পরিবর্তে এটি চাইতেন --delete-delay, কারণ --delete-delayএটি স্থানান্তরের মাঝখানে কী মুছে ফেলবে তা স্থির করে, যেখানে --delete-afterফাইলগুলির জন্য ডিরেক্টরিটি পরীক্ষা করে সবকিছু শেষ হয়ে গেলে সেটি মুছে ফেলা উচিত।

  • --delete-excluded: গন্তব্য ডিরেক্টরি থেকে ফাইলগুলি মুছুন যা উত্স ডিরেক্টরি থেকে স্থানান্তর থেকে স্পষ্টতই বাদ দেওয়া হয়েছে।

আরএসসিঙ্কের পয়েন্টটি অনুলিপি করছে না, এটি সংরক্ষণাগারভুক্ত। এটি একটি গুরুত্বপূর্ণ পার্থক্য। মোছা / পরিবর্তিত ফাইলগুলি প্রক্রিয়াজাতকরণ গুরুত্বপূর্ণ, এবং অনেক ক্ষেত্রেই প্রয়োজনীয়।

--deleteবিশেষ করে পতাকা এক আমি দেখেছি অনেক বার মাতাল আপ হয়। লোকে লো কম অগ্রাধিকারের স্টোরেজে ফাইল স্থানান্তর করতে প্রচুর লোক আরএসসিএনসি ব্যবহার করে এবং এক্ষেত্রে আপনি যে ফাইলগুলি সরিয়ে নিচ্ছেন সেগুলি গন্তব্য ডিরেক্টরিতে উপস্থিত থাকতে চান। মুছে ফেলার ফলে এটি হয় না: --deleteএটি নিশ্চিত করে যে আপনি যখন সোর্স ডিরেক্টরি থেকে কোনও ফাইল মুছবেন তখন এটি আপনার গন্তব্য ডিরেক্টরি থেকে মুছে ফেলা হবে, যাতে আপনার গন্তব্য আবর্জনায় পূর্ণ হয় না ... একবার দেখল একজন লোক তার ব্যাকআপ মুছে ফেলল একটি নতুন ড্রাইভ লাগিয়ে, এবং তার রাতের আরএসসিএনসি স্ক্রিপ্টটি বন্ধ না করে স্ক্রিপ্ট দেখেছিল যে সোর্স দির এখন খালি ছিল এবং এটি গন্তব্যস্থলীর প্রতিটি ফাইল মুছে ফেলেছে, তাই তারা মিলবে।

অন্যান্য বিকল্পগুলির বেশিরভাগটি স্থান বা কার্য সম্পাদন সম্পর্কিত। আপনি যখন ফাইলগুলি মুছবেন তখন গুরুত্বপূর্ণ আপনি যদি কোনও কাজ করার আগে স্থানান্তরটি সফল কিনা তা নিশ্চিত করতে চান তবে আপনার ডিভাইসটি যদি সমস্ত তথ্যের 2 কপি হ্যান্ডেল করতে খুব ছোট হয় তবে আপনাকে যাওয়ার সময় মুছে ফেলা দরকার It's একাধিক প্ল্যাটফর্ম জুড়ে দীর্ঘ ইতিহাসের কারণে সামান্য অসচেতন: কিছু বিকল্প যুক্ত করা হয়েছে যাতে নির্দিষ্ট আচরণে অভ্যস্ত লোকেরা বিভ্রান্ত না হয়।


3
তাহলে --delet এবং --delet-এর আগে কি একই? - mante ফাইল মুছে ফেলা হলে man rsync বলে না।
পিআরপি

@ পিপিআর: সিস্টেমের উপর নির্ভর করে। এটিতে এতগুলি সুনির্দিষ্ট বিকল্প থাকার কারণ হ'ল সোলারিসের উপর মুছুন! = এইচপি-ইউএক্সে মুছুন! = এআইএক্সে মুছুন! = লিনাক্সে মুছুন।
স্যাটানিকপ্পি

পুরো ডিরেক্টরিটি রিসাইস delete-afterকরার সময়, প্রতিটি ফাইল সিঙ্কের মধ্যে মুছবে না, বা কেবল পুরো দির মিরর করার পরে? আমি delete-afterআমার প্রয়োজনের জন্য যথেষ্ট বলে ভেবেছিলাম কিন্তু আমার কোনও ড্রাইভের ব্যাকআপ নেওয়ার সময় আমি ডিভাইসে কোনও স্থান রাখি না।
শ্রীধর সারনোবাত 3'15

1
@ শ্রীধর-সারনোবাত: হয়। এটি যে স্থানান্তর করতে চলেছে সবকিছু সরিয়ে দেয় এবং এটি শেষ হয়ে গেলে, এটি জিনিসগুলি মুছতে শুরু করে। আপনি যদি সবকিছু মুছে ফেলার আগে এটি মুছে ফেলতে চান তবে --ডিলেট-সময়
স্যাটানিকপ্পি

2
কিছু অভিজ্ঞতার পরে, আমি সন্ধান করছি যে এমনকি delete-duringসর্বদা no space left on device(লিনাক্সে) প্রতিরোধ করে না । সুতরাং delete-beforeশুধুমাত্র নিশ্চিত এটা এড়ানোর উপায় (যখন একটি ড্রাইভ যে প্রায় পূর্ণ মিরর মত, এবং গন্তব্য ড্রাইভ খুব প্রায় পূর্ণ)।
শ্রীধর সারনোবাত

1

দুটি জিনিস চলছে:

  1. কে মুছে ফেলছে
  2. যখন এটি ঘটবে

হয় প্রেরক বা প্রাপককে মুছে ফেলার নির্দেশ দেওয়া যেতে পারে (কেন আমি বিষয়টি নিশ্চিত তা নিশ্চিত নই)। সুতরাং যখন একটি কম্পিউটার থেকে rsync অপর পাশের আরএসসিএনসি সার্ভারের সাথে সংযুক্ত হয়, এটি নির্ধারণ করে যে কার্যকরভাবে মুছে ফেলুন আদেশটি জারি করছে।

এটি যখন ঘটে তখন বেশ সহজ ... এর আগে সমস্ত ফাইল মুছে ফেলা হয়, এবং তারপরে ফাইলগুলির মধ্যে আরএসসিএনপি অনুলিপি করা হয়। ফাইলগুলির তালিকার মধ্য দিয়ে যাওয়ার সময় এটি যখন তাদের কাছে আসে তখন সেগুলি মুছে ফেলা হয় এবং এরপরে এটি সমস্ত ফাইল স্থানান্তর না করা এবং তারপরে দূরবর্তী দিকটি মোছার আগ পর্যন্ত অপেক্ষা করে। স্থানান্তর বাধাগ্রস্ত হলেই এটি গুরুত্বপূর্ণ।


আমি নিশ্চিত যে এই বিকল্পগুলির কোনওটিই প্রেরকের পক্ষ থেকে জিনিসগুলি মুছে ফেলার সাথে সম্পর্কিত নয় । এগুলির সমস্ত (এএফআইকে) রিসিভারের পক্ষ থেকে জিনিসগুলি মুছে ফেলার সাথে সম্পর্কিত । এছাড়াও, আপনি বলেছেন: "এর আগে সমস্ত ফাইল মুছে ফেলা হয়, এবং ততক্ষণে ফাইলগুলির উপর আরএসসিএন কপি" - এটি কি ঠিক? আমি --delete-beforeকেবল সেই ফাইলগুলিকে মুছে ফেলার আশা করব যা সমস্ত ফাইলগুলিতে চলে যেতে হবে, সমস্ত ফাইল নয়! তবে আমার ধারণা এটি সম্ভব যে আরএসসিএনসি সবকিছু মুছে ফেলে এবং তারপরে "নতুন" (সম্ভবত অপরিবর্তিত) ডেটা স্থানান্তর করে ...
কুইকসপ্লসোন

1
আহ, "প্রেরকের দিক থেকে মুছে দিন" হয় rsync দ্বারা সমর্থিত, কিন্তু যে বিকল্প নাম --remove-source-files
কুইকসপ্লসোন

1

অন্য একটি বিষয় উল্লেখযোগ্য যে হ'ল যদি আপনার উত্স ডিরেক্টরিটি শেষ হয় /*, তবে আরএসসিএনসি কেবল সেই ফাইলগুলিকেই বিবেচনা করবে এবং ডিরেক্টরিটি নিজেই নয় (এবং এভাবে আপনি যে গন্তব্যে মুছতে চান এমন ফাইলগুলির অনুপস্থিতি)।

আপনি যদি উপরে একটি মুছুন অপশন উল্লেখ করে থাকেন তবে আরএসসিএনসি মনে হচ্ছে এটি মুছে ফেলা হচ্ছে না, তবে আপনি ডিরেক্টরিটি নিজেই বোঝাতে চাইলে আপনি দুর্ঘটনাক্রমে গ্লোব করছেন না এবং ফাইলগুলির একটি তালিকা সরবরাহ করছেন না তা পরীক্ষা করে দেখুন।

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