تبلیغات
وبلاگ تخصصی لینوکس - مطالب مرداد 1392
و هرچیز جالب دیگه ای ;)

بک‌آپ incremental توسط کامند tar

نویسنده :. .
تاریخ:جمعه 11 مرداد 1392-03:00 ب.ظ

همونطور که می‌دونید کامند tar برای گرفتن فایل پشتیبان از فایل‌ها و دایرکتوری‌هایی که براتون مهمه استفاده می‌شه. کامند tar یه اٌپشن خوبی داره برای گرفتن بک‌آپ‌های incremental، که معمولا هم مورد استفاده قرار نمی‌گیره! اما با توجه به اقزایش حجم اطلاعات مورد نیاز که می‌بایست از اون‌ها فایل پشتیبان بگیریم، استفاده و بکارگیری از این اٌپشن خیلی بدرد بخوره.

اٌپشن listed-incremental-- اجازه گرفتن فایل پشتیبان از مسیرهای مورد نیاز را بصورت incremental به ما می‌دهد. برای مثال یک دایرکتوری و یک سری فایل داریم که هرروز یک سری فایل و همینطور محتوا به اون دایرکتوری‌ و فایل‌ها اضافه میشه و از اونجایی که فایل‌ها برامون اهمیت دارن، هرروز بایستی از اونها بک‌آپ تهیه کنیم. خب به جای اینکه هرروز بک‌آپ کاملی از مسیر مورد نظر بگیریم و در نهایت فایل‌های زیادی داشته باشیم، می‌تونیم بک‌آپ incremental بگیریم تا فقط تغییراتی رو که بعد از آخرین اجرای tar در دایرکتوری‌مون ایجاد شده رو ذخیره کنیم و داشته باشیم.

فایلی که مقابل اٌپشن listed-incremental وجود دارد، فایل meta نام دارد و در این فایل اطلاعاتی از محتویات دایرکتوری‌ قرار خواهد گرفت. در هر بار اجرای این دستور می‌توانید ببینید که این فایل آپدیت می‌شود.


نحوه گرفتن فایل پشتیبان incremental یک مسیر توسط کامندtar:


$ cd Pictures/

$ tar --listed-incremental=glxy.meta -cvj --file=glxy-pics-02082013.tar.bz2 galaxy/

output

tar: galaxy: Directory is new

galaxy/

galaxy/Adromeda_Galaxy_by_zesly.jpg

galaxy/Autosave001_15framespsa.jpg

galaxy/Frozen_Galaxy_by_Vpr87.jpg

galaxy/Milky_Way_Galaxy_artwork.jpg

galaxy/The-Barred-Spiral-Galaxy-NGC-1300---2.jpg

galaxy/Warped_Edge-On_Galaxy_ESO_510-G13.jpg

galaxy/andromeda.jpg

galaxy/galaxy-eso-593-8.jpg

galaxy/galaxyhoag.jpg

galaxy/hst_ngc4414_9925.jpg

galaxy/ngc3190_hstlegacy_big.jpg

galaxy/ring-galaxy.jpg

galaxy/spiral_galaxy_500x374.jpg


وقتی برای بار اول از مسیر مورد نظر بک‌آپ incremental میگیریم، از اونجایی که tar خیلی باهوش عمل می‌کنه :)، یک بک‌آپ full از محتویات دایرکتوری‌ ما میگیره. و در دفعات بعدی که کامند اجرا میشه فقط تغییرات رو ثبت می‌کنه. نتیجه‌ی اجرای این دستور در روز دوم و پس از افزودن چنپ فایل دیگر به دایرکتوری‌ به صورت زیر خواهد بود.


$ tar --listed-incremental=glxy.meta -cvj --file=glxy-pics-03082013.tar.bz2 galaxy/

output

galaxy/

galaxy/Eyecompr.jpg

galaxy/eye_of_god.jpg

galaxy/galaxy_messier81_lg.jpg

نکته‌ای که مهمه اینه که نام فایلی که بک‌آپ از مسیر ما تهیه می‌کنه هر دفعه که اجرا می‌شه باید متفاوت باشه بخاطر اینکه نتیجه هربار اجرا روی فایل قبلی overwrite نشه! بهتره که اسامی فایل‌های بک‌اپ به نام همون روز که بک‌آپ تهیه می‌شه نام‌گذاری بشه تا بازگردونی فایل‌ها راحتتر باشه.


نحوه بازگردانی (restore) فایل‌های بک‌آپ incremental گرفته شده:

بازگردانی محتویات دایرکتوری‌ که از آن بک‌آپ تهیه شده هم به همون آسونیه بک‌آپ گرفتن هستش. برای اینکار کافیه که فایل‌هایی که می‌خوایم برگردونیم رو به همون ترتیبی که ایجاد شدن بازگردانی کنیم و تو یه مسیر بریزیم.


$tar xvfj glxy-pics-02082013.tar.bz2 -C galaxy-restore/

output

galaxy/

galaxy/Adromeda_Galaxy_by_zesly.jpg

galaxy/Autosave001_15framespsa.jpg

galaxy/Frozen_Galaxy_by_Vpr87.jpg

galaxy/Milky_Way_Galaxy_artwork.jpg

galaxy/The-Barred-Spiral-Galaxy-NGC-1300---2.jpg

galaxy/Warped_Edge-On_Galaxy_ESO_510-G13.jpg

galaxy/andromeda.jpg

galaxy/galaxy-eso-593-8.jpg

galaxy/galaxyhoag.jpg

galaxy/hst_ngc4414_9925.jpg

galaxy/ngc3190_hstlegacy_big.jpg

galaxy/ring-galaxy.jpg

galaxy/spiral_galaxy_500x374.jpg


$ tar xvfj glxy-pics-03082013.tar.bz2 -C galaxy-restore/

output

galaxy/

galaxy/Eyecompr.jpg

galaxy/eye_of_god.jpg

galaxy/galaxy_messier81_lg.jpg


برای گرفتن فایل‌ پشتیبان بصورت اتوماتیک از مسیرهای مورد نیاز، می‌توان دستورات را در قالب یک اسکریپت نوشت و مسیری که اسکریپت در آن نوشته شده است را در crontab سیستم‌ قرار داد تا در بازه‌های زمانی مورد نیاز مثلا روزانه راس ساعت دلخواه اجرا شود.




داغ کن - کلوب دات کام
نظرات()