سؤال

تقوم وثائق Shred بأن تمضير "غير مضمون لتكون فعالة" (انظر أسفل). لذلك إذا قمت بتمكم وثيقة على نظام ملفات Ext3 الخاص بي أو على RAID، ماذا يحدث؟ هل قمت بإخراج جزء من الملف؟ هل تمزز في بعض الأحيان كل شيء كله وأحيانا لا؟ هل يمكن تمزيق الأشياء الأخرى؟ هل قمت بتمزيق رأس الملف فقط؟

تحذير: لاحظ أن تمزيق يعتمد على افتراض مهم للغاية: أن نظام الملفات يحمل البيانات في مكانه. هذه هي الطريقة التقليدية للقيام بالأشياء، ولكن العديد من تصاميم نظام الملفات الحديثة لا تفي بهذا الافتراض. فيما يلي أمثلة على أنظمة الملفات التي لا تكون تمزيقها فعالة، أو غير مضمون لتكون فعالة في جميع أوضاع SYS- TEM:

  • أنظمة الملفات منظم أو مجفونة، مثل تلك المقدمة من AIX و Solaris (و JFS، Reiserfs، XFS، ext3، إلخ)

  • أنظمة الملفات التي تكتب بيانات زائدة عن الحاجة واستمر حتى إذا فشل بعض الكتب، مثل أنظمة الملفات المستندة إلى RAID

  • أنظمة الملفات التي تجعل اللقطات، مثل خادم NFS في الشبكة

  • أنظمة الملفات التي ذاكرة التخزين المؤقت في مواقع مؤقتة، مثل عملاء NFS الإصدار 3

  • أنظمة الملفات المضغوطة

في حالة أنظمة الملفات ext3، تنطبق إخلاء المسئولية المذكورة أعلاه (وتمزج هذه الفعالية المحدودة) فقط في البيانات = وضع دفتر اليومية، أي بيانات ملفات المجلات بالإضافة إلى البيانات الوصفية فقط. في كل من البيانات = الطلب (الافتراضي) والبيانات = طرق Writeback، تعمل تمزيق كالمعتاد. يمكن تغيير أوضاع يومية Ext3 عن طريق إضافة البيانات = شيء ما لخيارات تثبيت نظام ملف معين في ملف / إلخ / FSAB، كما هو موثق في صفحة Mount Man (Man Man).

هل كانت مفيدة؟

المحلول

جميع shered هو الكتابة فوق، تدفق، تحقق النجاح، وتكرار. لا شيء على الإطلاق لمعرفة ما إذا كان الكتابة فوق ملف يؤدي في الواقع إلى الكتل التي تحتوي على البيانات الأصلية التي تغتيت. هذا لأنه بدون معرفة الأشياء غير القياسية حول نظام الملفات الأساسي، لا يمكن ذلك.

لذا، لن يقوم نظام الملفات اليومية بالكتابة فوق الكتل الأصلية في مكانها، لأن ذلك من شأنه أن يمنعهم يتعافوا بشكل نظيف من الأخطاء حيث يكون التغيير مكتوبا نصف مكتوبا. إذا تم كتابة البيانات، فقد تتم كتابة كل تمريرة من تمزيق إلى موقع جديد على القرص، وفي هذه الحالة يتم تمزيق أي شيء.

قد لا يتم الكتابة فوق النظم RAID (اعتمادا على وضع RAID) جميع نسخ الكتل الأصلية. إذا كان هناك تكرار، فقد تمزز قرصا واحدا ولكنك ليس من الوزراء (ق)، أو قد تجد أن هذه البيانات المختلفة أثرت على أقراص مختلفة بحيث يتم تمزيق كل قرص جزئيا.

في أي نظام ملفات، قد يحدث جهاز القرص نفسه تماما للكشف عن خطأ (أو في حالة الفلاش، قم بتطبيق مستوطنة التآكل حتى بدون خطأ) وإعادة صياغة الكتلة المنطقية إلى كتلة مادية مختلفة، بحيث يكون الأصل الأصلي معطلة ملحوظ (أو غير مستخدمة) ولكن لم يتم الكتابة فوقها.

قد لا تقوم أنظمة الملفات المضغوطة بالكتابة فوق الكتل الأصلية، لأن البيانات التي يتم بها الكتابة فوقها هي إما عشوائية أو مرهقة للغاية في كل تمريرة، وقد يتسبب المرء في نقل الملف إلى تغيير حجمه المضغوط بشكل جذري وبالتالي يتم نقله. يخزن NTFS ملفات صغيرة في MFT، وعند تمزيق ملفات الملفات إلى مضاعفات كتلة واحدة، فإن أول "الكتابة فوق" سيتسبب في نقل الملف إلى موقع جديد، والذي سيتم تمزيقه بلا جدلا فتحة MFT لم يمسها.

لا يمكن لل Shred اكتشاف أي من هذه الشروط (ما لم يكن لديك تطبيق خاص يتناول مباشرة برنامج تشغيل FS و Block الخاص بك - لا أعرف ما إذا كانت هذه الأشياء موجودة بالفعل). هذا هو السبب في أنه أكثر موثوقية عند استخدامه على قرص كامل من نظام ملفات.

أجاد أبدا قطع "أشياء أخرى" بمعنى الملفات الأخرى. في بعض الحالات الموجودة فوقها تمزيق كتل غير مخصصة مسبقا بدلا من الكتل التي تحتوي على بياناتك. كما أنها لا تمزز أي بيانات تعريف في نظام الملفات (والتي أعتقد أن ما تقصده "رأس الملفات"). يحاول الخيار الدقيق الكتابة فوق اسم الملف، عن طريق إعادة تسمية اسم جديد لنفس الطول ثم تقصير حرف واحد في وقت واحد لأسفل إلى 1 سحر، قبل حذف الملف. يمكنك أن ترى هذا في العمل إذا قمت بتحديد -V أيضا.

نصائح أخرى

لقد قامت الإجابات الأخرى بالفعل بعمل جيد في شرح سبب عدم القدرة على القيام بعملها بشكل صحيح.

يمكن تلخيص هذا على النحو التالي:

تمزيق يعمل فقط على الأقسام وليس الملفات الفردية

كما هو موضح في الإجابات الأخرى، إذا قمت بتمزيق ملف واحد:

  • لا يوجد ضمان يتم الكتابة فوق البيانات الفعلية حقا، لأن نظام الملفات قد يرسل يكتب إلى نفس الملف إلى مواقع مختلفة على القرص
  • لا يوجد أي ضمان لم يخلق FS نسخا من البيانات في مكان آخر
  • قد تقرر FS "تحسين" الكتابة الخاصة بك، لأنك تكتب نفس الملف بشكل متكرر (من المفترض أن يمنع المزامنة هذا، ولكن مرة أخرى: لا ضمان)

ولكن حتى لو كنت تعرف ذلك لك نظام الملفات لا يقوم بأي من الأشياء السيئة أعلاه، يجب عليك أيضا التفكير في أن العديد من التطبيقات ستقوم تلقائيا بإنشاء نسخ من بيانات الملف:

  • تعطل ملفات الاسترداد التي تعالج الكلمات والمحررين (مثل VIM) إلخ.
  • ملفات Thumbnail / معاينة في مديري الملفات (أحيانا حتى بالنسبة لغير imageFiles)
  • الملفات المؤقتة التي تستخدمها العديد من التطبيقات

لذلك، قم بفحص كل ثنائي أن تستخدمه للعمل مع بياناتك، فقد تم نسخه بشكل صحيح، اليسار والوسط بدونك مع العلم. الطريقة الواقعية الوحيدة هي دائما تمزيق الأقسام الكاملة (أو الأقراص).

القلق هو أن البيانات قد توجد في أكثر من مكان واحد على القرص. عند وجود البيانات في موقع واحد بالضبط، فإن تمزيق يمكن أن يحدد "محو" هذه المعلومات. ومع ذلك، قد تكتب أنظمة الملفات التي تقوم بها مجلة أو أنظمة الملفات المتقدمة الأخرى بيانات ملفك في مواقع متعددة، مؤقتا، على القرص. أجاد - بعد الحقيقة - ليس لديه طريقة لمعرفة ذلك وليس هناك طريقة لمعرفة حيث قد تكون البيانات مكتوبة مؤقتا إلى القرص. وبالتالي، ليس لديه طريقة محو أو الكتابة فوق قطاعات القرص.

تخيل هذا: يمكنك كتابة ملف على القرص على نظام ملفات مجروم مجزورات ليس مجرد بيانات التعريف، بل أيضا بيانات الملف. يتم كتابة بيانات الملف مؤقتا إلى المجلة، ثم تكتب إلى موقعها النهائي. الآن تستخدم أجاد على الملف. الموقع النهائي حيث تم كتابة البيانات مكتوبة بأمان مع أجاد. ومع ذلك، سيضطر أجاد إلى بعض الطرق في ضمان أن يتم الكتاب القطاعات في المجلة التي تحتوي على محتويات ملفك مؤقتا لتكون قادرة على الوعد بأن الملف الخاص بك غير قابل للاسترداد حقا. تخيل نظام ملفات حيث تكون المجلة غير موجودة حتى في موقع ثابت أو طول ثابت.

إذا كنت تستخدم Shred، فأنت تحاول التأكد من عدم وجود طريقة ممكنة مع إعادة بناء بياناتك. إن مؤلفي أجاد صادقون أن هناك بعض الظروف تتجاوز سيطرتهم حيث لا يمكنهم تقديم هذا الضمان.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top