উচ্চ প্রাপ্যতার জন্য tar এবং rsync ব্যবহার করা


13

আমার উবুন্টু ক্লাউড সার্ভারগুলি চলছে যা ssh এর সাথে আমার সরাসরি অ্যাক্সেস নেই। আমি ক্লোন করতে বা এই সার্ভারটির উচ্চ প্রাপ্যতা পেতে 'টার' ব্যবহার করছি। আমি লিঙ্ক [টি লিঙ্ক পাঠ্য] [1] থেকে টিউটোরিয়ালটি অনুসরণ করেছি। আমি এটি একই সংস্করণের একটি নতুন সার্ভার ইনস্টল করার চেষ্টা করেছি। আমি যখন গন্তব্যে (নতুন) টার (ট্যার-এক্সভিপিজেফ ~ / ক্লোন.টিজিজেড-সি /) বের করেছি, শেষে এটি নীচের অনুরূপ নিম্নলিখিত আউটপুটটির সাথে শেষ হচ্ছে (এটি ত্রুটি কিনা তা জানেন না)।

tar: var/run: time stamp 2010-11-09 17:09:11 is 7335.159880406 s in the future
tar: var/spool/postfix/usr/lib/zoneinfo: time stamp 2010-11-09 17:08:26 is 7290.159730037 s in the future
tar: var/lib: time stamp 2010-11-09 17:27:51 is 8455.159349527 s in the future
tar: usr/bin: time stamp 2010-11-09 17:28:02 is 8466.159254097 s in the future
tar: usr/share/sgml: time stamp 2010-11-09 17:27:47 is 8451.158909506 s in the future
tar: usr/share/man/man7: time stamp 2010-11-09 17:27:50 is 8454.158393583 s in the future
tar: usr/share/man/man1: time stamp 2010-11-09 17:28:02 is 8466.158166556 s in the future
tar: usr/share/man/man8: time stamp 2010-11-09 17:27:51 is 8455.158057701 s in the  future
tar: usr/share/omf/time-admin: time stamp 2010-11-09 17:27:52 is 8456.157830449 s in the future
---------------------------------------------
---------------------------------------------
---------------------------------------------

আমি উত্স সিস্টেমে নির্দিষ্ট ডিরেক্টরিগুলির একটি টার ফাইল তৈরি করতে নিম্নলিখিত কমান্ডটি ব্যবহার করছি।

tar -cvzf ~/clone.tgz --exclude ~/clone.tgz --exclude /etc/hosts --exclude /etc/hostname --exclude /etc/udev/ --exclude /etc/network/interfaces --exclude /etc/resolv.conf  /etc /home /opt /tmp /usr /var /mnt
  • টার ব্যবহারের আগে কি কোনও সতর্কতা রয়েছে? (টারটি তখনকার সময় থেকে একবারের সৃষ্টি হবে তবে আমি আরএসএনসি ব্যবহার করব)
  • আমার কি বিন বা লিবের মতো আরও কোনও ডিরেক্টরি অন্তর্ভুক্ত করা উচিত? - আমাকে প্রস্তাব করো
  • আমার কি কোনও ডিরেক্টরি বাদ দিতে হবে? যেমন আমার একটি নেটওয়ার্ক ডিভাইস (ইথ0) সমস্যা ছিল (এথ0 শুরু করতে ব্যর্থ হয়েছে)। সুতরাং উপরের কমান্ডে আমি "/ etc / udev /" বাদ দিয়েছি এবং এর পরে আমি অনুভব করেছি যে এটি ঠিক আছে। এটির মতো, আমি / etc / অথবা আমি অন্তর্ভুক্ত থাকা কোনও ডিরেক্টরি থেকে বাদ দিতে পারি এমন কি কিছু আছে? - আমাকে প্রস্তাব করো.
  • সিস্টেমের ব্যর্থতার ক্ষেত্রে পরে আমি এটি সংযুক্ত করে ডিরেক্টরিগুলি (টার / সুনির্দিষ্ট / newdir) সিঙ্ক করতে ssh সংমিশ্রণ সহ rsync (ইনক্রিমেন্টাল বি কেপি) কীভাবে নির্ধারণ করতে পারি? Rsync রুট ব্যবহারকারী হিসাবে চালানোর জন্য নির্ধারিত হতে পারে তবে ssh পাসওয়ার্ডের জন্য অনুরোধ জানাবে। এফওয়াইআই, সুডো সম্পূর্ণ অক্ষম এবং সেই সাথে রুটে সরাসরি এসএসএস লগইনও অক্ষম করা আছে।

এটি অর্জনের জন্য সার্ভারের কোনও ক্ষতি ছাড়াই যদি এর চেয়ে ভাল আরও কোনও উপায় থাকে তবে প্রস্তাব দিতে পারেন।

[১]: http://ubuntuforums.org/showthread.php ? T = 525660

উত্তর:


9

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

আমি কেবল বর্জন করব: / proc / / sys / dev / tmp / mnt ক্লোন সিস্টেমে আপনাকে নিশ্চিত করতে হবে / / etc / fstab এবং /boot/grub/grub.cfg ক্লোন সিস্টেম পার্টিশনের ইউআইইউডের সাথে আপডেট হয়েছে।

আপনার যদি মাইএসকিএল এর মতো একটি ডেটাবেস থাকে তবে আপনাকে অনুরুপ হতে হবে এবং অনুলিপিটি সম্পাদন করার আগে ডিবি বন্ধ করতে হবে।


হ্যাঁ, ভাল মনে করিয়ে দেওয়া, আমার মনে হয় আমাকে '/ etc / fstab' এবং '/boot/gru/grub.cfg' বাদ দিতে হবে। এটা কি ভালো?. দয়া করে নির্দিষ্ট ডিরেক্টরিগুলির আরএসসিএনসি ইনক্রিমেন্টাল সিঙ্ক্রোনাইজেশনের জন্য কমান্ডগুলি রাখুন।
ব্যবহারকারী3215


আমি কীভাবে ক্লোন সিস্টেমের ইউআইডিগুলি আপডেট করব।
ব্যবহারকারী3215

আপনাকে ক্লোন সিস্টেমের পার্টিশনের ইউআইডিগুলির সাথে fstab এবং গ্রাব কনফিগারেশনের মূল পার্টিশন থেকে ইউআইডিগুলি প্রতিস্থাপন করতে হবে। আপনি এর সাথে পার্টিশন আইডির তালিকা করতে পারেন: ব্লকিড id
জোও পিন্টো

আপনি বলতে চাইছেন উভয় সিস্টেমে ইউআইডিগুলি একই হওয়া উচিত।
user3215

6

প্রথমত, অনেকগুলি আইএএএস ক্লাউড সরবরাহকারী শক্তিশালী স্ন্যাপশট ক্ষমতা সরবরাহ করে যা এটি সহজেই সমাধান করে।

ইসি 2 তে, আপনি যদি কোনও ইবিএস ভিত্তিক সিস্টেম পরিচালনা করেন তবে আপনি পর্যায়ক্রমে এটি স্ন্যাপশট করতে পারেন। যদি উত্স উদাহরণটিতে কোনও ভয়াবহ কিছু ঘটে তবে আপনি পূর্বের স্ন্যাপশটে একেবারে নতুন উদাহরণে ফিরে যেতে পারেন। আপনি যদি কোনও স্ন্যাপশট সংরক্ষণাগারবদ্ধ করতে চান তবে আপনি এটি যুক্ত করে অন্য একটি উদাহরণ বুট করতে পারেন, এবং উত্পাদন বাক্সকে নেতিবাচকভাবে প্রভাবিত না করেই টার + এস 3 এর মতো কিছু ব্যবহার করতে পারেন।

এই পদ্ধতির সাথে বেশ কয়েকটি সমস্যা রয়েছে যা এখনই আপাতদৃষ্টিতে আপাতত নাও হতে পারে।

  1. আপনি নিজেকে একটি প্রযুক্তিতে লক করছেন। আপনি যদি উবুন্টু ১০.১০ এ কাজ করে থাকেন এবং আপনি ১১.০৪ এ যেতে চান, আপনাকে উত্স সিস্টেমটি আপগ্রেড করতে হবে, তারপরে আবার এটি স্ন্যাপশট করুন। তেমনি, আপনি যদি ইসি 2 এর ইবিএস স্ন্যাপশট ব্যবহার করেন, আপনি যদি র‌্যাকস্পেস ক্লাউডে যান তবে আপনাকে নতুন সমাধানের প্রয়োজন।
  2. আপনি আরএসসিএনসি ব্যবহার করলে আপনার কোনও পরিবর্তনের ইতিহাস নেই। আপনি যদি সিস্টেম 1-এ কিছু পরিবর্তন করেন, তবে কিছু কিছু ভেঙে যায়, আপনি যখন আরএসসিএন করেন তখন সম্ভবত আপনার ব্যাকআপ সিস্টেমটিও ভেঙে ফেলবেন।
  3. Rsync আপনার উত্পাদন সিস্টেমে অত্যন্ত উচ্চ প্রভাব ফেলতে পারে।

আপনি যা চান তা হ'ল একটি কনফিগার ম্যানেজমেন্ট সিস্টেম এবং ডেটা উচ্চ প্রাপ্যতা।

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

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


2

বার্তাগুলির কারণ হতে পারে কারণ নতুন সার্ভার ঘড়িটি পুরানোটির চেয়ে সময়ের মধ্যে পিছনে রয়েছে।

আপনি যদি প্যাকেজ ম্যানেজার কনফিগারেশন এবং ডাটাবেস ক্লোনিং করে থাকেন (এবং আপনি), আপনার ক্লোন / বিন, / এসবিন এবং / লিব বা গন্তব্য সিস্টেমটি একটি বেমানান অবস্থানে থাকবে। আর একটি পদ্ধতি হ'ল /etc/dpkg.info / etc / apt / var / lib / apt এবং / var / lib / dpkg এবং লক্ষ্য সিস্টেমে সমস্ত প্যাকেজ পুনরায় ইনস্টল করা।

/ Var / dpkg এবং / var / apt এ থাকা ফাইলগুলিতে আপনার সিস্টেমে কী ইনস্টল করা আছে সে সম্পর্কে তথ্য থাকে। আপনি যদি এগুলি বাদ না দেন তবে প্যাকেজ ম্যানেজার বিশ্বাস করবে যে প্যারেন্ট সিস্টেমে সমস্ত প্রোগ্রাম এবং নির্ভরতা লক্ষ্যবস্তুতে ইনস্টল করা আছে। তবে আপনি যদি / বিন, / এসবিন, ইত্যাদি অনুলিপি না করেন ... তারা তা করবে না। এটি সম্ভবত খুব সম্ভবত পরবর্তী ইনস্টল বা আপডেটে কিছু ভঙ্গ হবে।

তারপরে আরএসসিএনসি এর সাথে সিঙ্ক করার জন্য আমি সর্বদা শংসাপত্রযুক্ত ভিত্তিক প্রমাণীকরণ ব্যবহার করেছি, পাসওয়ার্ড নয়। এটি সেটআপ করা বেশ সহজ, আমি মনে করি আমি এটি প্রথমবারের মতো ম্যান পৃষ্ঠাটি পড়েছি। এখানে একটি দ্রুত গাইড রয়েছে , আপনি যদি আরও তথ্য চান তবে আমি বিশ্বাস করি যে এটি একটি নতুন প্রশ্নের দাবি রাখে।


নং / ভার বাদ নেই। উপরের কমান্ডে "--exclud /etc/resolv.conf" এর পরে /etc//0/var / mnt থেকে সমস্ত কিছু অন্তর্ভুক্ত করা হয়েছে। আসলে আমি রেজোলভকনফ এবং / ইত্যাদির মধ্যে দুটি স্পেস নির্দিষ্ট করে দিয়েছি। এখানে এটি প্রদর্শিত হচ্ছে না।
ব্যবহারকারীর 21215

দুঃখিত আমি লিংক অংশটি ভুলে গেছি
user3215

ঠিক আছে, সুতরাং আমি এমনকি বিন, sbin, এবং lib অন্তর্ভুক্ত করা উচিত, এখানে ঠিক আছে। ওহ .. আমাকে সেগুলি বাদ দিয়ে সমস্ত প্যাকেজ ইনস্টল করতে হবে।
ব্যবহারকারী3215

/etc/dpkg.info / etc / apt / var / lib / apt এবং / var / lib / dpkg কে বাদ দেওয়া কি সত্যিই প্রয়োজনীয়? ..
ব্যবহারকারী3215

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