كيفية إصلاح خطأ rmdir: Directory not empty
Rmdir هي أداة سطر أوامر في Linux و Windows تُستخدم لحذف الدلائل الفارغة. إنها أداة مفيدة، خاصة عند مقارنتها بأداة rm القياسية، لأن rmdir تمنعك من حذف الدلائل التي تحتوي على ملفات عن طريق الخطأ. هذا مفيد في الحالات التي ترغب فيها فقط في حذف الدلائل الفارغة، مما يضمن سلامة بياناتك.
يحدث خطأ ‘rmdir: directory not empty’ عندما تقوم بتشغيل أمر rmdir على دليل غير فارغ، مما يعني أنه يحتوي على ملفات أو دلائل أخرى بداخله. هذا هو السلوك المتوقع لأمر rmdir، وسيعطيك خطأ عند تشغيله على دليل غير فارغ في Linux أو أنظمة التشغيل الأخرى التي تحتوي على أداة rmdir.
كيف يمكنني إصلاح خطأ ‘rmdir: directory not empty’ في Linux؟
هناك بعض الإصلاحات البسيطة التي يمكنك تجربتها للتخلص من هذا الخطأ. فبالإضافة إلى السبب الرئيسي وهو محاولة حذف دليل غير فارغ، قد يظهر هذا الخطأ أيضًا بسبب مشكلات الارتباطات الرمزية (symlink issues)، من بين أمور أخرى.
سنطلعك على الإصلاحات المختلفة التي يمكنك تجربتها للتخلص من هذا الخطأ.
1. استخدم المعامل “rm -rf”
يمكنك استخدام أداة سطر الأوامر ‘rm’ في Linux لحذف الدلائل غير الفارغة إذا كنت تواجه هذا الخطأ. للتحقق مما إذا كان الدليل غير فارغ وأن الخطأ ليس ناتجًا عن أي شيء آخر، ما عليك سوى إصدار الأمر ‘ls -a’ على الدليل الذي تريد حذفه. إذا رأيت ملفات في الدليل، كما سيظهر لك إخراج ‘ls -a’، فيمكنك إصدار الأمر ‘rm -rf’ لحذف الدليل.
مثال:
نريد حذف الدليل abcd.

أصدرنا الأمر ‘ls -a’ للتحقق مما إذا كان الدليل غير فارغ، وقد أظهر لنا وجود بعض الملفات بداخله.
يمكننا إصدار أمر rmdir على الدليل ولكنه سيعطينا خطأ لأن الدليل غير فارغ.

الحل الأبسط هنا هو استخدام rm -rf على الدليل.
rm -rf abcd
الخيار -r يعني تكراري (recursive)، أي حذف كل شيء داخل الدليل بشكل تكراري (سيتم حذف الدلائل الأخرى بداخله أيضًا).
الخيار -f يعني الحذف القسري (force delete)، أي في هذه الحالة، يشير خيار القوة إلى حذف الدليل حتى لو لم يكن فارغًا.
إذا كنت ترغب في حذف دليل لا يمتلك المستخدم الخاص بك أذونات الكتابة عليه، فيمكنك استخدام:
sudo rm -rf
يوصى باستخدام sudo مع rm فقط عندما تعرف ما تفعله وأن الدليل الذي تريد حذفه ليس دليل نظام، حيث يمكن للمستخدم الجذر (root user) حذف دلائل النظام أيضًا.
2. استخدم مدير الملفات لحذف الدليل:
في بعض السيناريوهات، ولأسباب غير معروفة، أفاد المستخدمون أنهم لم يتمكنوا من حذف الملفات باستخدام أداة rm حتى باستخدام العلامتين -f و -r، وتمكنوا من حذف الملفات باستخدام مدير الملفات. يمكنك أيضًا تجربة ذلك.

في Ubuntu والعديد من توزيعات Linux الأخرى، يتم تثبيت مديري الملفات افتراضيًا. يمكنك استخدام مديري الملفات هؤلاء لحذف الدلائل أو المجلدات أيضًا.
إذا كنت تستخدم Ubuntu، فيمكنك استخدام مدير الملفات Nautilus المثبت افتراضيًا لحذف الدلائل. يمكن استخدام مديري ملفات آخرين أيضًا. Nautilus هو مجرد مثال.
إصلاح خطأ rmdir: directory not empty في Windows:
يمكن أن يحدث هذا الخطأ أيضًا في Windows عند محاولة حذف دليل باستخدام موجه الأوامر (command prompt) أو PowerShell. لإصلاح هذا الخطأ في Windows، يمكنك تجربة ما يلي:
- استخدم طريقة rm -rf كما هو موضح في حل Linux أعلاه.
- تأكد من أن الدليل الذي تريد حذفه لا يتم الوصول إليه بواسطة أي برنامج آخر. إذا كان كذلك، فاستخدم مدير المهام (task manager) لإنهاء هذا البرنامج.
ثم حاول حذف الدليل بعد ذلك في cmd أو powershell باستخدام rmdir أو rm -rf
Comments are closed.