مقدمهویژگی «System Restore» که در ویندوز وجود دارد، یکی از مهمترین ویژگیهایی است که کاربران لینوکس خواستار آن هستند. حتی برخی نیز به دلیل کمبود همین یک ویژگی ادعا میکنند که لینوکس هیچوقت به خوبی ویندوز نخواهد شد. اگر شما هم فکر میکنید جای این ویژگی در لینوکس خالی است، پس حتما این مطلب را تا پایان مطالعه کنید، چراکه در این مقاله ابزارهایی معرفی شدهاند که میتوانند قابلیت System Restore را به لینوکس بیاورند.
|
عملکرد System Restore در لینوکس چگونه است؟
این ویژگی در لینوکس وجود ندارد، یا حداقل نامش این نیست و با چرخیدن در منوها چیزی به نام «System Restore» پیدا نخواهید کرد. برای داشتن ویژگی مشابه، باید یک روش انتخاب کرده و نرمافزارهای مورد نیاز آن را نصب نمایید. بیشتر این روشها و نرمافزارها عملکردی مشابه «System Restore» در ویندوز دارند و با تهیه اسنپشاتهای مختلف از سیستم، به شما اجازه بازگشت به عقب را میدهند.
قبل از اینکه به معرفی نرمافزارها بپردازیم، بهتر است اول کمی با اسنپشاتها آشنا شویم…
تفاوت اسنپشات با پشتیبانگیری چیست؟
اسنپشاتها (Snapshot) در واقع نگهدارنده دادههایی هستند که در یک بازه زمانی مشخص توسط فایل-سیستم دستهبندی و نظم داده شدهاند؛ ضمناً آنها روی همان فضایی ایجاد و نگهداری میشوند که فایلهای اصلی توسط فایل-سیستم ذخیره میگردند. همچنین بد نیست بدانید اسنپشاتها به صورت معمول کلیه فایلها و فولدرهای روی هارد دیسک را در خود جای دادهاند، یا حداقل شامل تمامی فایلها و فولدرهای کلیدی هستند که مورد نیاز سیستمعامل به حساب میآیند.
نگهداری اسنپشاتها در کنار دادههای اصلی فایل سیستم، امکان بازگشت به عقب را فراهم میکند و درکنار آن نیز باعث صرفهجویی در مصرف حافظه میگردد. در این روش اینگونه نیست که هر اسنپشات تمام دادههای فایل سیستم را در خود ذخیره کند، بلکه آنها همانند پشتیبانهای به هم پیوسته (Incremental backups) کار میکنند که تنها آخرین تغییرات را در خود ذخیره مینمایند. با این کار، هر اسنپشات برای اینکه بتواند سیستم را بازگردانی کند به اسنپشاتهای قبلی خود نیاز دارد. توجه داشته باشید که یک کپی کامل از دادههای فایل سیستم یا همان Disk Image کاملا مستقل است و میتواند به تنهایی سیستم را بازگردانی کند.
مشکل این اسنپشاتها این است که نسبت به خطاهای دیسک آسیبپذیر هستند و اگر دیسکتان مشکلات مکانیکی شدیدی داشته باشد، ممکن است که اسنپشاتهای ذخیره شده را به همراه کل فایل سیستم از دست بدهید. برای جلوگیری از این مشکل، پیشنهاد میشود که بلافاصله پس از نصب لینوکس، یک اسنپشات از آن تهیه کرده و آن را در یک حافظه دیگر ذخیرهسازی و نگهداری کنید.
در لینوکس نرمافزارهای زیادی وجود دارند که میتوانند امکان تهیه اسنپشات از سیستم را فراهم کنند. بیشتر این نرمافزارها برای تازه کاران مناسب هستند و برای استفاده از آنها نیاز به مهارت پیشرفتهای در لینوکس ندارید. در ادامه برخی از این نرمافزارها توسط تیم فنی تلاش نت معرفی شدهاند که میتوانید از بین آنها بهترین مورد را برای استفاده خود انتخاب کنید.
برخی از نرم افزارهای لینوکس جهت تهیه Backup و سپس Restore آن
-
روش اول) نرم افزار TAR
نرم افزار TAR برای فشرده سازی و آرشیو فایل ها استفاده می شود. همچنین این ابزار به کاربر کمک می کند تا چندین فایل را ادغام کرده و در فضای کمتری ذخیره کند. برخی از گزینه هایی که TAR در اختیار کاربر قرار می دهد عبارتند از:
–c | ایجاد آرشیو جدید |
–v | ارائه خروجی پرمخاطب |
–f | تعریف فایل آرشیو استفاده شده |
–t | تهیه فهرست از فایلهای موجود در آرشیو |
–x | استخراج نسخه پشتیبان |
–z | زیپکردن |
بکاپ تهیهشده با نرم افزار TAR در فرمتهای tar و gzip و bzip است.
برای بازگردانی سیستم در لینوکس دستورهای زیر را اجرا کنید:
تهیه بکاپ
# tar -cvf backup_name.tar /home/user
|
تهیه بکاپ بهصورت tar.gz
# tar -cvfz backup_name.tar.gz /home/user
|
مستثنیکردن فایلهای پشتیبان از یکدیگر
# tar –exclude file.txt –exclude file.sh -cvfz backup_name.tar.gz
|
استخراج مطالب از نسخه پشتیبان
# tar -xvfz backup_name.tar.gz /backup/directory/file.txt
|
آرشیوکردن فایل پشتیبان با فرمت gzip در سرور
sudo tar –cvpzf backup_name.tar.gz –exclude=/home/server/backup.tar.gz –one-file-system
|
بازیابی اطلاعات بکاپگیریشده از سرور لینوکس
# tar -xvpf /media/your_harddisk/backup.tar.gz
|
-
روش دوم) TimeShift
نرمافزار «TimeShift» در کنار داشتن یک رابط گرافیکی ساده، از طریق ترمینال نیز قابل استفاده است. در این برنامه به طور پیشفرض از فایلهای شخصی کاربر اسنپشات تهیه نمیشود، ولی در صورت نیاز میتوانید پوشهها و آدرسهای شخصی را نیز به آن اضافه کنید. برای Ubuntu میتوانید TimeShift را از طریق پکیجهای شخصی توسعه دهندگان (Developer’s PPA) دریافت کنید:
sudo apt-add-repository ppa:teejee2008/ppa sudo apt-get update sudo apt-get install timeshift
|
اگر از Ubuntu استفاده نمیکنید، میتوانید فایل نصبی TimeShift را دانلود کرده و از طریق ترمینال (با زدن کلیدهای ترکیبی Ctrl+Alt+T) اجرا کنید:
./timeshift-latest-amd.64.run
|
” همچنین یک نسخه از این نرمافزار برای فایل سیستمهای BTRFS وجود دارد که از ویژگی اسنپشات پیشفرض خود BTRFS پشتیبانی میکند. “
حال پس از اجرای اپلیکیشن کافی است دکمه Backup را بزنید.
در صورت نیاز به بازگردانی سیستم عامل به گذشته نیز کافی است دکمه Restore را بزنید.
همچنین میتوانید در قسمت Settings تنظیماتی برای Backup گیری خودکار اعمال کنید.
نحوه عملکرد TimeShift
TimeShift بر اساس یک برنامهی منظم از سیستم اسنپشات تهیه میکند و شما نیز میتوانید در هر زمانی که مایل بودید به صورت دستی به تهیه اسنپشات بپردازید. میتوانید برنامههای ساعتی، روزانه، هفتگی و ماهیانه برای آن تنظیم کنید و همچنین به آن بگویید که هر چند وقت یکبار اسنپشاتهای قدیمی را حذف کند. حتی یک گزینه Boot Snapshots نیز دارد که پس از هر بار ریبوت کردن سیستم، یک اسنپشات از آن تهیه میکند.
بازگردانی یک اسنپشات با TimeShift نیز کار بسیار سادهای است، تنها کافی است اسنپشات مورد نظر را برگزیده و محل بازگردانی آن را مشخص کنید. این برنامه به شما اجازه میدهد که اسنپشاتها را در یک حافظه جانبی نظیر هارد اکسترنال بازگردانی کرده و یا با استفاده از ویژگی کلون (Clone)، وضعیت فعلی سیستم را به طور کامل در یک حافظه دیگر کپی کنید. این کار به شما اجازه میدهد که سیستمعامل خود را بدون نیاز به هیچ کار اضافهای، به یک رایانه جدید منتقل کنید.
قبل از اینکه یک اسنپشات را بازگردانی کنید، TimeShift ابتدا از شما سوال میکند که آیا میخواهید تنظیمات نرمافزارها را هم نگه دارید یا خیر و به شما اجازه میدهد هر کدام را که میخواهید حفظ نمایید. توجه داشته باشید که TimeShift برای اینکه بتواند یک اسنپشات بازگردانی شده را بوت کند، به GRUB 2 نیاز دارد.
-
روش سوم) Bera
Bera یک نرم افزار بازیابی سیستم در لینوکس است. این ابزار به دلیل دقت، سرعت، امنیت و قابلیت شخصی سازی اطلاعاتی که باید پشتیبان گیری شود، انتخاب بسیار مناسبی است. با کمک Bera می توانید فایل ها و پوشه ها را برای پشتیبان گیری انتخاب کنید و داده های پشتیبان را از یک سرور به سرور دیگر منتقل کنید و آنها را بازیابی کنید. شایان ذکر است که Bera از SSH برای انتقال امن داده ها بین دو سرور استفاده می کند. به همین دلیل ممکن است این نرم افزار بهترین گزینه برای System Restore در لینوکس باشد.
-
روش چهارم) CPIO
CPIO دستگاهی است که برای ذخیره سازی داده ها استفاده می شود. همچنین با کمک آن می توانید فایل های آرشیو را کپی و به فضای دیگری انتقال دهید. برای ایجاد نسخه پشتیبان با کمک CPIO کافیست دستور زیر را اجرا کنید:
#ls file * /cpio -acvf >/root/backup.cpio
|
علاوه بر این، برای مشاهده محتویات فایل آرشیو، می توانید از دستور زیر استفاده کنید:
#cpio -it </root/backup.cpio #cpio -it -I /root/backup .cpio
|
در نهایت برای بازیابی اطلاعات پشتیبان این دستور را اجرا کنید:
#cpio -icuvd </root/backup.cpio
|
-
روش پنجم) Back in time
یکی دیگر از ابزارهای مفید برای بازیابی سیستم در لینوکس، به ویژه برای پشتیبان گیری از اوبونتو، Back in Time است. در واقع، با Back in Time میتوانید از دادههای خود (به صورت دستی یا با تنظیم پیشفرض) اسنپ شات بگیرید و آنها را در حافظههای خارجی مانند هارد اکسترنال با روش پشتیبانگیری ذخیره کنید. سایر مزایای استفاده از بازگشت به زمان عبارتند از:
- فاصله تولید اسنپ شات را به صورت دستی یا پیش فرض انتخاب کنید
- تنظیم فاصله زمانی برای حذف خودکار Snap Shot های قدیمی
- برای جلوگیری از حذف خودکار، چند اسنپ شات را انتخاب کنید
- ایجاد اسنپ شات فقط در صورت تغییر در فایل های موجود
- امکان پشتیبان گیری از کل سیستم
برای نصب این ابزار کافیست دستور زیر را اجرا کنید:
sudo add-apt-repository ppa:bit-team/stable sudo apt-get update sudo apt-get install backintime-qt4
|
-
روش ششم) Rsnapshot
اگر به دنبال ابزاری برای بازیابی سیستم در لینوکس هستید، Rsnapshot گزینه خوبی است. این ابزار تقریباً روی تمام توزیعهای لینوکس کار میکند و به کاربر کمک میکند تا از دادههای خود یک اسنپشات بگیرد.
برای نصب آن باید دستور زیر را اجرا کنید:
rsnapshot configtest rsnapshot -t hourly
|
-
روش هفتم) ابهام یا Obname
Obname یکی دیگر از ابزارهای بازیابی سیستم All in one برای لینوکس است. پس از نصب، این ابزار یک نسخه پشتیبان کامل از اطلاعات شما ایجاد می کند و سپس با کمک Snapshot سعی می کند این اطلاعات را تکمیل کند و داده های تغییر یافته را به محتوای قبلی اضافه می کند.
” یکی دیگر از ویژگی های این ابزار امکان ذخیره داده ها از نسخه های پشتیبان بر روی سرور شما یا سرور راه دور دیگر است. “
روش هشتم) DD مخفف Disk to Disk
این روش به شما کمک می کند تا یک نسخه پشتیبان از اطلاعات یک قسمت را در قسمت دیگر نگه دارید. برای این کار کافی است آموزش بازیابی سیستم در لینوکس را دنبال کنید:
#dd if=source_partition of=destination_partition
|
در این دستور if مکان اصلی ذخیره سازی داده ها و مقصد ذخیره سازی داده های پشتیبان of خواهد بود. در نهایت برای بازیابی اطلاعات از یک قسمت به قسمت خالی دیگر از این دستور استفاده کنید:
#dd if=destination_partition of=another_empty_partition
|
” سخن آخر “
همانطور که متوجه شدیم ویژگی System Restore در لینوکس وجود ندارد و برای پشتیبان گیری و بازگردانی در لینوکس برنامه هایی وجود دارند که شما می توانید با استفاده از تهیه اسنپشات در آنها عملکردی مشابه به System Restore را در سیستم عامل لینوکس بوجود بیاورید.