Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> Mac

แก้ 'Error Identifying a Writable Temporary Folder' ใน Archive Utility บน macOS

แอปพลิเคชันบน Mac มักพึ่งพา temporary folders เพื่อเก็บไฟล์ติดตั้ง แคช และข้อมูลระยะสั้นอื่นๆ เมื่อคุณล้มเหลวในการแตกไฟล์จากโฟลเดอร์ ไม่สามารถระบุหรือเข้าถึง temporary folder ที่เขียนได้ (writable) คุณอาจเห็นข้อความ Error identifying a writable temporary folder

ฉันต้องกู้คืน Mac จาก Time Machine backup และทุกอย่างไปได้ดี แล้วฉันพบว่าฉันไม่สามารถ unzip ไฟล์ด้วย Archive Utility ได้ และได้รับ "Error identifying a writable temporary folder. Try moving the archive to another volume." -Apple.community

เมื่อฉันพยายามแตกไฟล์ .zip บน Mac แต่ได้ Error identifying a writable temporary folder จะจัดการยังไง? -reddit.com

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

เราทดสอบและสรุปวิธีที่มีประสิทธิภาพจากฟอรั่มหลัก โปรดลองทีละอย่าง:

#1 Quick reboot หรือ Refresh

บางครั้ง ข้อผิดพลาดเกิดขึ้นเพราะ temporary glitch ใน macOS Restart Mac ของคุณและลองรันแอปพลิเคชันอีกครั้ง การ Reboot จะ refresh ทรัพยากรระบบ และมักสร้าง temporary directories ที่จำเป็นใหม่

แค่ Apple menu > Shut Down หรือ Restart

# 2 ตรวจสอบ Temporary Folders ด้วยตนเอง

macOS ใช้ /tmp และ /var/tmp เป็น temporary directories หลัก ข้อผิดพลาดบ่งชี้ว่า permission บนโฟลเดอร์ temp เองอาจผิด เราสามารถตรวจสอบและแก้ไข system-wide Temp folder (/tmp) และ User-specific Temp folder ($TMPDIR) โดยใช้ Mac Terminal

  1. Finder > Applications > Utilities > Terminal
  2. พิมพ์ ls -lae /private/tmp
    (Output ควรแสดงว่าโฟลเดอร์เป็นของ root และมี permissions "drwxrwxrwt" ตัว t ที่ท้ายคือ "sticky bit" ซึ่งสำคัญมาก)
    แก้  Error Identifying a Writable Temporary Folder  ใน Archive Utility บน macOS
  3. หาก permissions ผิด คุณสามารถซ่อมแซมได้ด้วยคำสั่งเหล่านี้ คุณจะถูกถามรหัสผ่านแอดมิน
    sudo chmod 1777 /private/tmp
    sudo chown root:wheel /private/tmp

บางผู้ใช้กล่าวว่าคำสั่ง "sudo chmod 1777 /tmp /var/tmp" และ "sudo chown root:wheel /tmp /var/tmp" อาจทำงานได้

จากนั้น ตรวจสอบโฟลเดอร์ $TMPDIR macOS ยังสร้าง temp folder เฉพาะบัญชีผู้ใช้ของคุณ ซึ่งเป็นแหล่งที่มาที่พบบ่อยที่สุดของข้อผิดพลาดนี้

  1. เปิด Terminal ตรวจสอบ temporary folder ของผู้ใช้ ก่อน ดูว่ามันชี้ไปที่ไหน: echo $TMPDIR
    (จะ output อะไรสักอย่างแบบ "/var/folders/xs/xxxxxxxxxxxxxx/T/" จด /xs/xxxxxxxxxxxxxx/T ไว้)
    แก้  Error Identifying a Writable Temporary Folder  ใน Archive Utility บน macOS
  2. ตรวจสอบ permissions ของโฟลเดอร์นี้ คัดลอกพาธจากคำสั่งข้างต้นและใช้: ls -lae /var/folders/xs/xxxxxxxxxxxxxx/T/
    (ควรเป็นของคุณ (username) และมี permissions drwx------)

หาก permissions ผิด ให้แก้ไข แทนที่พาธด้วยที่คุณได้จาก echo $TMPDIR:

sudo chmod 700 /var/folders/xs/xxxxxxxxxxxxxx/T/
sudo chown $(whoami) /var/folders/xs/xxxxxxxxxxxxxx/T/

หากคุณแก้ Archive Utility app Error identifying error แล้ว โปรดแชร์บทความของเรา

# 3 Recreate User Temp Directory

บางครั้ง ข้อผิดพลาดเกี่ยวข้องกับ temporary directory ของบัญชีผู้ใช้ คุณสามารถสร้างใหม่ได้โดย logout และ login ใหม่ หรือลบ user-level temporary folder เพื่อให้ macOS สร้างใหม่อัตโนมัติ อย่ากังวล นี่ปลอดภัย ระบบจะสร้างใหม่เมื่อบูทครั้งต่อไป

  1. ปิดแอปพลิเคชันทั้งหมด สิ่งนี้สำคัญ เพราะพวกมันอาจใช้ temp files อยู่
  2. เปิด Terminal อีกครั้ง ลบ temp directory ของผู้ใช้ด้วย: sudo rm -rf /var/folders/xs/xxxxxxxxxxxxxx/

คำสั่งนี้ลบโฟลเดอร์เฉพาะของผู้ใช้ทั้งหมด ซึ่งมีโฟลเดอร์ T (temp) ระบบจะสร้างใหม่ตอนบูท

# 4 Reset Permissions บน Home Directory

หาก permissions ใน home directory ของคุณเสียหาย macOS อาจล้มเหลวในการเขียน temp files เพื่อ reset พวกมัน:

diskutil resetUserPermissions / 'id -u'
แก้  Error Identifying a Writable Temporary Folder  ใน Archive Utility บน macOS

คำสั่งนี้จะกู้คืน default permissions สำหรับบัญชีของคุณ

# 5 รัน Disk Utility First Aid

การเสียหายของ directory permissions เป็นสาเหตุที่พบบ่อย Disk Utility's First Aid สามารถซ่อมแซม error identifying a writable temporary folder นี้ได้

  1. Finder > Applications > Utilities > Disk Utility
  2. ในแถบด้านข้าง เลือก main volume ของคุณ (ปกติชื่อ Macintosh HD หรือคล้ายกัน) เพื่อผลลัพธ์ที่ดีที่สุด ให้เลือก physical drive ระดับบนสุด
  3. คลิกปุ่ม First Aid และจากนั้น Run
    แก้  Error Identifying a Writable Temporary Folder  ใน Archive Utility บน macOS

หากมันพบและซ่อมแซนข้อผิดพลาด ให้ restart Mac ของคุณและลองอีกครั้ง

# 6 ตรวจสอบซอฟต์แวร์ที่ขัดแย้ง (Conflicting software)

ในกรณีที่หายาก ซอฟต์แวร์ความปลอดภัยหรือทำความสะอาดอาจจำกัด folder permissions อย่างมากเกินไป หรือ "clean" temp directory ผิดวิธี

  • ปิดการทำงาน third-party antivirus, firewall หรือแอป "cleaner" ชั่วคราว (เช่น CleanMyMac, MacKeeper ฯลฯ)
  • ลอง operation ของคุณอีกครั้ง หากทำงานได้ ให้ตรวจสอบการตั้งค่าของซอฟต์แวร์นั้นว่ามีฟีเจอร์ที่ล็อก /tmp หรือ ~/tmp folders และ whitelist พาธเหล่านั้น

# 7 Free up space (ขยายพื้นที่ว่าง)

ดิสก์ที่เต็มเกือบจะหยุด macOS ไม่ให้สร้าง temporary files ใหม่ ให้แน่ใจว่าคุณมีพื้นที่ว่างอย่างน้อย 10–15% โดยการลบไฟล์ขนาดใหญ่ที่ไม่ได้ใช้ ว่าง Trash และย้ายข้อมูลไปจัดเก็บภายนอก

เรียนรู้เพิ่มเติมเกี่ยวกับวิธีทำความสะอาดพื้นที่ดิสก์บน Macintosh HD

ถ้าทุกอย่างล้มเหลว: กู้คืนข้อมูล ASAP

หากข้อผิดพลาดยังคงอยู่หลังจากทุกขั้นตอน troubleshooting และโดยเฉพาะหากคุณสังเกตเห็นการ Crash บ่อย ไฟล์หายไป หรือดิสก์กลายเป็น read-only อาจบ่งชี้ถึง drive failure ที่แฝงอยู่ ในกรณีนั้น การปกป้องไฟล์สำคัญของคุณทันทีเป็นเรื่องสำคัญ

โซลูชันที่น่าเชื่อถือคือการใช้ iBoysoft Mac Recovery Mode ลองดูสิ~

คำสรุป

"Error Identifying a Writable Temporary Folder" บน Mac ปกติไม่เป็นอันตราย และสามารถแก้ไขได้โดยการ reset permissions, ซ่อมแซมดิสก์ หรือขยายพื้นที่ว่าง แต่หากปัญหายังคงอยู่พร้อมกับปัญหาดิสก์ อย่าล่าช้า—ใช้เครื่องมืออย่าง iBoysoft Mac Recovery Mode เพื่อรักษาไฟล์ของคุณก่อนที่จะสูญหายไปอย่างถาวร

คำถามที่พบบ่อยเกี่ยวกับ Error identifying a writable temporary folder

คำถาม: แก้ยังไงตอนแรก?
คำตอบ: Reboot Mac, แล้วตรวจสอบ /tmp และ /var/tmp ใน Terminal หากหายไป ให้สร้างใหม่ด้วย permissions ที่ถูกต้องโดยใช้ sudo mkdir และ chmod 1777 หรือใช้เครื่องมือมืออาชีพ iBoysoft Data Recovery for Mac เพื่อกู้คืนข้อมูลที่สูญหาย

คำถาม: สร้าง /tmp ใหม่ยังไง?
คำตอบ: เปิด Terminal และรัน: sudo mkdir /tmp; sudo chmod 1777 /tmp; sudo chown root:wheel /tmp ทีละคำสั่ง

คำถาม: Reset permissions ยังไง?
คำตอบ: ใน Terminal reset permissions ด้วย: sudo chmod 1777 /tmp /var/tmp และ sudo chown root:wheel /tmp /var/tmp