X
تبلیغات
رایتل
پشتیبانگیری در لینوکس - اموزش لینوکس و برنامه نویسی در لینوکس
جمعه 15 تیر‌ماه سال 1386

با سلام به همه


این مطلب رو از سایت ایران توکس برداشتم
لینک مطلب رو هم این پایین میزارم
لینک مقاله



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

I.پشتیبان‌ گیری؟

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

II.چه چیزی به پشتیبان‌گیری نیاز دارد؟

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

$cp /etc/apache/httpd.conf /etc/apache/httpd.conf.bak

حال اگر به هر دلیل تنظیمات جدید مشکلی داشته باشند بلا فاصله از فایل پشتیبان استفاده می‌کنیم برای این کار نیز کافیست نام فایل را از http.conf.bak به httpd.conf تغییر دهیم.
یکی دیگر از مکان‌هایی که باید یک کپی پشتیان از آن داشته باشیم دایکتوری خانگی کاربرانمان به است ، بهتر است پس از هر نصب به طور مرتب از این دایرکتوری‌ها که در home/ قرار دارند یک کپی پشتیبان تهیه کنیم تا در صورتی که مشکلی پیش آمد بلا فاصله بتوانیم با بازگردانی این کپی مشکل کاربر را حل کنیم.

آیا از پایگاه‌های داده استفاده می‌کنید؟ اگر بله حتما از تمام محتویات این پایگاه‌ها یک کپی بگیرید ، برای این‌کار ابزارهای مختلفی در لینوکس وجود دارد که بسته به مدیرپایگاه داده‌ای که استفاده می‌کنید می‌توانید از یکی از این ابزارها استفاده کنید. اگر در کنار لینوکستان ویندوز یا سیستم عامل دیگر ویا حتی لینوکسی دیگر دارید پس فکر خوبیست که از دایرکتوری بوت خودتان در boot/ نیز یک کپی پشتیبان برای روز مبادا داشته باشید. شاید لینوکستان هرگز با مشکلی مواجه نشود اما ویندوز بعد از مدتی به نصب دوباره نیاز خواهد داشت پس داشتن یک کپی از این دایرکتوری آسایش خاطرتان را فراهم خواهد کرد.

III.رسانه‌های پشتیبان‌گیری

یکی از مسائل مهم در امر پشتیبان‌گیری رسانه‌های پشتیبان‌گیری هستند. درواقع فضایی که قرار است برروی آن پشتیبان‌هایتان را قرار دهید بسیار مهم است. این فضا می‌تواند یک بخش دیسک سخت شما ، یک دیسک سختی دیگر در سیستمی دیگر ، یک دیسک سخت خارجی یا هر رسانه‌ی دیگر باشد. مسلما نمی‌توانید یک گیگابایت اطلاعات را برروی فلاپی دیسک‌های۱.۴۴ مگابایتی پشتیبان بگیرید ! بنابراین باید یک رسانه‌ی مناسب برای این کار پیدا کنید . آنچه امروزه در هر خانه‌ای پیدا می‌شود درایو‌های سی‌دی است ، سی‌دی رسانه‌ای نسبتا ارزان و در دسترس برای کاربران خانگی با حجم اطلاعات کم است . البته DVD با حجم بیشتر و قیمتی چند برابر بیشتر نیز وجود دارد که اغلب برای پشتبان‌گیری فایل‌های صوتی و تصویری با کیفیت مناسب پیشنهاد می‌گردد و برای پشتیبان گیری از اطلاعات سی‌دی رسانه‌ای است ارزان‌تر و در دسترس تر.

تکنولوژی روز به روز پیشرفت می‌کند و محصولات و سخت افزار های پشتیبان گیری نیز به همین سرعت در حال پیشرفت‌اند ، یکی از محصولات این پیشرفت کارتریج‌های ذخیره‌ی اطلاعات است که اغلب از طریق رابط USB به سیستم‌ها متصل می‌گردد.این کارتریج‌ها با حجم‌های گوناگونی موجودند از ۳۲ مگابایت تا چند گیگابایت اما به کارتریج‌هایی که حدود ۱۰۰ یا ۲۵۰ مگابات حجم دارند Zip درایو می‌گویند و به کارتریج‌هایی که حدود ۱تا۲ گیگابایت حجم دارند Jazz درایو گفته می‌شود. البته متاسفانه در بازا ایران به این رسانه‌ها اشتباها USB درایو یا نام‌هایی از این قبیل اطلاق می‌گردد ، اگر کمی دقت کنید USB درایو به معنی درایوی است که USB در آن قرار می‌گیرد وبا ماهیت یک رسانه‌ی ذخیره‌ی اطلاعات بسیار متفاوت است و در بودن وسیله‌ای به نام USB درایو مشکوکم :) گذشته از نامشان این کارتریج‌ها بیشتر برای جابجایی اطلاعات وسیله‌ای مفیدند ، با توجه به قیمت این ابزار‌ها که حدود ۳۷ هزار تومان تا ۱۹۰ هزار تومان است ابزار‌های مناسبی برای پشتیبان‌گیری به شمار نمی‌آیند اما ابزار‌های فوق‌العاده‌ای برای جابجایی اطلاعات هستند که در لینوکس نیز به خوبی پشتیبانی می‌شوند.

از معیار‌های بسیار مهم در انتخاب یک ابزار پشتیبانی هزینه‌ی آن است برای محاسبه‌ی هزینه‌ی یک رسانه‌ی پشتیبان‌گیری از واحد "تومن بر مگابایت " استفاده می‌کنند . البته می‌تواند ریال یا دلار یا هر واحد دیگری بر مگابایت باشد ;) . یک Zip درایو ۲۵۶ مگابیتی با قیمت ۷۰ هزار تومان هزینه‌ای معادل ۲۳۷ تومان برای هر مگابایت دارد. حال آنکه یک سی‌دی ۷۰۰ مگابایتی با قیمت ۳۰۰ تومان حدود ۰.۴ تومان برای هر مگابایت هزینه در بر خواهد داشت.

یکی از معیارهای دیگر انتخاب یک رسانه‌ی خوب سرعت آن است ، فرض کنید ساعت ۴ بعد از ظهر برای رفتن به منزل آماده می‌شوید و تا ساعت ۵ باید ۲ گیگابایت اطلاعات تولید شده را پشتیبان‌گیری کنید در این صورت یک Jazz درایو ۲ گیگی که از طریق کابل USB به کامپیوتر متصل شده است با سرعت ۶۰ مگابایت در ثانیه کمی برای این کار کند است ! بنابراین به رسانه‌ای سریع‌تر نیاز دارید.

سرعت ، قیمت پایین‌تر اطمینان در صحت پشتیبان‌گیری و حجم بالای رسانه برای پشتیبان‌گیری برای حجم‌های بالا و کارهای دفتری و سطوح بالاتر تنها در یک رسانه‌ی دیرینه گرد هم آمده اند ؛ این رسانه نوار مغناطیسی است! بله یک نوار مغناطیسی با ظرفیت 80 گیگابایت یا 40 گیگیابایت که از طریق بورد اسکوزی[۱] می تواند با سرعتی بسیار بالا اطلاعات شما را پشتیبان گیری کند و آن را برای بایگانی در اختیار شما قرار دهد ، در کنار این حجم و سرعت قابلیت چندبار خواندنی و نوشتنی این رسانه و هزینه‌ی پایین نوارهای مغناطیس باعث شده این ابزار در سطح سرویس دهنده‌ها محبوبیت خاصی داشته باشد. حتی شرکت‌های بزرگ و کوچکی که به پشتیبان‌گیری از اطلاعات خود اهمیت می‌دهند ترجیح می‌دهند با پرداخت حدود ۱۲۰ هزار تومان برای خرید یک Tape drive یا درایو نوار مغناطیسی برای کارهای خود از این ابزار استفاده کنند ، شما ظرف چند دقیقه تمام گزارشات روزانه را در نواری ذخیره و در جیب یا کیف خود به محلی امن خواهید برد. البته نوارهای مغناطیسی در سایزها و حجم‌ها و سرعت‌های مختلفی وجود دارند اما اغلب با حجم‌های ۴۰ و ۸۰ گیگابایتی در بازار وجود دارند و با این دو حجم مصرف می‌شوند.
راه دیگری که برای پشتیبان‌گیری اطلاعات وجود دارد استفاده از تکنولوژی RAID ویا استفاده از دو دیسک سخت به صورت Mirror است که هر آنچه در یکی نوشته می‌شود در دیگری نیز نوشته خواهد شد ؛ البته به دلیل نبودن مجال برای بررسی این موضوعات تنها به نام بردن آن‌ها اکتفا می‌کنیم.
مسلم است که یک کاربر خانگی هرگز نیاز ی به یک درایور نوار مغناطیسی ندارد و یا نیاز یک سرویس دهنده با سی‌دی و zip درایو بر طرف نخواهد شد بنا براین تصمیم گیرنده‌ی نهایی شما هستید که با توجه به شرایط و حجم کار و نیز اهمیت سرعت و قیمت درباره‌ی رسانه‌ی مورد استفاده‌ی خود تصمیم خواهید گرفت.

IV. روش‌های پشتیبان‌گیری

پس از انتخاب اطلاعاتی که قرار است پشتیبان گیری شوند و رسانه‌ای مناسب برای این کار نیاز به یک روش یا استراتژی برای اجرای آن داریم ، روش‌های مختلفی برای پشتیبان گیری وجود دارد. در این مقاله به سه روش اصلی پشتیبان گیری اشاره خواهیم کرد. این سه روش نام‌های Full و Differential و Incremental دارند. مفهوم این سه را در سه پاراگراف به صورت اجمالی بررسی می‌کنیم.

در روش Full همان طور که از نامش پیداست تمام اطلاعات بدون ذره‌ای تغییر پشتیبان گیری می شوند. مزیتی که این روش دارد آنست که اگر اطلاعات دچار مشکل شوند با یکبار بازگردانی اطلاعات بازیابی می‌شوند ، برای نمونه اگر صبح به محل کارتان آمدید و دیدید هارد دیسکتان خراب شده تمام اطلاعات با یکبار کپی از روی نوار یا هارد دیگر بازیابی می‌شوند و در واقع عمل بازیابی سریع‌تر است. اما این روش اغلب روشی نامناسب است ، دلایل بسیاری برای این موضوع وجود دارد از هزینه تا وقت ، شاید بازیابی اطلاعات سریع باشد اما فکر کنید که هر روز بخواهید از اطلاعات به طور کامل پشتیبان گیری کنید ، بنابراین روزانه ساعاتی را صرف این کار خواهید کرد و ممکن است بیشتر اطلاعات مورد پشتیبانی شما تکراری باشند ، یک نمونه ، شما یک درایو شبکه‌ی ۴۰ گیگی دارید که روزانه حداکثر ۱۰ گیگ آن تغییر می‌کند اگر بخواهید هر روز از تمام این اطلاعات پشتیبان تهیه کنید بنابراین زمان و رسانه‌ی بیشتری را صرف ودر واقع هدر کرده‌اید ، چرا که روزانه ۳۰ گیگ اطلاعات ثابت را پشتیبان گیری می‌کنید که این ۳۰ گیگ هم زمان برای پشتیبانی می‌خواهد هم رسانه‌ای حجیم برای پشتیبان‌گیری نیاز دارد.

روش دوم Differential نام دارد به معنی آنچه تغیییر یافته یا متفاوت‌ها ! در این روش شما تنها از آنچه را که نسبت به آخرین پشتیبانی تغییر کرده پشتیبان می‌گیرید ، در نمونه‌ی قبلی شما فقط ۱۰ گیگی را که تغییر می‌کند پشتیبان می‌گیرید و نیازی به پشتیبان‌گیری اطلاعات تغییر نیافته ندارید. در این روش شما روزانه زمان کمتری را صرف پشتیبان‌گیری می‌کنید اما بازگردانی کمی دشوارتر است .

در روش سوم به نام Incremental یا افزوده‌ها تنها آنچه را که نسبت به بار قبل اضافه شده است را پشتیبان می‌گیریم.این روش برای پشتیبانی‌های روزانه بسیار مقید است. توجه داشته باشید در روش Difrential ما آنچه را که نسبت بار قبل تغییر داشت را پشتیبان می‌گرفتیم و در اینجا آنچه را که نسبت به بار قبل افزوده شده است را پشتیبان می‌گیریم. بنابراین در این روش رسانه‌ی بسیار کمتری مصرف خواهد شد اما بازگردانی اطلاعات نیز به همان میزان سخت‌تر.

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

V. یک سناریوی کوچک

با توجه به اهمیت مطالب ذکر شده یک سناریوی مختصر را بررسی می‌کنیم و پس از آن به بررسی ابزارهای پشتیبان‌گیری در لینوکس خواهیم پرداخت.[۲] در این مثال ما فرض می‌کنیم شما پنج فایل به نام‌های dat1 و dat2 و dat3 و dat4 و dat5 دارید و ۸ عدد CD-RW . روز شنبه یک پشتبان کامل از این فایل‌ها بر روی یک سی‌دی تهیه می کنید.روز دوشنبه dat2 و dat3 و dat4 تغییر می‌کنند و از این رو ما نیز یک پشتیبان Diferential از فایل‌های dat2 و dat3 و dat4 بروی سی‌دی دوم تهیه می‌کیم.
روز سه شنبه dat4 و dat5 تغییر می‌کنند .از لحاظ تئوری نیاز داریم که از dat2 و dat3 و dat4 و نیز dat5 یک پشتیبان Differential تهیه کنیم . اما با یک پشتیبان incremental به سادگی از آنچه اضافه شده یعنی dat4 و dat5 برروی سی‌دی سوم یک پشتیبان می‌گیریم، این کار بسیار منطقی‌تر به نظر می‌رسد. بوسیله‌ی پشتیان‌های incremental می‌توانید تغییرات روزانه را پشتیبان گرفته و هر روز برروی یک سی‌دی کپی کنید. این کار را تا جمعه‌ی بعد یعنی زمانی که یک پشتیبان کاما می‌گیریم ادامه می‌دهیم.بنابراین هفت سی‌دی استفاده شده و سی‌دی هشتم هم همان دیسکی است که بار اول تمام ۵ فایل را برروی آن کپی کردیم. (توجه ما صبح روز شنبه یک پشتیبان کامل گرفتیم و در عصر همان روز نیز یک پشتیبان incremental از آن تهیه کردیم و ...) .

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

VI.فشرده سازی آرشیوها

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

VII. استفاده از cp برای پشتیان‌گیری

اساسا این دستور برای کپی در خط فرمان استفاده می‌شود. پشتیبان‌گیری نیز یک کپی برداری در جایی دیگر است ! بنا براین می‌توانید برای کاربردّای معمولی یا سریع از این دستور استفاده کنید. برای نمونه قبل از تغییر یک فایل مهم یا یک فایل پیکره بندی از آن فایل در همان دایرکتوری یا در یک دایرکتوری خاص یک کپی پشتیبان بگیرید. در مثال زیر ما ابتدا یک دایرکتوری برای پشتیبان‌گیری ایجاد می‌کنیم و سپس فایل پیکره بندی محیط X را در ان یک کپی می‌گیریم.
#mkdir backups #cp /etx/X11/XF86Config backups/XF86Config.bak

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

دستور tar یکی از بهترین ابزارهای موجود برای پشتیبان‌گیری است ، ابزاری دقیق ، مطمئن و مملو از قابلیت‌ها ، این ابزار که ابتدا برای یونیکس برای آرشیو سازی برروی نوارهای مغناطیسی طراحی شده بود .(Tape Archive یا Tar!) و با توجه به کاربرد یونیکس این ابزار نیز برای آرشیو سازی‌های در حجم بالا ومهم استفاده می‌شده است ، پس از تولد لینوکس یک نسخه‌ی GNU ای از این برنامه نوشته شده و در لینوکس قرار داده شده تا کاربران لینوکس نیز از امکانات بی نظیر این برنامه بهره‌مند گردند. با استفاده از گزینه‌ی f- که ابتدای فایل است شما می‌توانید فایل‌های خود را در یک فایل آرشیو کنید و در نوار مغناطیسی ، یا هر رسانه‌ی دیگری نگه داری کنید.

الف. پشتیبان‌های کامل یا Full
برای این منظور باید از ساختار این ابزار به شکل زیر استفاد کنید.
$tar [ فایل‌ها و نیز دایرکتوری‌ها‌ای که قرار است پشتیبانشان تهیه شود] [نام فایل آرشیو] [گزینه‌ها] $tar [Options] [Archive_file_Name] [files and directories for archiving]

برای یک پشتیبان گیری ساده از گزینه‌‌ی cf- استفاده می‌شود که c ابتدای Create به معنی ایجاد و f ابتدای File به معنی ذخیره‌ی آرشیو در یک فایل است. اگر می‌خواهید یک دایرکتوری کامل با را با تمام محتوای آن به صورت Full و همراه با مسیر‌های آن پشتیبان بگیرید از گزینه‌ی P- استفاده کنید. توجه کنید که P به صورت حرف بزگ نوشته شده است.
$tar -Pcf /mnt/disk2/backup.tar /home/tux/*

در این نمونه تمام فایل‌ها و دایرکتوری‌های موجود در دایرکتوری home کاربر tux به طور کامل در فایل mnt/disk2/backup.tar/ آرشیو شده‌اند.

ب. پشتیبان‌های Differential
بوسیله‌ی tar پشتیبان‌های کامل یا fullرا ایجاد کردیم ، حال برای ایجاد آرشیوهایی که تغییرات یا Differential ها را شامل هستند می‌توانیم از راه‌های گوناگونی استفاده کنیم. یکی از معمول‌ترین یا رایج‌ترین گزینه‌ها گزینه‌ی g- است.
$tar -cf /mnt/disk2/backup.tar -g work /home/tux/*

در این دستور نام فایل تغییر نخواهد کرد و تمام فایل‌هایی که در فایل آرشیو موجودند بدون تغییر باقی می‌مانند و تنها فایل‌هایی که از آخرین‌بار تغییر یافته یا اضافه شده‌اند به آرشیو افزوده خواهند شد.

پ.پشتیبان Incremental
برای تهیه‌ی این پشتیبان کمی هم از دستور find کمک می‌گیریم :
$tar -cf /mnt/disk2/backupinc.tar `find /home/tux/* -mtime 5 `

با این روش تمام فایل‌هایی که در ۵ روز گذشته تغییر کرده‌اند در فایل mnt/disk2/backupinc.tar/ ذخیره خواهند شد.
اگر می‌خواهید فایل‌هایی که پس از دوم ژانویه‌ی سال ۲۰۰۵ تغییر کرده‌اند را آرشیو کنید از دستور زیر استفاده کنید.(ژانویه ماه اول سال میلادی است)
$tar -N 2005-01-02 -Pcf /mnt/disk2/backup.tar /home/tux/*

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

$tar -pcf /mnt/disk2/backup.tar /home/tux/*



IX. پشتیبان‌های فشرده شده

اگر می‌خواهید فایل‌های آرشیو خود را به صورت فشرده شده ذخیره کنید می‌توانید از دستور gzip استفاده کنید ، فشرده کردن با این ابزار بسیار ساده است :
$gzip backup.tar

حاصل کار یک فایل به نام backup.tar.gz خواهد بود. فایلی را که با این دستور به حالت فشرده در آورده‌اید با دستور gunzip از حالت فشرده می‌توانید خارج کنید :
$gunzip backup.tar.gz

البته در ابزار tar نیز متدهایی به صورت توکار وجود دارد ، برای نمونه گزینه‌ی z- خودش برنامه‌ی gzip را فرامی‌خواند و پس از آن فایل آرشیو شده را فشرده می‌کند.
$tar -zcf /mnt/disk2/backup.tar.gz /home/tux/*

جز برنامه‌ی Gzip برنامه‌ی Bzip2 نیز برای فشرده سازی استفاده می‌گردد که اغلب نتیجه‌ای با حجم کمتر در بر دارد که برای فشرده سازی با این برنامه کافیست در فرمان tar خود از گزینه‌ی j- به جای z- استفاده کنید.
$tar -jcf /mnt/disk2/backup.tar.bz2 /home/tux/*



X. کنترل آرشیو‌ها

برای کنترل و حصول اطمینان از آنچه در آرشیو دارید از گزینه‌ی d- استفاده کنید ، این گزینه صحت فایل شما را چک می‌کند :
$tar -df /mnt/disk2/backup.tar

اما اگر می‌خواهید آنچه را که آرشیو کرده‌اید ببینید از گزینه‌ی v- استفاده کنید. گزینه‌ی v- که ابتدای Verbos است عمل چک کردن را به صورت Verbos یعنی همراه با جزئیات نمایش می‌دهد. البته از این گزینه در هرجای دیگر این برنامه نیز استفاده کنید تمام مراحل کار را به صورت بسیط یا Verbose یعنی با تمام جزئیات نشان می‌دهد. اگر همه چیز صحیح باشد شما نباید هیچ پیغام خطایی دریافت کنید.
برای اطلاع از محتوا بهتر است از گزینه‌ی t- استفاده کنید که به همین منظور در برنامه تعبیه شده است :
$tar -tf /mnt/disk2/backup.tar tux/bin tux/mail tux/otherfiles!

اگر فایل شما با z یا j یا همان برنامه‌های Gzip و Bzip2 فشرده شده‌اند از این دستور به شکل ‌های زیر استفاده کنید:
$tar -ztf /mnt/disk2/backup.tar.gz $tar -jtf /mnt/disk2/backup.tar.bz2



XI. بازگردانی فایل‌های آرشیو شده

برای بازگردانی فایل‌های آرشیو شده کافیست از گزینه‌ی x- استفاده کنید.
$tar -xf /mnt/mnt/disk2/backup.tar

اگر با دستور zxf- فایل‌هایتان را علاوه بر آرشیو فشرده کرده‌اید در این مرحله لازم است تا فایل‌ها را علاوه بر خارج کردن از حالت آرشیو از حالت فشرده نیز خارج کنید ، بنابراین :
$ tar -zxf /mnt/mnt/disk2/backup.tar.gz

واگر برای فشرده سازی از گزینه‌ی j- استفاده کرده بودید :
$tar -jxf /mnt/mnt/disk2/backup.tar.bz2

البته می‌توانید از گزینه‌ی v- در اینجا نیز استفاده کنید تا جزئیات عملیات را مشاهده کنید :
$ tar -zxvf /mnt/mnt/disk2/backup.tar.gz $tar -jxvf /mnt/mnt/disk2/backup.tar.bz2



توجه داشته باشید که ترتیب ذکر گزینه‌ها مهم نیست برای نمونه jxvf با xvjf یا fxjv تفاوتی ندارند.

XII. استفاده از cpio برای پشتیبان گیری

ابزار cpio یا CoPy in/out ابزاری است بسیار شبیه به tar اما برخی امکانات و قابلیت‌هایی جالب را نیز محیا می‌کند. برای نمونه برای آرشیو‌های صدمه دیده ویا ارسال فایل آرشیو همزمان به بیش از یک سخت افزار امکاناتی ویژه دارد. در این مقاله به طور اجمالی به این ابزار نیز خواهیم پرداخت.

الف.ایجاد فایل‌های پشتیبان به صورت Full یا کامل
برای ایجاد یک پشتیبان کامل از طریق این دستور به لوله کشی یا PIPE کردن در خط فرمان نیاز داریم ;) در صورتی که با این واژه آشنا نیستید لطفا قبل از هر چیز به مقالات موجود در اینترنت درباره‌ی خط فرمان لینوکس رجوع کنید. در این جا از تمام فایل‌های html یک پشتیبان می‌گیریم :
$ ls *.html | cpio -o > /mnt/disk2/backup2

از آنجایی که برای این گونه آرشیو سازی‌ها به pipe کردن یا ایجاد زنجیره‌ای از دستورات نیاز داریم پس می‌توان بسیار انعطاف پذیر با آن رفتار کرد ، برای نمونه با استفاده از دستور find در خط فرمان و ویژگی عمق داشتن آن م توانیم تا عمق ۲ دایرکتوری تمام فایل‌ها را پشتیبان بگیریم :
$ find /home/tux -maxdepth 2 -depth | cpio -o /mnt/disk2/backup3

در این جا هر فایل موجود در دایرکتوری home/tux/ و دایرکتوری‌های داخل آن‌ها که در عمق ۲ هستند داخل فایل backup3 ذخیره خواهند شد.

ب. پشتیبان‌گیری به صورت incremental
با استفاده از دستور find و ویژگی‌های آن می توانیم آنچه را که در ۵ روز گذشته تغییر کرده‌اند را به صورت یک پشتیبان Incremental ذخیره کنیم:
$ find /home/tux/ -mtime -5 -maxdepth 2 -depth | cpio -o > /mnt/disk2/backup4

XIII. چک کردن آرشیو های cpio بعد از تولید

برای چک کردن صحت آرشیو‌های ایجاد شده توسط دستور cpio می‌توانید از روش زیر استفاده کنید :
$ cpio -itvI /mnt/disk2/backup2 -rw-r--r-- 1 tux tux 100 Dec 5 20:03 /home/tux/test1.html -rw-r--r-- 1 tux tux 91 Dec 1 19:24 /home/tux/test2.html -rw-r--r-- 1 tux tux 212 Dec 4 17:05 /home/tux/test3.html -rw-r--r-- 1 tux tux 69 Dec 5 15:38 /home/tux/test4.html

XIV. بازگردانی فایل‌های آرشیو cpio به حالت اول

برای بازگردانی فایل‌های آرشیوی که توسط دستور cpio ایجاد شده‌اند باید از روش‌های pipe کردن استفاده کرد اما این بار کمی متفاوت‌تر یعنی به صورت برگشتی :
cpio -id < mnt/disk2/backup2



XV.پشتیبان‌های روزانه

اگر نیازمند پشتبان‌گیری روزانه هستید به خاطر داشتن زمان و تاریخ و یا نگارش آن ممکن است کمی دشوار باشد ، گاه مشاغل کاری بقدری زیادند که حتی تاریخ فراموش می‌شود بنابراین به روشی نیاز داریم که به صورت خودکار تاریخ به فایل‌های آرشیو افزوده شوند. برای این کار می‌توانید از مدل زیر پیروی کنید:
$tar -cvf backup_`date +%a-%b-%d-%y`.tar /home/tux/*

در این روش a روز هفته ، b ماه ، d تاریخ روز و y سال می‌باشد. با این روش خیالتان راحت است که تاریخ فایل‌ها همراه صحیح است ،این به شرطی است که تاریخ سیستم شما نیز صحیح باشد. توجه داشته باشید که بعد از date حتما یک فضای خالی بزنید و نیز قبل از date از Quate یا ' استفاده نکنید بلکه باید از ` استفاده کنید ؛ اما برای آنکه فقط فایل‌هایی را که امروز تغییر کرده‌اند آرشیو کنید و نه بیشتر باید از روش incremental بهره بگرید که در بالا گفته شد با این تفاوت که در بخش mtime - عدد 0 وارد می‌کنیم :
$tar -cf /mnt/disk2/backupinc.tar `find /home/tux* type f -mtime 0 `

XVI.نرم افزار‌های دیگر پشتیبان‌گیری
نرم افزارهای بسیاری برای پشتیبان گیری از اطلاعات وجود داند برای نمونه برنامه‌های dumpو restore که برای کار با نوار مغناطیسی هستند یا برنامه‌های گرافیکی مانند Kdat کار با نوار مغناطیسی می‌باشد. حتی برنامه‌هایی مانند XCDroast یا Gtoster یا K3B که برای نوشتن برروی سی‌دی استفاده می‌شوند نیز برنامه‌هایی هستند که در زمینه‌ی پشتیبان‌گیری استفاده می‌شوند.

آنچه در این مقاله مطالعه کردید نگاهی اجمالی به مسئله‌ی پشتیبان‌گیری از اطلاعات در لینوکس بود. البته پشتیبان‌گیری از پایگاه‌های داده‌ای چون MySQL و یا روش استفاده از نرم افزار‌های دیگر برای پشتیبان‌گیری در حیطه و حوصله‌ی این مقاله نمی‌باشند. قصد این مقاله آشنا سازی ابتدایی کاربران با پشتیبان‌گیری و شناساندن اهمیت و روش‌های معمول پشتیبان‌گیری است. چرا که روش‌های پشتیبان‌گیری ، استراتژی‌های پشتیبان‌گیری و یا برنامه‌های پشتیبان‌گیری هرکدام به تنهایی یک کتاب هستند.

به خاطر داشته باشید پس از شناسایی روش‌ها و ابزارهای مناسب این خلاقیت و تفکر است که می‌تواند با ایجاد یک استراتژی مناسب و ترکیب روش‌ها خیالتان را آسوده کند تا دیگر نگران از دست دادن اطلاعات نباشید. تا زمانی که اطلاعاتتان پشتیبان دارند منتظر هیچ بلایی نباشید! ;)




پاورقی:
این مقاله بر اساس این مقاله و نیز این مقاله که هر دو تحت مجوز‌ GNU/FDL می‌باشند منتشر شده است .
[۱]. که در ایران به اشتباه اسکازی تلفظ می‌شود .
[۲]. مثال حاضر بخشی از این مقاله است که با توجه به مجوز FDL مقالات این نشریه از مثال موجود در مقاله‌ی ذکر شده بهره برده‌ایم.