আরএসসিএনসি মালিক, গোষ্ঠী, সময় এবং পারমকে উপেক্ষা করে


67

আমি জানতে চাইছি যে কীভাবে ফোল্ডারগুলিকে পুনরাবৃত্তির জন্য সিঙ্কের জন্য আরএসসিএনসি ব্যবহার করবেন তবে আমার কেবলমাত্র নতুন ফাইল বা আপডেট হওয়া ফাইলগুলি (কেবলমাত্র সামগ্রী, মালিক, গ্রুপ বা টাইমস্ট্যাম্প নয়) আপডেট করতে হবে এবং উত্সে থাকা ফাইলগুলি আমি মুছতে চাই ।

উত্তর:


93

আমার মনে হয় আপনি ব্যবহার করতে পারেন -no-অপশন rsyncথেকে নয় মালিকানা বা আপনি যে ফাইলগুলি sync'ing করছি অনুমতি কপি করুন।

আরএসআইএনসি ম্যান পৃষ্ঠা থেকে উদ্ধৃতি

--no-OPTION
       You may turn off one or more implied options by prefixing the option 
       name with "no-".  Not all options may be pre‐fixed  with  a  "no-":  
       only options that are implied by other options (e.g. --no-D, 
       --no-perms) or have different defaults in various circumstances (e.g. 
       --no-whole-file, --no-blocking-io, --no-dirs).  You may specify 
       either the short or the long option name after the "no-" prefix (e.g. 
       --no-R is the same as --no-relative).

       For example: if you want to use -a (--archive) but don’t want -o 
       (--owner), instead of converting -a into -rlptgD, you could specify 
       -a --no-o (or -a --no-owner).

       The order of the options is important:  if you specify --no-r -a, the 
       -r option would end up being turned on,  the opposite  of  -a  
       --no-r.   Note  also  that the side-effects of the --files-from 
       option are NOT positional, as it affects the default state of several 
       options and slightly changes the meaning of -a (see the  --files-from
       option for more details).

মালিকানা ও অনুমতিসমূহ

ম্যান পেজটি দেখলে আমি বিশ্বাস করি আপনি এই জাতীয় কিছু ব্যবহার করতে চাই:

$ rsync -avz --no-perms --no-owner --no-group ...

অস্তিত্ব নেই এমন ফাইলগুলি মুছতে আপনি --deleteস্যুইচটি ব্যবহার করতে পারেন:

$ rsync -avz --no-perms --no-owner --no-group --delete ....

টাইমস্ট্যাম্প

টাইমস্ট্যাম্পের ক্ষেত্রে আমি SOURCE বনাম ডিস্ট ফাইলগুলির তুলনা কীভাবে করব তা পরিবর্তন না করে এটি রাখার উপায় দেখছি না। আপনি rsyncএই সুইচটি ব্যবহার করে টাইমস্ট্যাম্পগুলি উপেক্ষা করতে বলতে চাইতে পারেন :

-I, --ignore-times
       Normally  rsync will skip any files that are already the same size 
       and have the same modification timestamp.  This option turns off this 
       "quick check" behavior, causing all files to be updated.

হালনাগাদ

টাইমস্ট্যাম্পগুলির জন্য, --no-timesআপনি যা খুঁজছেন তা করতে পারে।


- নন-টাইম ব্যবহার করার সময় আমি এখনও প্রচুর ফাইল দেখতে পাচ্ছি (আইটেমযুক্ত পরিবর্তনের সাথে) চিহ্নিত করে >f..T...ফাইলফ্লেগ এবং পরিবর্তনের সময়টি গন্তব্যস্থলে সেট করা হচ্ছে যা আমি এড়াতে চাইছি।
মাইকেল

17

আমি মনে করি -এ বিকল্পটি এড়ানো সহজ

$ -a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)

এবং কেবলমাত্র আপনি চান বিকল্পগুলি সেট করুন।

আপনি সব অপশন কিন্তু ব্যবহারকারী পরিবর্তন চান -o , গ্রুপ -G , সময় -t ও অনুমতি -p যাতে আপনি সংরক্ষণাগার সমতুল্য থেকে এই চারটি অপশন বিয়োগ পারে।

$ -rlD

গন্তব্য ফাইল মুছে ফেলার জন্য বিকল্প ব্যবহার করুন --delete

আপনার প্রশ্নের কাছে: তবে আমি মনে করি যে সমস্ত ফাইল চেক করা হবে - rsync কেবলমাত্র সামগ্রী দ্বারা পরিবর্তিত ফাইলগুলি স্থানান্তর / পরীক্ষা করতে পারে না।


-lলিঙ্কগুলির জন্য, -Dডিভাইসগুলির জন্য (একই হিসাবে বিবেচিত --specials), আমি মনে করি -rআমরা যদি বিষয়বস্তুতে কথা বলি তবে একাই যথেষ্ট।
sdkks 3'18

7

আমি মনে করি আপনি যা খুঁজছেন তা বিকল্প

rsync -r --size-only

ম্যান পৃষ্ঠা থেকে:

--size-only
   This  modifies  rsync’s  "quick  check"  algorithm  for finding files that need to be transferred,
   changing it from the default of transferring files  with  either  a  changed  size  or  a  changed
   last-modified  time  to  just  looking  for  files that have changed in size.  This is useful when
   starting to use rsync after using another mirroring  system  which  may  not  preserve  timestamps
   exactly.

আপনি যদি সত্যিই উত্স দীর ব্যবহারের অনুপস্থিত ফাইলগুলি মুছতে চান --delete


4

আপনি আরএসসিএনকে ফাইল মোড সময় এবং আকারের উপর ভিত্তি করে চেকগুলি উপেক্ষা করতে জোর করতে পারেন এবং "-সি" স্যুইচ দিয়ে একটি চকসাম ভিত্তিক পদ্ধতির ব্যবহার করতে পারেন।

-c, --checksum              skip based on checksum, not mod-time & size

এর অর্থ এই নয় যে এটি ফাইলের সময় এবং আকারের ম্যাচ নির্বিশেষে বাছাই করে পুরো ফাইলটি খণ্ডে (এবং উত্স এবং গন্তব্যের মধ্যে প্রাসঙ্গিক মেটাডেটা সামনে এবং পিছনে স্থানান্তরিত করা) প্রয়োজন, তবে কেবলমাত্র পৃথক অংশগুলি স্থানান্তর করবে উত্স এবং গন্তব্য মধ্যে।

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


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

-3

নীচে কমান্ডটি পুরোপুরি কাজ করবে, আমি এটি আমার নিজের প্রয়োজনের জন্য পরীক্ষা করেছি, এটি কেবল সামগ্রীতে পরিবর্তন আনবে।

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