عندما نحذف ملفًّا معيّنًا حذفًا غير نهائي، فإنّ ما سيحدث في الحقيقة هو انتقال الملف المحذوف إلى مجلّد يدعى: "سلّة المهملات"، تمهيدًا لحذفه نهائيًّا بعد مضيّ مدّة محدّدة مسبقًا، وخلال هذه المدّة سيظل الملف موجودًا وكأنّه لم يُحذَف، وإمكانية استعادته تكون في منتهى السهولة كما نعلم.
لكن في حال انتهت المدّة المحدّدة للاحتفاظ بالملف في سلّة المهملات، فتم حذفه نهائيًّا، أو أنّنا استعجلنا هذه العملية من خلال الحذف النهائي الفوري دون المرور بسلّة المهملات، فما الذي سيحدث فعليًّا؟ وسوف تكون الإجابة بناءً على نوع محرك الأقراص المستخدَم (HDD or SSD).
بالنسبة إلى محرّك الأقراص الصلبة (HDD)، فسوف يتم تدمير أو حذف العنوان المؤدّي إلى مكان الملف في القرص (لا الملف نفسه)، وهذا يعني أنّ النظام لن يعود يعرف أيّ شيء عن الملف المحذوف، وستصبح المساحة المخصصة للملف المحذوف في القرص متاحة لإعادة الكتابة عليها (overwriting)..
وإلى أن تتم كتابة بيانات جديدة عليها، ستظلّ تلك المساحة تحتفظ بالملف المحذوف، ولذلك أطلقنا على عملية الكتابة في هذا النوع من المساحات "overwriting"، بمعنى أنّ الكتابة تكون على مساحة تحتفظ ببيانات سابقة، فيتم استبدال تلك البيانات بما تتم كتابته من بيانات جديدة.
وإذا أردنا التعبير عن عملية كتابة في مساحات فارغة أصلًا، فإنّنا نكتفي بقول: كتابة (writing)، وهذا التفريق بين "writing" و "overwriting" مهم جدًّا لفهم ما نحن بصدده.
إذن، فطالما كان الملف المحذوف نهائيًّا في القرص الصلب (HDD) يحتفظ بمكانه في القرص ولم تتم الكتابة عليه بعد، فسوف يكون قابلًا للاستعادة (recovery) بمجرّد إعادة بناء الطريق المؤدّي إليه، وهناك عدد من البرامج والأدوات المخصّصة لذلك.
وقس على ذلك فيما يتعلّق بـ "فرمتة" القرص، فليس بالضرورة أن ينتج عن ذلك التخلّص التام والآمن من جميع ملفاتك، وما سوف يحدث هو حذف "عناوين" جميع الملفات وإتاحة مساحاتها لتخزين بيانات جديدة على النحو الذي شرحناه في التغريدات السابقة.
توجد عدّة برمجيّات لإجراء عملية طمس (wiping) للملفات الموجودة على القرص، وذلك من خلال إعادة الكتابة على مساحات القرص باستخدام بيانات عشوائيّة غير مهمّة (garbage data)، ولأكثر من مرّة، لضمان عدم إمكانية استعادة الملفات المحذوفة، وهذه العملية تستغرق وقتًا طويلًا جدًّا في العادة.
بالنسبة إلى محرك القرص الساكن (SSD)، فإذا تم حذف الملف بصورة نهائيّة منه، فإنّ الملف يظلّ محتلًّا لمساحته في القرص كما هو الحال مع "HDD"، إلّا أنّ "SSD" لا يكتب على مساحات تحتوي على بيانات سابقة (overwriting)، وإنّما يُجري عملية كتابة فقط (writing)..
لذلك فبعد عمليّة الحذف النهائي للملف في "SSD"، يتم عادةً تفعيل خاصية التقليم أو التهذيب (trimming feature)، وهذه الخاصية تقوم بتمشيط المساحات غير المستخدمة في القرص، وتنفيذ عمليّة تسمّى: التصفير (zeroing)، بحيث يتم تحويل كلّ التمثيلات البيانيّة في المساحات الممشوطة إلى أصفار فقط.
والهدف من عملية التصفير هو تهيئة جميع المساحات غير المستخدمة لتكون قابلة لتخزين بيانات جديدة عليها،بما فيها تلك المساحات التي كانت تحتلّها الملفات المحذوفة نهائيًّا، وبذلك يحصل "SSD" على مساحات أكبر للتخزين، بما أنّه يكتب فقط (write) ولا يعيد الكتابة على بيانات سابقة (overwrite).
خاصية التهذيب (trimming) تكون عادةً مفعّلة بشكل تلقائي، وهي تضمن عدم قابليّة استعادة البيانات المحذوفة (بسبب عملية التصفير بما هي أسلوب لطمس البيانات)، علمًا بأنّها مدعومة من قبل جميع أنواع محركات الأقراص الساكنة الحديثة (SSDs)، وهذا بالتأكيد يمنحها أفضليّة على "HDDs"..
ومن المهم التنبّه إلى أنّ احتماليّة استعادة الملفات المحذوفة نهائيًّا تكون أكبر وأسهل في حال كانت خاصّيّة التهذيب (trimming) معطَّلة، أو كان محرك القرص الساكن (SSD) قديم بحيث لا يدعم تلك الخاصية.
في حال كانت خاصية التهذيب (trimming) مفعَّلة (وهي عادةً ما تكون كذلك كما أسلفنا)، فسوف يتكفل نظام التشغيل تلقائيًّا بتوجيه محرك القرص الساكن (SSD) لإعمال هذه الخاصية في كلّ مرّة تحذف فيها أحد ملفّاتك.
بإمكانك التحقق مما إذا كانت الخاصية مفعّلة من خلال الدخول على سطر الأوامر، ثم كتابة الأمر التالي:
fsutil behavior query DisableDeleteNotify
في حال كانت النتيجة كالتالي:
DisableDeleteNotify = 0
فإنّ الخاصية مفعّلة ولا حاجة للقلق.
fsutil behavior query DisableDeleteNotify
في حال كانت النتيجة كالتالي:
DisableDeleteNotify = 0
فإنّ الخاصية مفعّلة ولا حاجة للقلق.
أمّا إن كانت النتيجة كالتالي:
DisableDeleteNotify = 1
فإنّ الخاصيّة غير مفعّلة، وقد يكون السبب هو عدم دعم إصدار "SSD" لهذه الخاصية كونه قديم، أو أنّ النظام قام بتعطيله لسببٍ ما، أو ربما كان السبب هو خلل ما أدّى إلى عدم تفعيل الخاصية تلقائيًّا، وما عليك إلّا أن تفعّله بنفسك..
DisableDeleteNotify = 1
فإنّ الخاصيّة غير مفعّلة، وقد يكون السبب هو عدم دعم إصدار "SSD" لهذه الخاصية كونه قديم، أو أنّ النظام قام بتعطيله لسببٍ ما، أو ربما كان السبب هو خلل ما أدّى إلى عدم تفعيل الخاصية تلقائيًّا، وما عليك إلّا أن تفعّله بنفسك..
عمومًا، لتفعيل الخاصية، قم بكتابة الأمر التالي:
fsutil behavior set DisableDeleteNotify 0
ولتعطيلها، قم بكتابة الأمر السابق نفسه، مع استبدال "0" بـ "1".
انتهى.
fsutil behavior set DisableDeleteNotify 0
ولتعطيلها، قم بكتابة الأمر السابق نفسه، مع استبدال "0" بـ "1".
انتهى.
جاري تحميل الاقتراحات...