Posted on Leave a comment

Node: วิธีแก้ปัญหา Unhandled rejection Error: EACCES: permission denied

เนื่องจากคนที่ใช้ MacOS หรือ Linux อาจจะเจอปัญหาเรื่อง Permission Denied เวลาติดตั้ง Node Package ต่างๆ เอาไว้ใช้งาน ไม่ว่าจะเป็น npm install หรือ npm install -g ก็ตามที ทำเอาเสียเวลาโดยใช่เหตุ

เลยขอฝากวิธีแก้เอาไว้ตรงนี้สั้นๆ ครับ

อาการ Error

อย่างของพลเคสล่าสุดที่เจอ คือตอนสั่งสร้างโปรเจค Ionic และ React Native ซึ่งมีการเข้าไปยุ่งกับโฟลเดอร์ใน .npmจน error เป็นแถบแบบนี้

Unhandled rejection Error: EACCES: permission denied, open '/Users/teerasejjiraphatchandej/.npm/_cacache/index-v5/86/38/2f6e2370a79fac1d7735522e039097d5f179eb125a8f844e79a26116059d'

ซึ่งจะสังเกตว่า directory ที่เกิด error คือ

/Users/teerasejjiraphatchandej/.npm/_cacache/

ซึ่ง Error เกิดจากมีสิทธิ์ของ User อื่น (ซึ่งไม่ใช่ User ที่เราใช้อยู่ อาจจะเป็น root ก็ได้) จองสิทธิ์เอาไว้

เหมือนยืมหนังสือ แล้วไม่คืนหน่ะครับ คนอื่นจะอ่านต่อก็ไม่ได้

ดังนั้นเราจะแก้ โดยใช้คำสั่ง chown เพื่อให้สิทธิ์กลับมาเป็นของ User เรา

ใช้ CHOWN

อย่างแรกให้จดไว้ก่อนว่า directory ที่เกิด error คืออะไร ในที่นี้คือ

/Users/teerasejjiraphatchandej/.npm/_cacache/

เราจะใช้คำสั่งดังนี้

sudo chown -R $USER:$GROUP ~<directory>

เช่น

sudo chown -R $USER:$GROUP ~/Users/teerasejjiraphatchandej/.npm/_cacache/

จากนั้นกด enter ซึ่งอาจจะมีการให้กรอก password ของ sudo ให้กรอกตามปกติ

อาการก็น่าจะหายดีแล้วครับ

เรียนรู้เข้าใจง่าย ใช้ได้จริง กับ Course ที่ออกแบบมาอย่างดี

เปิดอบรมสร้าง Cross Platform Mobile Application ด้วย Ionic Framework

เหมาะสำหรับคนทำเว็บ, เริ่มต้น JavaScript ES6 และ Angular เข้าใจง่าย, ใช้ได้จริง

สอบถาม หรือติดต่อจัดอบรมโทร 083-071-3373

โปรหน้าฝน! เรียนรอบสด รับคอร์สออนไลน์มูลค่ากว่า 5800 บาทฟรี!

คอร์สออนไลน์เริ่มต้นสร้าง Mobile App ด้วย Google Flutter

เหมาะผู้เริ่มต้น และนักพัฒนาเว็บ, เข้าใจง่าย, ใช้ได้จริง

สอบถาม หรือติดต่อจัดอบรมโทร 083-071-3373

เปิดอบรม React Native สำหรับผู้เริ่มต้น

ปูพื้นฐาน React และ React Native เข้าใจง่าย, ใช้ได้จริง, เนื้อหาใช้ในการทำแอพ Enterprise ขององค์กรได้

สอบถาม หรือติดต่อจัดอบรมโทร 083-071-3373

อ้างอิง – StackOverflow

Loading Facebook Comments ...