Monthly Archives: سبتمبر 2013

التخلص من رسالة خطأ Sorry, Ubuntu Has Experienced An Internal Error

السلام عليكم

إذا كنت ممن يتاضيق من النافذة المنبثقة التي تظهر باستمرار على بعض إصدارات أوبنتو ( 12.04 و 13.04 على سبيل المثال) فهنا توجد طريقة تجاوز هذا الإزعاج.

الطريقة بسيطة، لكن قبلا ما سبب هذه المشكلة ؟

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

Sorry, Ubuntu 12.04 Has Experienced An Internal Error

وفي حالات أخرى تلاحظ بطأ في النظام وعند القيام بالتحقيقات اللازمة تجد أن apport هو السبب. تعرضتُ للحالة الأولى منذ زمن وللحالة الثانية مؤخرا.

بعد هذا الشرح البسيط هاكم طريقة تعطيل apport للتخلص من المشكل.

افتح طرفية ثم أدخل اﻷمر التالي

sudo nano /etc/default/apport

غير قيمة enabled إلى 0، وهو ما يعني تعطيل البرنامج.

  • قبل التغيير

enabled=1

  • بعد التغيير

enabled=0

تعطيل apport

تعطيل apport

أرجو أن تكون هذه التدوينة أفادتكم.

إلى الملتقي

تدوينات ذات علاقة

رسالة خطأ “GRUB- error: no such partition grub rescue”

رابط مختصر للمشاركة مع أصدقائك عبر شبكات التواصل الاجتماعي http://wp.me/p1vJeS-gp

للحصول على آخر الإضافات مباشرة بعد نشرها يُرجى الاشتراك في تغذيات RSS.

الأمر chattr لحماية الملفات على لينكس ومنع التعديل عليها

السلام عليكم

تدوينة سريعة حول حماية الملفات على ليونكس من الحذف أو التعديل غير المرغوب.

 على أنظمة جنو/لينكس يُمكِّن الأمر chattr من حماية ملف من التعديل أو الحذف مع عدة خيارات للتخصيص.
ملحوظة:  الأمر يعمل مع نظم ملفات ext2, ext3 و ext4 فقط. وهي نظم الملفات الأكثر انتشارا على لينكس.

مبدأ العمل

يُنفذ الأمر كالتالي (يتطلب صلاحيات root)

sudo chattr +X file

لتفعيل الخيار X على الملف. توجد عدة خيارات أهمها

  • الخيار i لمنع أي تعديل (الكتابة ، إعادة التسمية، الحذف أو حتى عمل وصلة للملف) على الملف.
  • الخيار a للسماح بإضافة المحتوى فقط. بإمكانك كتابة أسطر جديدة ولكنك لا تستطيع تغيير الأسطر الموجودة سلفا أو حذف الملف.
  • الخيارs لتفعيل الحذف الآمن. عند حذف الملف فإنه يُحذف بشكل تام.  (راجع  استعادة الملفات مع Photorec و حذف ملف بشكل تام وآمن على لينكس  لتفصيل أكثر عن الحذف الآمن).

لتعطيل أحد الخيارات (مثلا نزع الخيار a) على الملف نستخدم علامة ناقص (-) مكان الزائد(+) وذلك على النحو التالي

sudo chattr -X file

يمكن أيضا إضافة R- لتطبيق الأمر على مجلد بكل محتوياته.

  • عند تفعيل أحد الخيارات

sudo chattr +X -R file

  • عند تعطيل مفعولها

sudo chattr +X -R file

أمثلة

  • حماية ملف

sudo chattr +i file

  • نزع الحماية عن ملف

sudo chattr -i file

  • حماية مجلد ( folder تمثل مسار الملف المُراد تطبيق الأمر عليه)


sudo chattr +i -R folder

  • نزع الحماية عن المجلد


sudo chattr -i -R folder

ملحوظة: لسرد خيارات الحماية (i أو a أو s وغيرها) المُطبقة على ملف نستخدم أمرlsattr على النحو التالي


lsattr file

الأمر lsattr دون ذكر اسم الملف سيسرد جميع الملفات الموجودة في المجلد وخيارات الحماية المطبقة عليها.

تدوينات ذات علاقة

حذف ملف بشكل تام وآمن على لينكس
حذف بيانات Metadata من الصور على أوبنتو
استعادة الملفات المحذوفة باستخدام برنامج PhotoRec

رابط مختصر للمشاركة مع أصدقائك عبر شبكات التواصل الاجتماعي http://wp.me/p1vJeS-gb

للحصول على آخر الإضافات مباشرة بعد نشرها يُرجى الاشتراك في تغذيات RSS.

مصادر

http://www.unixmen.com/secure-and-prevent-files-from-accidental-deletion-with-chattr/
http://memo-linux.com/comment-securiser-un-fichier-ou-un-repertoire-dune-suppression-accidentelle-sous-linux/
http://www.mcmcse.com/linux/filesystem_attributes.shtml

حذف ملف بشكل تام وآمن على لينكس

تحدثتُ في تدوينة سابقة عن برنامج Photorec لاستعادة البيانات المحذوفة حيثُ شرحتُ في تلك التدوينة مبدأ عمل البرنامج وماذا يحدث عند حذف ملف أو مجلد بالطريقة المعهودة الموجودة بشكل افتراضي في كل نظم التشغيل.

استكمالا لذلك الحديث أقدم بين يديكم اليوم طريقتين لحذف ملف بشكل نهائي من على القرص الصلب وبذلك يكون من شبه المستحيل استعادته.

تحديث بتاريخ 10 سبتمبر لإضافة طريقة  التعامل مع المجلدات عبر الأمر shred

الطريقة الأولى تعتمد على إضافة لمدير الملفات Nautilus. أما الثانية فتعتمد على حزمة تأتي بشكل افتراضي مع أغلب توزيعات لينكس. مبدأ العمل في الحالتين هو كتابة معطيات عشوائية مكان الملف المُراد حذفه.

حذف الملفات مع إضافة nautilus-wipe

عند تثبيت هذه الإضافة فإنها ستُدرج في القائمة الظرفية التي تظهر عند النقر بزر الفأرة

الأيمن على اسم الملف أو المجلد. للتثبيت على أوبنتو ننفذ الأمر التالي

sudo apt-get install nautilus-wipe

بعد التثبيت سيظهر الخياران التاليان في القائمة الظرفية عند النقر بالزر الأيمن على اسم ملف أو مجلد.

nautilus-wipe

nautilus-wipe

  • الخيار الأول wipe والذي يحذف بشكل آمن الملفات المُحددة. يمكن التحكم في عدد مرات إعادة الكتابة عبر الخيار Number of passes. الإعداد الافتراضي هو مرتان. وهو إعداد كاف بنظري فالمبالغة في مرات إعادة الكتابة قد تضر بالقرص الصلب على المدى الطويل.

    تأكيد الحذف وخيارات wipe

    تأكيد الحذف وخيارات wipe

  • الخيار الثاني wipe available disk space يسمح بحذف الملفات التي سبق محوها بطريقة غير آمنة من على تجزئة أو قرص صلب. هذه العملية قد تأخذ بعض الوقت.

حذف الملفات بأداة shred عبر سطر الأوامر

نستخدم أمر shred لهذا الغرض ويعمل بنفس مبدأ عمل الإضافة السابقة وذلك بالشكل التالي

shred -n 2 -z -u file

حيثُ

  • الخيار n- يُمكن من تحديد عدد مرات إعادة الكتابة. (2 في مثالنا هذا). إذا لم يحدد هذا الخيار فإن الأداة ستعيد الكتابة 3 مرات (الإعداد الافتراضي)
  • الخيار z- لكتابة أصفار مكان بيانات الملفات
  • الخيار u- لحذف الملف
  • file مسار الملف المراد حذفه

ما تقوم به shred هنا هو كتابة أصفار مكان بيانات الملف ثم حذفه (وهذا هو دور الخيار u-). في حالة حاول أحدهم استعادة الملف فإنه إن نجح سيحصل على ملف مليئ بالأصفار فقط.

يمكن إجراء التجربة التالية لفهم آلية العمل. أنشئ ملفا وليكن اسمه test.txt واكتب فيه شيئا ما للتجربة ثم أغلقه واحفظه. افتح الطرفية ثم تنقل إلى مسار الملف test.txt ونفذ الأمر

shred -n 2 -z test.txt

لاحظ أني لم أضف خيار u- . جرب فتح الملف مرة أخرى بمحرر نصوص. جرب الأمر مرة أخرى ولكن بإضافة خيار u- ثم ابحث عن الملف، لن تجدَه 🙂 .

حذف المجلدات بواسطة shred

الأمر shred لا يتعامل مع المجلدات،
لحذف مجلد يمكن تنفيذ الطريقة التالية، من خطوتين.
للشرح سأفترض وجود مجلد testA بداخله ملف testA1 ومجلد آخر testB وبداخل المجلد الأخير يوجد ملفان testB1 و testB2


testA
-- testA1
-- testB
---- testB1
---- testB2

نريد حذف testA بكل محتوياته بشكل آمن.

  • الخطوة الأولى حذف جميع الملفات (تبقى فقط المجلدات)

نفتح المجلد testA ثم ننفذ الأمر التالي


find -type f -execdir shred -n 2 -z -u '{}' \;

الذي سيبحث عن جميع الملفات الموجودة في المجلد الحالي، أي testA في مثالنا، ومجلداته الفرعية. ثم يطبق الأمر shred -n 2 -z -u على كل ملف من تلك الملفات.

يمكن سرد محتويات المجلد testA أو testB وستلاحظ أنه لا توجد بها ملفات.

  • الخطوة الثانية ستكون حذف المجلد testA ومجلداته الفرعية عبر الأمر (تأكد من الخروج من المجلد testA قبل تنفيذ الأمر)

rm -rf /pat/to/testA

حيث /pat/to/testA هو المسار نحو المجلد testA .

إلى الملتقى.

رابط مختصر للمشاركة مع أصدقائك عبر شبكات التواصل الاجتماعي http://wp.me/p1vJeS-fV

للحصول على آخر الإضافات مباشرة بعد نشرها يُرجى الاشتراك في تغذيات RSS.

مصادر

http://www.crowd42.info/supprimer-fichier-definitivement-ordinateur-debian-gnulinux-ubuntu

http://www.solver.io/wp/2012/11/06/linux-how-to-recursively-shred-a-directory/