إصلاح · Node وnpm والبناء
EACCES: permission denied عند التثبيت
ما قد تراه
- يقول npm إن الصلاحية مرفوضة على مجلد
- قال لي أحدهم أن أستخدم sudo
السبب الأرجح
يحاول npm الكتابة في مجلد يملكه مستخدم آخر أو يحميه النظام، وغالباً لأن أمراً سابقاً شُغّل بـ sudo.
افحص أولاً (نحو دقيقتين)
- اقرأ أي مجلد يذكره الخطأ: داخل مشروعك أم مجلد نظام؟
أمر الإصلاح
ما تكتبه هنا لا يغادر متصفحك. البحث يعمل داخل هذه الصفحة ولا يُرسل شيء إلى خادم ولا إلى ذكاء اصطناعي.
يبقى في هذا المتصفح وعلى هذا الجهاز فقط. تُحذف المفاتيح وكلمات المرور قبل أي حفظ.
لغة الأمر
الصقه في Claude أو ChatGPT أو Gemini أو Cursor ثم اتبع ما يقوله.
بعد أن جرّبته، هل نجح؟
الخطوات
- اعرض المجلد في الخطأ ومن يملكه (ls -ld <folder>).
- إن كان تثبيتاً عاماً فتجنبه: استخدم npx أو تثبيتاً محلياً في المشروع.
- إن كان مجلد المشروع مملوكاً لـ root فاشرح كيف أصلح المالك لذلك المجلد فقط، واسألني قبل التشغيل.
لا تفعل هذا
- لا تغيّر صلاحيات النظام كله أو المجلد الرئيسي.
- لا تشغّل sudo npm.