پشتیبان‌گیری و بازیابی فایل‌ها در سیستم‌عامل لینوکس

۷۴۸ بازدید
آخرین به‌روزرسانی: ۲۵ تیر ۱۴۰۲
زمان مطالعه: ۱۴ دقیقه
پشتیبان‌گیری و بازیابی فایل‌ها در سیستم‌عامل لینوکس

یکی از امکانات خیلی مهم در سیستم‌عامل‌ها، امکان «Undo» کردن کارها (همان «Ctrl + Z» معروف) است. اینکه بتوان وضعیت سیستم را بدون هیچ عوارضی به حالت قبلی بازگرداند، واقعا چیزی از جادو کم ندارد. با این ویژگی، حتی اگر ندانید یک مشکل از کجا به وجود آمده است، باز هم می‌توانید به سادگی به عقب برگردید. ویژگی «System Restore» که در ویندوز وجود دارد، یکی از مهمترین ویژگی‌هایی است که کاربران لینوکس خواستار آن هستند. حتی برخی نیز به دلیل کمبود همین یک ویژگی ادعا می‌کنند که لینوکس هیچوقت به خوبی ویندوز نخواهد شد. اگر شما هم فکر می‌کنید جای این ویژگی در لینوکس خالی است، پس حتما این مطلب را تا پایان مطالعه کنید، چراکه در این مقاله ابزارهایی معرفی شده‌اند که می‌توانند قابلیت «System Restore» را به لینوکس بیاورند.

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

عملکرد «System Restore» در ویندوز چگونه است؟

ویژگی «System Restore» اولین بار در سال 2000 همزمان با «Windows ME» معرفی شد. در آن زمان، این گزینه تنها قابلیت بازگردانی فایل‌های سیستمی و تنظیمات رجیستری سیستم را داشت و خیلی هم قابل اعتماد نبود. بعدها در ویندوز اکس‌پی و ویستا، این ویژگی بهبود پیدا کرد. از آن زمان، «System Restore» برای کار خود به یک سرویس به نام «Volume Snapshot Service» (در ویندوز 10 به نام «Volume Shadow Copy») متکی است تا بتواند به طور خودکار از سیستم یک «اسنپ‌شات» (snapshot) (به معنای عکس فوری که در پایینتر توضیح داده شده است) تهیه کند و به کمک آن‌ها «نقطه‌های بازگشت» (restore points) ایجاد نماید.

با اینکه این روش امکانات بیشتری نظیر اینکه حداکثر فضای اشغالی اسنپ‌شات‌ها چقدر باشد یا اینکه از چه فولدرهایی تهیه شوند در اختیار کاربران می‌گذاشت، ولی محدودیت‌هایی نیز به وجود آورد. در این حالت، «System Restore» تنها می‌توانست از پارتیشن‌هایی با فرمت «NTFS» اسنپ‌شات تهیه کند، همچنین تا قبل از ویندوز 8، این اسنپ‌شات‌ها نمی‌توانستند دائمی باشند.

Windows Restore

در هر نسخه از ویندوز، این ویژگی کمی گیج کننده‌تر شد. مثلا در نسخه‌ی «Home Edition» ویندوز ویستا، رابط کاربری برای بازگردانی اسنپ‌شات‌های قبلی وجود نداشت، یا در ویندوز 8 امکان بازگردانی نسخه‌های قبلی یک فایل از طریق منوی «Properties» در «File Explorer» از بین رفته بود. در نهایت هم این ویژگی به طور کامل در ویندوز 10 غیر فعال شد تا کاربران به اختیار خودشان آن را فعال کنند. احتمالا دلیل این تصمیم این بود که کاربران را به سمت استفاده از ویژگی‌های «Refresh» و «Restore» سوق دهند.

تا اینجا با «System Restore» در ویندوز آشنا شدیم. حالا به سراغ این ویژگی در سیستم‌عامل لینوکس می‌رویم.

عملکرد «System Restore» در لینوکس چگونه است؟

جواب ساده است؛ این ویژگی اصلا در لینوکس وجود ندارد، یا حداقل نامش این نیست و با چرخیدن در منوها چیزی به نام «System Restore» پیدا نخواهید کرد. برای داشتن ویژگی مشابه، باید یک روش انتخاب کرده و نرم‌افزارهای مورد نیاز آن را نصب نمایید. بیشتر این روش‌ها و نرم‌افزارها عملکردی مشابه «System Restore» در ویندوز دارند و با تهیه‌ی اسنپ‌شات‌های مختلف از سیستم، به شما اجازه‌ی بازگشت به عقب را می‌دهند.

قبل از اینکه به معرفی نرم‌افزارها بپردازیم، بهتر است اول کمی با اسنپ‌شات‌ها آشنا شویم.

تفاوت اسنپ‌شات با پشتیبان‌گیری چیست؟

واژه‌ی «پشتیبان» (Backup) از نظر لغوی شاید معنای مختلفی داشته باشد، ولی از نظر کلی، پشتیبان‌ها یک کپی از فایل‌ها هستند که در یک مکان مجزا از فایل‌های اصلی تهیه می‌شوند. معمولا پشتیبان‌ها شامل تمام محتوای موجود در دیسک نمی‌شوند و در صورتی که شامل همه‌ چیز باشند، به آن‌ها «disk image» یا «disk clone» گفته می‌شود. این نوع بک‌آپ‌ها همانند آینه‌ای برای تمام دیسک عمل می‌کنند و تمام اطلاعات کاربری، سیستمی، بخش‌های مربوط به بوت و هر چیز دیگری که در دیسک باشند را شمال می‌شوند. از «disk image»ها می‌توان در پروسه‌هایی استفاده کرد که در آن بدون سیستم‌عامل، اطلاعات از یک هارد به یک هارد دیگر منتقل می‌شوند.

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

نگهداری اسنپ‌شات‌ها در کنار داده‌های اصلی فایل سیستم‌، امکان بازگشت به عقب را فراهم می‌کند و در کنار آن نیز باعث صرفه‌جویی در مصرف حافظه می‌گردد. در این روش اینگونه نیست که هر اسنپ‌شات تمام داده‌های فایل سیستم را در خود ذخیره کند، بلکه آن‌ها همانند «پشتیبان‌های به هم پیوسته» (Incremental backups) کار می‌کنند که تنها آخرین تغییرات را در خود ذخیره می‌نمایند. با این کار، هر اسنپ‌شات برای اینکه بتواند سیستم را بازگردانی کند به اسنپ‌شات‌های قبلی خود نیاز دارد. توجه داشته باشید که یک کپی کامل از داده‌های فایل سیستم یا همان «disk image» کاملا مستقل است و می‌تواند به تنهایی سیستم را بازگردانی کند.

بازیابی سیستم در لینوکس

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

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

TimeShift

نرم‌افزار «TimeShift» در کنار داشتن یک رابط گرافیکی ساده، از طریق ترمینال نیز قابل استفاده است. در این برنامه به طور پیشفرض از فایل‌های شخصی کاربر اسنپ‌شات تهیه نمی‌شود، ولی در صورت نیاز می‌توانید پوشه‌ها و آدرس‌های شخصی را نیز به آن اضافه کنید. برای «Ubuntu» می‌توانید «TimeShift» را از طریق پکیج‌های شخصی توسعه‌ دهندگان (developer’s PPA) دریافت کنید:

1sudo apt-add-repository ppa:teejee2008/ppa
2sudo apt-get update
3sudo apt-get install timeshift

اگر از اوبونتو استفاده نمی‌کنید، می‌توانید فایل نصبی «TimeShift» را دانلود کرده و از طریق ترمینال اجرا کنید:

1./timeshift-latest-amd.64.run

همچنین یک نسخه از این نرم‌افزار برای فایل سیستم‌های «BTRFS» وجود دارد که از ویژگی اسنپ‌شات پیشفرض خود «BTRFS» پشتیبانی می‌کند.

نحوه‌ی عملکرد TimeShift

«TimeShift» بر اساس یک برنامه‌ی منظم از سیستم اسنپ‌شات تهیه می‌کند و شما نیز می‌توانید در هر زمانی که مایل بودید به صورت دستی به تهیه‌ی اسنپ‌شات بپردازید. می‌توانید برنامه‌های ساعتی، روزانه، هفتگی و ماهیانه برای آن تنظیم کنید و همچنین به آن بگویید که هر چند وقت یکبار اسنپ‌شات‌های قدیمی را حذف کند. حتی یک گزینه‌ی «Boot Snapshots» نیز دارد که پس از هر بار ریبوت کردن سیستم، یک اسنپ‌شات از آن تهیه می‌کند.

TimeShift

بازگردانی یک اسنپ‌شات با «TimeShift» نیز کار بسیار ساده‌ای است، تنها کافی است اسنپ‌شات مورد نظر را برگزیده و محل بازگردانی آن را مشخص کنید. این برنامه به شما اجازه می‌دهد که اسنپ‌شات‌ها را در یک حافظه‌ی جانبی نظیر هارد اکسترنال بازگردانی کرده و یا با استفاده از ویژگی «کلون» (Clone)، وضعیت فعلی سیستم را به طور کامل در یک حافظه‌ی دیگر کپی کنید. این کار به شما اجازه می‌دهد که سیستم‌عامل خود را بدون نیاز به هیچ کار اضافه‌ای، به یک رایانه‌ی جدید منتقل کنید.

TimeShift

قبل از اینکه یک اسنپ‌شات را بازگردانی کنید، «TimeShift» ابتدا از شما سوال می‌کند که آیا می‌خواهید تنظیمات نرم‌افزارها را هم نگه دارید یا خیر و به شما اجازه می‌دهد هر کدام را که می‌خواهید حفظ نمایید. توجه داشته باشید که «TimeShift» برای اینکه بتواند یک اسنپ‌شات بازگردانی شده را بوت کند، به «GRUB 2» نیاز دارد.

Cronopete

اگر «TimeShift» را از نظر ظاهری یک نرم‌افزار ساده بدانیم، «Cronopete» از آن هم ساده‌تر است. این نرم‌افزار خودش را یک نمونه از روی «Time Machine» در «OS X» می‌نامد و نحوه‌ی عملکردش کمی با «TimeShift» متفاوت است. «Cronopete» پکیج‌هایی را برای توزیع‌های اوبونتو، دبیان (Debian) و فدورا (Fedora) در دسترس قرار داده و برای «Arch Linux» نیز می‌توان از طریق مخزن «AUR» آن را تهیه کرد.

Cronopete

نحوه‌ی عملکرد Cronopete

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

اگر فایلی تغییر نکرده باشد، این برنامه به جای کپی کردن آن، از یک «Hard-link» استفاده می‌کند تا در فضای مصرفی صرفه‌جویی شود.

Cronopete

شاید بهترین ویژگی «Cronopete» نحوه‌ی بازیابی فایل‌های آن باشد. این گزینه به شما اجازه می‌دهد در زمان سفر کنید، یعنی می‌توانید تمام نسخه‌های ذخیره شده از فایل‌ها و پوشه‌های خود را مشاهده نمایید. برای بازیابی فایل‌ها تنها کافی است برروی گزینه‌ی «Restore» کلیک کنید تا فایل‌ها از هارد اکسترنال (یا هر فضای جانبی دیگری که انتخاب کرده باشید) به سیستم فعلیتان منتقل شوند. این نرم‌افزار برای بازیابی کل سیستم خیلی مناسب نیست، ولی اگر می‌خواهید چندین نسخه از برخی از فایل‌هایتان را به طور منظم نگهداری کنید، «Cronopete» گزینه‌ی مناسبی برای شما خواهد بود.

Back In Time

«Back In Time» در کنار رابط کاربری ساده‌اش، از تنظیمات و گزینه‌های زیادی برخوردار است.

رابط کاربری این نرم‌افزار مانند یک «ابزار مدیریت فایل» (File Manager) عادی می‌ماند که توسط آن می‌توانید اسنپ‌شات‌های گرفته شده را مشاهده نمایید، آن‌ها را مرور کنید و فایل‌های مورد نیاز برای بازیابی را از بین آن‌ها برگزینید.

BackInTime

اگر کاربر اوبونتو هستید، می‌توانید از طریق «PPA» اقدام به نصب این نرم‌افزار کنید:

1sudo add-apt-repository ppa:bit-team/stable
2sudo apt-get update
3sudo apt-get install backintime-qt4

این نرم‌افزار در مخازن چندین توزیع مختلف از لینوکس در دسترس است، ولی اگر در توزیع مورد استفاده‌ی شما در دسترس نبود، می‌توانید «Back In Time» را از منبع اصلی آن دریافت کنید.

نحوه‌ی عملکرد Back in Time

این نرم‌افزار به شما اجازه می‌دهد از پوشه‌های انتخابی خودتان اسنپ‌شات تهیه کنید، ولی برای بازگردانی آن‌ها، باید اجازه‌ی نوشتن (Write access) در آدرس مورد نظر را داشته باشید. حتی می‌توانید اسنپ‌شات‌های خود را رمزنگاری کرده و آن‌ها را در شبکه، حافظه‌ی اکسترنال یا در کنار فایل سیستم خودتان ذخیره کنید. Back in Time تنها فایل‌هایی که تغییر کرده باشند را به‌روز‌رسانی می‌کند؛ از همین رو می‌توانید به وسیله‌ی زبانه‌ی «Options»، در بخش تنظیمات تعریف کنید، چنانچه هیچ فایلی دچار دگرگونی نشده بود دیگر اسنپ‌شات جدیدی نیز گرفته نشود.

تهیه اسنپ‌شات‌ها را می‌توانید به صورت روزانه، ماهانه، چندبار در روز یا تنها در هنگام ریبوت برنامه‌ریزی نمایید و یا در هر هنگامی که نیاز داشتید از طریق «نوار ابزار» (toolbar) اصلی اقدام به تهیه‌ی اسنپ‌شات کنید. از طریق زبانه‌ی «Auto-remove» در «Settings» می‌توانید مشخص کنید که اسنپ‌شات‌های قدیمی چه زمانی باید حذف شوند یا حتی می‌توانید به گونه‌ای آن را تنظیم کنید که یک سری اسنپ‌شات خاص هیچ موقع حذف نشود. برای این کار کافی است برای آن‌ها یک نام تعریف کرده و گزینه‌ی «Don’t remove named snapshots» را انتخاب نمایید.

BackInTime

درست همانند «Back in Time» ،«Cronopete» نیز بیشتر برای بازگردانی چند پوشه یا فایل مناسب است، ولی با این حال امکان بازگردانی کل یک فایل سیستم را نیز دارد. برای بازگردانی تنها کافی است یک اسنپ‌شات را انتخاب کرده و تعیین کنید که آیا می‌خواهید تماما بازگردانی شود و یا فقط یک پوشه یا فایل خاص مد نظرتان است.

SystemBack

نرم‌افزار «SystemBack» با رابط کوچکی که دارد، ویژگی‌های زیادی را در خود جای داده است. متاسفانه در حال حاضر تنها کاربران دبیان و اوبونتو و زیرشاخه‌های این دو می‌توانند از این نرم‌افزار استفاده کنند، چراکه فایل نصبی این نرم‌افزار برای سایر نسخه‌های لینوکس در دسترس نیست. برای نصب این نرم‌افزار از طریق PPA از کد زیر استفاده کنید:

1sudo add-apt-repository ppa:nemh/systemback
2sudo apt-get update
3sudo apt-get install systemback

نحوه‌ی عملکرد SystemBack

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

SystemBack

«SystemBack» تعداد اسنپ‌شات‌ها را به ده عدد محدود کرده و حذف آن‌ها را به اختیار خودتان گذاشته است. اسنپ‌شات‌ها را می‌توانید به گونه‌ای تنظیم کنید که یکدیگر را کامل کرده و از کپی فایل‌هایی که تغییری در آن‌ها صورت نگرفته است خودداری کنند. در صورت عدم نیاز نیز می‌توانید این گزینه را از قسمت تنظیمات غیر فعال کنید.

در هنگام بازیابی فایل‌ها نیز این امکان را دارید که گزینه‌ی بازیابی کامل یا تنها فایل‌های ضروری سیستم را انتخاب نمایید. اسنپ‌شات‌هایی که توسط این نرم‌افزار می‌گیرید شامل اطلاعات شخصی (نظیر تصاویر یا سندها) نمی‌شود، ولی می‌توانید با انتخاب گزینه‌ی «Live system create > Include user data» آن‌ها را به یک سی‌دی زنده (سی‌دی‌هایی که امکان اجرای مستقیم یک سیستم‌عامل را دارند سی‌دی زنده یا «Live CD» نامیده می‌شوند) منتقل کنید.

SystemBack

«SystemBack» به شما اجازه‌ی زمانبندی اسنپ‌شات‌ها را می‌دهد، ولی در صورت نیاز نیز می‌توانید به صورت دستی این کار را انجام دهید. نکته‌ی مهمی که باید توجه داشته باشید این است که «SystemBack» از فایل سیستم «NTFS» پشتیبانی نمی‌کند، پس قادر به بازیابی یا تهیه‌ی یک اسنپ‌شات از پارتیشن‌هایی با فرمت NTFS نخواهید بود.

Snapper

«Snapper» ارتباط نزدیکی با «openSUSE» دارد و در نسخه‌ی 12.1 آن معرفی شده است. با این که امکان نصب آن برروی سایر توزیع‌های لینوکس نیز وجود دارد، ولی تضمینی به کار کردن آن نیست. ساده‌ترین راه برای نصب «Snapper» این است که «openSUSE» را برروی یک پارتیشن «BTRFS» نصب کنید، در این صورت «Snapper» به صورت خودکار نصب و راه‌اندازی خواهد شد. از «Snapper» می‌توان به صورت خط فرمان یا توسط ابزار «YaST» استفاده کرد، و یا در صورت نیاز به رابط گرافیکی، می‌توانید یک نسخه‌ی مجزا از آن را با نام «snapper-GUI» تهیه کنید.

نحوه‌ی عملکرد Snapper

«Snapper» انواع مختلفی از اسنپ‌شات‌ها را تهیه می‌کند. این ابزار قبل و بعد از نصب یک پکیج از طریق «zypper» یا «YaST»، یا ایجاد تغییرات سیستمی به وسیله‌ی ماژول‌های «YaST»، از سیستم اسنپ‌شات تهیه می‌کند. از این طریق می‌توانید اسنپ‌شات‌ها را مقایسه کنید و اگر مشکلی ایجاد شد، به حالت قبلی بازگردید. همچنین به طور پیشفرض، به صورت ساعتی از سیستم اسنپ‌شات گرفته می‌شود مگر اینکه این گزینه را غیر فعال کرده باشید. به این اسنپ‌شات‌های ساعتی «Timeline snapshots»، و به هر نوع اسنپ‌شات دیگر، «Single snapshot» گفته می‌شود. اسنپ‌شات‌ها در پارتیشن مربوط به خودشان نگهداری می‌شوند و با گذر زمان حجم آن‌ها نیز بالا می‌رود، پس در هنگام مدیریت فضای دیسکتان، به این نکته توجه داشتی باشید.

به طور پیشفرض، «Snapper» تنها از پارتیشن «روت» (Root) اسنپ‌شات تهیه می‌کند. برای اینکه سایر پارتیشن‌ها و زیر مجموعه‌های «BTRFS» را نیز شامل آن کنید، باید برای هر کدام تنظیمات مخصوص انجام دهید. این کار باید از طریق ترمینال و به صورت روت انجام شود:

1snapper -c CONFIGNAME create-config /PATH

در این دستور، «c-» مخفف «configure» به معنای تنظیم کردن است و «CONFIGNAME» نامی است که برای این تنظیمات مشخص می‌کنید. «/PATH» نیز آدرس پارتیشن یا زیر مجموعه (subvolume) مد نظر است. برای مثال به دستور زیر توجه کنید:

1snapper -c home create-config /home

برای بررسی تنظیمات فعال فعلی می‌توانید از دستور زیر استفاده کنید:

1snapper list-configs

تمام فایل‌های تنظیمات در آدرس «/etc/snapper/configs» ذخیره می‌شوند و می‌توانید در یک ویراستار متن ساده آن‌ها را تغییر دهید. برای مثال می‌توانید اسنپ‌شات‌های ساعتی را غیر فعال کنید، حذف اسنپ‌شات‌ها را در حالت خودکار قرار دهید و تنظیم نمایید که «Snapper» چند عدد از اسنپ‌شات‌های قدیمی را می‌تواند نگه دارد. همچنین توسط ماژولی که «YaST» برای «Snapper» ارائه داده است، می‌توانید اسنپ‌شات‌های مختلف ساخته و آن‌ها را مقایسه کنید.

Snapper

یک روش اضافی نیز برای بازگردانی فایل‌ها وجود دارد که به جهت استفاده از آن باید پکیج «grub2-snapper-plugin» را برای «openSUSE» دریافت کنید. با این روش، «Snapper» می‌تواند یک اسنپ‌شات را بوت کرده و به طور مستقیم از طریق منوی بوت‌لودر سیستم را بازگردانی کند. اگر این ویژگی به درستی تنظیم شده باشد، باید یک گزینه در «GRUB 2» به نام «Start bootloader from a read-only snapshot» مشاهده کنید. برای سایر نسخه‌های لینوکس می‌توانید از «grub-btrfs» استفاده نمایید تا نتیجه‌ی مشابهی را دریافت نمایید. توجه داشته باشید که تنها قادر به بوت کردن اسنپ‌شات‌هایی هستید که برای پارتیشن روت ساخته شده باشند.

تهیه‌ی پشتیبان از نرم‌افزارهای نصب شده و بازگردانی آن‌ها

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

Aptik

این نرم‌افزار تنها در نسخه‌های اوبونتو وجود دارد و برای نصب آن می‌توانید از طریق «PPA» اقدام کنید:

1sudo apt-add-repository ppa:teejee2008/ppa
2sudo apt-get update
3sudo apt-get install aptik

«Aptik» می‌تواند لیست تمام پکیج‌های نصب شده‌ی فعلی، مراکز دانلودی که از آن‌ها استفاده کرده‌اید و خود پکیج‌ها را استخراج کند. همچنین گزینه‌هایی برای استخراج تنظیمات نرم‌افزارها، قالب نمایش دسکتاپ و مجموعه آیکون‌ها نیز وجود دارد. «Aptik» نرم‌افزارها را بر اساس روش نصبشان (نصب به همراه سیستم‌عامل، نصب توسط کاربر، نصب خودکار به عنوان ابزار مورد نیاز سایر نرم‌افزارها و نصب از طریق فایل‌های «deb.») دسته بندی می‌کند. همچنین به شما اجازه می‌دهد که فایل‌های «deb.» را با عمل «کشیدن و رها کردن» (drag-and-drop) به لیست اضافه کنید تا بخشی از بک‌آپ باشند. این پشتیبان‌ها را می‌توانید در هر کجا که می‌خواهید نگهداری کنید و در هنگام نصب یک نسخه‌ی جدید از سیستم‌عامل، به وسیله‌ی گزینه‌ی «Restore» در «Aptik»، آن‌ها را استخراج نمایید.

Aptik

اگر کاربر «Linux Mint» هستید، می‌توانید از «Mint Backup Tool» استفاده کنید که امکاناتی نظیر «Aptik» را در اختیارتان قرار می‌دهد. همچنین در کنار امکان بازیابی نرم‌افزارهای نصب شده، این ابزار به شما اجازه می‌دهد یک بک‌آپ سریع از یک پوشه‌ی خاص و مجوزهای آن تهیه نمایید.

mintbackup

اگر از «Arch Linux» استفاده می‌کنید نیز می‌توانید به سراغ نرم‌افزار «Backpac» بروید. این نرم‌افزار از پکیج‌هایی که دستی نصب شده‌اند (چه از طریق مراکز رسمی یا AUR) لیست تهیه می‌کند و بر اساس انتخاب شما از آن‌ها بک‌آپ می‌گیرد. برای بازگردانی سیستم توسط «Backpac» سه گزینه وجود دارد: می‌توانید پکیج‌های استخراج شده را نصب کنید، می‌توانید آن‌هایی که در اسنپ‌شات نبوده‌اند را حذف نمایید و می‌توانید فایل‌های سیستمی را با نسخه‌های قبلی جایگزین کنید.

البته تمام این کارها را بدون نیاز به نرم‌افزارهای شخص ثالث و تنها توسط ابزارهای مدیریت پکیج خود سیستم هم می‌توان انجام داد. در سیستم‌هایی که بر پایه‌ی «dpkg» هستند می‌توانید با دستور زیر یک لیست از نرم‌افزارهای نصب شده تهیه نمایید:

1dpkg --get-selections > /home/yourusername/apps.txt

سپس می‌توانید فایل خروجی این دستور را به همراه فایل‌های «/etc/apt/sources.d/» و «/etc/apt/sources.list» به سیستم جدید منتقل کنید. برای انتقال آن‌ها به سیستم جدید، آدرس صحیح فایل «apps.txt» را در دستور زیر قرار دهید:

1dpkg --set-selections < /path/to/apps.txt
2sudo apt-get update
3sudo apt-get dselect-upgrade

برخی از نرم‌افزارهای مدیریت فایلی که رابط گرافیکی دارند (نظیر Synaptic)، می‌توانند تمام این کارها را انجام دهند تا نیازی به انجام آن‌ها توسط ترمینال نداشته باشید.

Synaptic

راه‌های پیشرفته‌ی بازگردانی سیستم

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

Rsnapshot

اگر به دنبال راهی سریع برای تهیه‌ی اسنپ‌شات از طریق ترمینال هستید، «Rsnapshot» را امتحان کنید. این نرم‌افزار تقریبا در مراکز دانلود تمام نسخه‌های لینوکس در دسترس است. «Rsnapshot» تمامی تنظیمات خود را در آدرس «/etc/rsnapshot.conf» نگهداری می‌کند که از طریق آن می‌توانید زمانبندی تهیه و حذف اسنپ‌شات‌ها و فایل‌ها و پوشه‌های موجود در هر اسنپ‌شات را مشخص کنید. پس از اینکه تنظیمات مورد نظر خود را اعمال کردید، می‌توانید با دستور زیر، «Rsnapshot» را امتحان نمایید:

1rsnapshot configtest
2rsnapshot -t hourly

برای اینکه مطمئن باشید همه چیز به درستی کار می‌کند، به یاد داشته باشید که «Rsnapshot» در بین تنظیمات خود از «تب» (Tab) استفاده می‌کند و نه فاصله (Space)، پس نباید پارامترها را با فاصله از هم جدا کنید. همچنین در این نرم‌افزار ویژگی بازیابی خودکار اسنپ‌شات‌ها وجود ندارد، ولی این امکان را دارید که به صورت دستی فایل‌های مورد نیاز را جا به جا کنید.

Obnam

«Obnam» در کنار شباهت بسیاری که به «Rsnapshot» دارد، ویژگی‌های جذابی را نیز ارائه می‌دهد. این نرم‌افزار ابتدا از کل سیستم شما بک‌آپ تهیه می‌کند و سپس اسنپ‌شات‌های افزایشی می‌سازد که شامل فایل‌های جدید (و بر اساس تنظیمات، شامل فایل‌های تغییر یافته) می‌شوند. همچنین می‌توانید اسنپ‌شات‌های خود را رمزنگاری کنید و «Obnam» به طور خودکار کار قفل‌گشایی آن‌ها را انجام می‌دهد. همین شرایط در بازیابی اسنپ‌شات‌ها نیز وجود دارد: تنها با یک دستور می‌توانید آن‌ها را بازیابی کنید و محل بازیابی آن‌ها نیز دست خودتان است.

Obnam

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

LVM Snapshots

وقتی صحبت از داده‌های با ارزش می‌شود، همیشه خوب است که از قبل به راه مراقبت از آن‌ها فکر کرده باشید. اگر تازه دارید سیستم لینوکس خودتان را راه‌اندازی می‌کنید، بد نیست که یک نگاه به «Logical Volume Manager» به عنوان راهی برای مدیریت هارد دیسک بیندازید.

LVM

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

همانطور که مشاهده کردید، راه‌های بسیاری برای آوردن ویژگی «System Restore» در لینوکس وجود دارد، هرچند که از نظر فنی تمام این راه‌ها مشابه هم هستند. امیدواریم که این مطلب برای شما مفید واقع شده باشد. اگر در لینوکس تازه کار هستید و یا دوست دارید بیشتر با لینوکس آشنا شوید، مطالب زیر را از دست ندهید:

#

بر اساس رای ۳ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
MakeUseOf
۱ دیدگاه برای «پشتیبان‌گیری و بازیابی فایل‌ها در سیستم‌عامل لینوکس»

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

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *