تا به حال شده فایلی را پاک کنید و در همان لحظه بفهمید که چه کار اشتباهی انجام دادهاید؟ فایلی که از آن نسخه پشتیبان ندارید و خواهان بازگشتش هستید. خوشبختانه راه حلی برای مشکل شما وجود دارد که میتوانید از آن استفاده کنید.
rm، اشتباهی که نباید انجام دهید
خیلی ساده است که از دستور rm استفاده کنید و نهایتا خود را در پنجرهی ترمینال ببینید و احساس پشیمانی شما را در بر گرفته باشد. یک اشتباه کوچک در دستورات، میتواند اطلاعات زیادی را از روی دستگاه شما پاک کند.
به صورت پیش فرض، فایل سیستم لینوکس، ext4 از inode برای نگهداری اطلاعات فایلها استفاده میکند و بخشهای بزرگتر اینودها نیز، اطلاعات این بخشهای جزییتر را فظ میکنند. این اینودها متادیتای مربوط به فایل، همچون اسم، دسترسیها و … را در خود نگهداری میکنند.
همچنین لینکهایی که به فایل ختم میشود نیز در اینودها نگهداری میشود که در واقع آدرس نگهداری آنها بر روی هارد است. وقتی شما فایلی را حذف میکنید، اینود آن را به عنوان فایل بیمصرف آن را نشانه گذاری میکند. وقتی هم که این اتفاق افتاد، دیگر فایل در لیست پوشهها و دیگر بخشها به نمایش در نمیآید.
هر چند اگر بعد از این پاک شدن، شما اطلاعاتی روی هارد ننوشته باشید، اطلاعات مربوط به آن فایل هنوز باید به صورت فیزیکی بر روی سخت افزار موجود باشد. به همین دلیل شمامیتوانید با ساخت یک inode جدید و کپی کردن اطلاعات نجات پیدا کرده از اینود قدیمی، بیتهایی از دست رفته را دوباره بازیابی کنید.
درست همینجاست که testdisk وارد ماجرا میشود. کار با testdisk ساده بوده و نیازی به احاطهی دقیق بر روی فایل سیستم لینوکس ندارید تا بتوانید از آن استفاده کنید. برای آشنایی با آن نیز ما در ادامه اطلاعاتی از نحوه کار با testdisk به شما ارائه میکنیم.
نصب testdisk
برای نصب testdisk بر روی Ubuntu فرمان زیر را وارد نمایید:
sudo apt-get install testdisk
برای نصب testdisk بر روی Fedora فرمان زیر را وارد نمایید:
sudo dnf install testdisk
برای نصب testdisk بر روی Manjaro فرمان زیر را وارد نمایید:
sudo pacman -Sy testdisk
استفاده از testdisk
اگر چه testdisk در پنجرهی ترمینال اجرا میشود، اما یک رابط گرافیکی ساده دارد که شما با استفاده از کلیدهای جهت دار میتوانید از آن استفاده کنید. برای این که کار تمیزتر در بیاید، بهتر است ابتدا یک پوشه جدید برای فایلهای بازیابی شده درست کنید.
برای این کار ما فرمان زیر را برای درست کردن یک پوشه جدید با نام restored تایپ و اجرا میکنیم:
mkdir restored
سپس برای این که روی پوشهی جدید سوییچ کنید، عبارت زیر تایپ و اینتر بزنید:
cd restored/
ما باید از sudo همراه testdisk بهره ببریم، پس ابتدا فرمان زیر را اجرا نمایید:
sudo testdisk
اولین سوالی که testdisk از شما میپرسد، در مورد Logging است. میتوانید یک فایل لاگ جدید درست کنید، از آن چه هست استفاده کنید یا این که کلا چیزی را لاگ نکنید. انتخاب هر کدام از این گزینهها، در نهایت روی عملکرد testdisk تاثیری نخواهد داشت.
شما میتوانید اینتر بزنید تا گزینهی پیش فرض انتخاب شود و شما یک لاگ جدید درست کنید. سوال بعدی در مورد درایوی است که فایل سیسم شما در آن قرار گرفته. testdisk درایوها را برای شما لیست میکند که شما باید با کلیدهای جهت و اینتر، موردی که باید را انتخاب کنید. البته لیستی از آدرس اپلیکیشنهایی که از طریق snap نصب کرده اید نیز در این میان وجود دارد. این داریوها همه تنها برای خواندن هستند، پس شما فایلی از میان آنها پاک نکردهاید.
در دستگاه تست ما تنها یک هارد فیزیکی وجود دارد، پس ما آن را انتخاب کرده و در نهایت روی Proceed میرویم و اینتر را میزنیم.
Testdisk همچنین نیاز دارد تا نوع پارتیشن شما را بدانید. برای اینکار منویی به شما نمایش داده می شود. شما میتوانید نوع پارتیشن مورد نظر خود را وارد نمایید.
در منوی بعدی که به شما نمایش داده میشود، Advanced را انتخاب کرده و اینتر را بزنید.
منو انتخاب پارتیشن برایتان نمایش داده میشود.
ما در این دستگاه تنها یک پارتیشن داشتیم، اما ممکن است لیست شما متفاوت باشد. پس پارتیشن مورد نظر خود را انتخاب کنید. بعداز انتخاب پارتیشن، لیست انتخاب فایل برای شما نمایش داده میشود.
در میان گزینههای مختلف، فایلی که مد نظر دارید را انتخاب کنید. البته گزینههای مختلفی برای راحتتر پیدا کردن این فایل وجود دارد. مثلا برای پیدا کردن فایلهایی که متعلق به کاربری خاص است، شما میتوانید روی Home رفته و جهت راست یا چپ را بزنید. سپس یوزر مورد نظر خود را انتخاب کنید تا فایلهای آن به شما نمایش داده شود.
میبینید که در لیست زیر، فایلهایی به نمایش در آمده که تنها متعلق به Dave بوده.
برای این که فایل را بازیابی کنید، کافی است آن را انتخاب کرده و کلید C را بزنید. برای این که بتوانید آدرسی جدید برای فایل بازیابی شده بدهید، از شما میخواهد که مسیری را اعلا کنید، اما ما با توجه به این که از قبل پوشه را ساخته بودیم، دوباره روی C میزنیم تا کار به انجام برسد.