วิธีแก้ไขการอนุญาตที่ถูกปฏิเสธใน Terminal Mac (05.03.24)

การเปิดไฟล์ใน macOS นั้นค่อนข้างง่าย คุณเพียงแค่ต้องดับเบิลคลิกที่มัน — และ voila! ไม่ควรใช้เวลานานในการเปิดไฟล์บน Mac ของคุณ อีกวิธีในการเปิดไฟล์คือผ่าน Terminal เพียงเรียกใช้คำสั่งและตั้งค่าไดเร็กทอรีที่บันทึกไฟล์ไว้ และคุณจะสามารถเปิดไฟล์ได้โดยไม่ต้องยุ่งยาก

แต่ไม่ได้เป็นเช่นนั้นเสมอไป มีหลายกรณีที่เทอร์มินัลได้รับข้อผิดพลาด "การอนุญาตถูกปฏิเสธ" ใน Mac เมื่อเปิดไฟล์ คำสั่งง่ายๆ ไม่ควรให้ข้อผิดพลาดนี้ นี่หมายความว่ามีบางอย่างผิดปกติกับไฟล์ของคุณหรือ macOS เอง

ต่อไปนี้คือข้อผิดพลาดตัวอย่าง "การอนุญาตถูกปฏิเสธ":

  • zsh: ปฏิเสธการอนุญาต: ./ foo.rb
  • Bash: bash: ./foo.rb: /usr/local/bin: ตัวแปลที่ไม่ดี: การอนุญาตถูกปฏิเสธ
  • aftheers-MacBook-Air:scripts root# ./ ArduinoWifiShield_upgrade.sh
  • -sh: ./ArduinoWifiShield_upgrade.sh: ปฏิเสธการอนุญาต

นี่เป็นข้อผิดพลาดทั่วไปที่เกิดขึ้นกับผู้ใช้ Mac มาเป็นเวลานาน ไม่ใช่เรื่องใหม่ แต่มีรายงานหลายฉบับเมื่อเร็วๆ นี้ของผู้ใช้ Mac ที่ได้รับข้อผิดพลาด "การปฏิเสธการอนุญาต" ใน Mac หลังจากอัปเกรดเป็น Catalina และ Big Sur

มีหลายสิ่งที่อาจเกิดขึ้นได้ คุณเรียกใช้คำสั่งใน Terminal ดังนั้นการพบข้อผิดพลาดนี้จึงไม่น่าแปลกใจ แต่ข้อผิดพลาดนี้ยังคงสร้างความรำคาญได้อย่างมาก โดยเฉพาะอย่างยิ่งหากคุณไม่มีวิธีอื่นในการเปิดไฟล์ ตัวอย่างเช่น คุณต้องการเปิดไฟล์ที่ไม่มีโปรแกรมที่เกี่ยวข้องหรือไม่ตอบสนองต่อการคลิก

การอนุญาตถูกปฏิเสธใน Terminal ในการเปิดไฟล์คืออะไร

นี่เป็นข้อผิดพลาดในการอนุญาต เช่นเดียวกับชื่อ ที่ป้องกันไม่ให้ผู้ใช้ Mac เปิดไฟล์โดยใช้คำสั่ง อาจเกิดขึ้นกับคำสั่ง sudo หรือแม้แต่คำสั่ง bash ตามรายงานหลายฉบับ ข้อผิดพลาด Permission Denied สามารถเกิดขึ้นได้แม้ในขณะที่ไฟล์ถูกเปิดในรูท

รายงานส่วนใหญ่ระบุว่าข้อผิดพลาดปรากฏขึ้นเมื่อพยายามเปิดตัวติดตั้งไฟล์ผ่าน Terminal เมื่อไฟล์ถูกลากไปที่หน้าต่าง Terminal ข้อผิดพลาด "Permission Denied" จะปรากฏขึ้น อย่างไรก็ตาม สิ่งนี้สามารถเกิดขึ้นได้กับไฟล์อื่นๆ

ทำไมคุณได้รับข้อผิดพลาด “Permission Denied” ใน Mac

คุณมักจะพบข้อผิดพลาด “Permission Denied” หากคุณกำลังพยายามติดตั้งโปรแกรมหรือ แก้ไขไฟล์ที่ถูกล็อค อาจเป็นเพราะคุณไม่มีสิทธิ์ของผู้ดูแลระบบหรือเพราะผู้สร้างไฟล์ใช้ chmod เพื่อล็อกไฟล์ ข้อผิดพลาดนี้เป็นการบ่งชี้ว่าคำสั่งของคุณพยายามเขียนไปยังไดเรกทอรีที่บัญชีผู้ใช้ของคุณไม่ได้เป็นเจ้าของ

คุณสามารถตรวจสอบการอนุญาตของไฟล์ที่เป็นปัญหาได้โดยพิมพ์ ls -l file .ext ในเทอร์มินัล “file.ext” หมายถึงไฟล์และนามสกุลของไฟล์ที่คุณพยายามเปิดหรือแก้ไข คุณยังลองบังคับคำสั่งที่ต้องได้รับอนุญาตจากผู้ดูแลระบบได้โดยใช้ “sudo”

สาเหตุอื่นที่คุณได้รับข้อผิดพลาดนี้เป็นเพราะคุณอาจป้อนคำสั่งที่ไม่ถูกต้อง ตรวจสอบข้อผิดพลาดในไวยากรณ์ของคุณ และตรวจสอบให้แน่ใจว่าคุณกำลังพยายามใช้คำสั่งที่ถูกต้อง หากคุณกำลังพยายามเรียกใช้แอปพลิเคชัน ตรวจสอบให้แน่ใจว่าคำสั่งโปรแกรมถูกต้องและติดตั้งบนคอมพิวเตอร์ของคุณ

วิธีแก้ไขข้อผิดพลาดการอนุญาตที่ถูกปฏิเสธใน Mac

เมื่อคุณได้รับข้อผิดพลาดนี้ สิ่งแรก คุณต้องทำคือพยายามเปิดไฟล์โดยใช้วิธีปกติ ดับเบิลคลิกที่ไฟล์เพื่อดูว่าคุณสามารถเปิดได้หรือไม่ หากไม่ประสบความสำเร็จ คุณสามารถลองใช้วิธีแก้ปัญหาด้านล่าง

แต่ก่อนดำเนินการต่อ ตรวจสอบให้แน่ใจว่าได้เพิ่มประสิทธิภาพ Mac ของคุณโดยใช้แอปซ่อม Mac เพื่อป้องกันไม่ให้เกิดปัญหาอื่นๆ นอกจากนี้ยังจะทำความสะอาดระบบของคุณเพื่อให้กระบวนการทำงานได้อย่างราบรื่น เมื่อเสร็จแล้ว ให้รีสตาร์ท Mac ของคุณ และดูคู่มือการแก้ไขปัญหาของเรา

ขั้นตอนที่ 1: ตรวจสอบการอนุญาตของคุณ

ดังที่กล่าวไว้ก่อนหน้านี้ ข้อผิดพลาดนี้มักเกิดขึ้นเนื่องจากคุณไม่มีสิทธิ์เพียงพอในการเข้าถึงไฟล์ หากต้องการตรวจสอบว่าเป็นกรณีนี้หรือไม่:

  • เปิด Terminal จากโฟลเดอร์ Utilities
  • พิมพ์คำสั่งต่อไปนี้ และเพิ่ม ช่องว่างหลังอักขระสุดท้าย อย่ากด Enter: ls -l
  • ลากไฟล์ที่คุณต้องการเปิดและวางลงในหน้าต่างเทอร์มินัล การดำเนินการนี้จะผนวกตำแหน่งของไฟล์เข้ากับคำสั่งที่มีอยู่โดยอัตโนมัติ อย่างไรก็ตาม การดำเนินการนี้จะไม่ย้ายไฟล์จริงๆ
  • คลิกที่หน้าต่าง Terminal แล้วกด Enter
  • ซึ่งจะแสดงให้คุณเห็นว่าคุณได้รับอนุญาตให้เขียนหรือแก้ไขไฟล์หรือไม่

    ขั้นตอนที่ 2: เปลี่ยนความเป็นเจ้าของไดเร็กทอรี

    เป็นเจ้าของไดเร็กทอรีด้วยคำสั่ง chown ก่อนที่จะพยายามเขียนลงในไดเร็กทอรี

    คุณสามารถป้อนคำสั่งนี้ใน Terminal จากนั้นกด Enter : chown -R $USER:$USER /path/to/directory

    เปลี่ยน $USER ด้วยผู้ใช้ที่เข้าสู่ระบบในปัจจุบันและ /path/to/directory ด้วยเส้นทางไปยังตำแหน่งที่คุณต้องการเขียนไป

    ขั้นตอนที่ 3 : ให้สิทธิ์เข้าถึงดิสก์แก่ Terminal อย่างเต็มรูปแบบ

    เป็นไปได้ว่า Terminal เข้าถึงดิสก์ได้ไม่ครบถ้วน ซึ่งเป็นสาเหตุที่ทำให้คุณไม่สามารถเปิดไฟล์โดยใช้คำสั่งได้ ในการแก้ไขปัญหานี้ ให้ไปที่ การตั้งค่าระบบ > ความปลอดภัย & ความเป็นส่วนตัว > แผงความเป็นส่วนตัว จากนั้นเพิ่ม เทอร์มินัล ในรายการแอปที่สามารถควบคุมคอมพิวเตอร์ของคุณได้

    ขั้นตอนที่ 4: ใช้คำสั่ง SUDO

    คำสั่ง sudo ดำเนินการคำสั่ง ที่ติดตาม superuser หรือสิทธิ์รูท คำสั่งนี้จะช่วยให้คุณรันคำสั่งจากเทอร์มินัลได้แทบทุกอย่าง ในการดำเนินการนี้ ให้เพิ่ม sudo ก่อนคำสั่งเดิม นี่คือตัวอย่างคำสั่ง:

    • sudo chmod 755 /dvtcolorconvert.rb
    • sudo chmod 755 ~/Themes/ObsidianCode.xccolortheme

    คุณจะได้รับแจ้งให้ป้อนรหัสผ่านหากนี่เป็นครั้งแรกที่คุณใช้คำสั่ง sudo แต่หลังจากนั้น คุณจะไม่ต้องป้อนทุกครั้งที่ใช้คำสั่ง sudo

    สรุป

    การได้รับข้อผิดพลาด “การปฏิเสธการอนุญาต” ใน Mac เมื่อคุณพยายามเข้าถึงไฟล์ไม่ใช่ปัญหาใหญ่ หากคุณสามารถเปิดไฟล์ดังกล่าวได้โดยดับเบิลคลิก อย่างไรก็ตาม โดยส่วนใหญ่แล้ว ผู้ใช้ที่พบข้อผิดพลาดนี้มักจะไม่สามารถเปิดไฟล์โดยใช้วิธีการทั่วไปได้ เนื่องจากนี่เป็นข้อผิดพลาดในการอนุญาต คุณต้องแน่ใจว่าคุณมีสิทธิ์เพียงพอในการเข้าถึง ขั้นตอนข้างต้นควรแนะนำคุณเกี่ยวกับสิ่งที่ต้องทำ สิ่งนี้มีประโยชน์มากสำหรับผู้ใช้ Mac ที่ไม่คุ้นเคยกับการใช้คำสั่งหรือเทอร์มินัล


    วิดีโอ YouTube: วิธีแก้ไขการอนุญาตที่ถูกปฏิเสธใน Terminal Mac

    05, 2024