การถอดถอน Rosetta 2 ออกจาก macOS เหมาะสำหรับผู้ที่ต้องการเปลี่ยนผ่านระบบไปสู่สถาปัตยกรรม Apple Silicon (Native ARM64) 100% เพื่อทดสอบว่ายังมี dependency หรือเครื่องมือใดแอบรันบน Intel x86 อยู่หรือไม่
เนื่องจาก Apple ออกแบบ Rosetta 2 ให้ฝังลึกกับระบบปฏิบัติการและไม่มีปุ่มสวิตช์เปิด-ปิดในหน้าต่าง UI ทั่วไป การถอนการติดตั้งจึงต้องดำเนินการผ่าน Terminal ควบคู่กับการทำความเข้าใจเงื่อนไขของระบบความปลอดภัย macOS
สิ่งที่ต้องรู้ก่อนเริ่มถอดถอน
- ผลกระทบ
โปรแกรมที่เป็นโค้ด Intel x86 แบบเพียวๆ รวมถึง Universal Binary บางตัวที่ยังต้องพึ่งพาไดรเวอร์หรือปลั๊กอิน Intel จะเปิดไม่ติดทันที - ความปลอดภัยของระบบ
ไฟล์ระบบของ Rosetta ถูกป้องกันโดย SIP (System Integrity Protection) และ Sealed System Snapshot (SSV) ใน macOS ยุคปัจจุบัน การลบตัวไบนารีระบบหลักตรงๆ จึงทำได้ยากและเสี่ยงต่อเสถียรภาพของ OS แต่เราสามารถลบ service, receipt, และ database เพื่อตัดการทำงานและบังคับให้ระบบแจ้งเตือนว่าไม่มี Rosetta ได้
การถอดถอนผ่าน Terminal (วิธีมาตรฐาน)
คำสั่งทางการของ macOS ไม่ได้ให้ฟังก์ชัน softwareupdate --uninstall-rosetta โดยตรง แต่สามารถตัดการทำงาน ลบฐานข้อมูล package receipt และแคชที่ติดตั้งไว้ได้ตามขั้นตอนต่อไปนี้
- เปิดแอป Terminal
- รันคำสั่งเพื่อหยุด service การทำงานของ Rosetta daemon
sudo launchctl stop com.apple.oahd - ลบ Package Receipt เพื่อล้างประวัติการติดตั้ง ทำให้ระบบไม่จดจำว่าเคยลง Rosetta 2 ไว้
sudo pkgutil --forget com.apple.pkg.RosettaUpdateAuto - ล้างไฟล์แคชและข้อมูล Translation AOT (Ahead-of-Time cache)
sudo rm -rf /Library/Apple/usr/share/rosetta sudo rm -rf /var/db/oah
(หมายเหตุ: โฟลเดอร์/var/db/oahคือที่เก็บ Ahead-of-Time Translated binaries ที่ระบบแปลโค้ด x86 เก็บไว้) - รีสตาร์ทเครื่อง Mac หนึ่งรอบเพื่อให้การตั้งค่ามีผล
หลังจากรีสตาร์ท หากคุณพยายามเปิดแอปที่เป็น Intel macOS จะเด้งหน้าต่างขึ้นมาถามซ้ำอีกครั้งว่า “To open [App Name], you need to install Rosetta.” แสดงว่าระบบได้ตัดการทำงานของ Rosetta ออกเรียบร้อยแล้ว
ปิดการใช้งาน “Open using Rosetta” ในแอป Universal
สำหรับใครที่ไม่ได้ต้องการลบระบบทิ้งทั้งหมด แต่ต้องการแน่ใจว่าไม่มีแอปไหนเผลอรันโหมด Rosetta
- เปิด Finder เข้าไปที่โฟลเดอร์ Applications
- คลิกขวาที่แอปที่ต้องการ ตรวจสอบ แล้วเลือก Get Info (
Command + I) - ในส่วนของ General ดูที่ช่อง “Open using Rosetta”
- เอาเครื่องหมายถูกออก เพื่อบังคับให้แอปพลิเคชันนั้นรันด้วยสถาปัตยกรรม Native ARM64 เท่านั้น
วิธีติดตั้งกลับคืนมา (หากจำเป็นต้องใช้งาน)
หากถอดออกแล้วพบว่ามี Tool สำคัญ (เช่น ปลั๊กอินเสียง, CLI tool หรือเครื่องมือ dev เก่าๆ) ยังจำเป็นต้องพึ่งพา Rosetta คุณสามารถลงใหม่ได้ทันทีผ่าน Terminal เพียงคำสั่งเดียว
BASH / Shell
softwareupdate --install-rosetta --agree-to-license
สรุปแนวทางสำหรับเครื่อง Dev / Power User
การนำ Rosetta 2 ออกเป็นวิธีที่ดีในการทำ Clean Environment Test โดยเฉพาะการตรวจสอบ Docker images, Homebrew (/opt/homebrew เทียบกับ /usr/local) หรือสคริปต์คอมไพล์ต่าง ๆ เพื่อรับประกันว่าทุก Process ในระบบทำงานแบบ Native และดึงประสิทธิภาพของ Apple Silicon ออกมาได้สูงสุด