Mục lục:
- 1. Tại sao Terminal báo "Operation not permitted"
- 2. Cách khắc phục lỗi Terminal "Operation not permitted"
- 3. Kết luận
- 4. Câu hỏi thường gặp về "Operation not permitted"
Terminal, tiện ích tích hợp sẵn của macOS, là trợ thủ đắc lực giúp người dùng Mac truy cập hệ điều hành dựa trên văn bản. Bằng cách dùng các dòng lệnh trong Terminal, bạn có thể dễ dàng xem thư mục tài khoản người dùng, quản lý tiến trình, xóa ổ khởi động, v.v. Ngoài ra, nó rất hữu ích để chạy iBoysoft Data Recovery trong macOS Recovery qua Terminal để khôi phục dữ liệu từ Mac không thể khởi động.
Nhưng Terminal báo "Operation not permitted" hoặc "zsh: command not found" sau khi bạn nhập lệnh như ls và kill process, điều đó có nghĩa là gì? Rất nhiều người dùng Mac gặp lỗi Terminal này trên macOS Mojave và các phiên bản mới hơn, kể cả macOS Monterey mới nhất. Đọc tiếp để biết tại sao thao tác không được phép và cách khắc phục.
Tại sao Terminal báo "Operation not permitted"
Một số người dùng Mac báo cáo Terminal hoạt động tốt trên macOS High Sierra và cũ hơn, nhưng họ nhận được thông báo lỗi "Operation not permitted" sau khi cập nhật macOS lên Mojave, Catalina, Big Sur hoặc Monterey. Điều này là do tính năng bảo mật mới – Full Disk Access (Truy cập toàn bộ ổ đĩa).
Full Disk Access yêu cầu ứng dụng phải được cấp toàn quyền để truy cập file được bảo vệ của người dùng, đối với ứng dụng chưa được cấp quyền, một số dữ liệu trên Mac sẽ không thể truy cập. Trên macOS 10.13 và cũ hơn, quyền Full Disk Access được cấp tự động khi cài ứng dụng.
Ngoài Full Disk Access, lỗi "Operation not permitted" cũng có thể do tính năng macOS khác – SIP (System Integrity Protection – Bảo vệ toàn vẹn hệ thống). Cơ chế này được giới thiệu từ OS X 10.11 và hoạt động để bảo vệ file và thư mục thuộc hệ thống khỏi sửa đổi không mong muốn. Nếu bạn cố gắng chỉnh sửa nội dung được bảo vệ trong Terminal, thông báo "Operation not permitted" sẽ hiện ra.
Cách khắc phục lỗi Terminal "Operation not permitted"
Vì đã biết lỗi có thể do quyền Full Disk Access hoặc System Integrity Protection, chúng ta có thể tiến hành khắc phục từ hai khía cạnh này. Bạn có thể làm theo hướng dẫn chi tiết dưới đây để xóa thông báo "Operation not permitted" khỏi Terminal trên Mac.
Bật Full Disk Access cho Terminal
- Nhấn logo Apple và chọn System Preferences.
- Trên cửa sổ mới, tìm và mở Security & Privacy.
- Chọn tab Privacy, tìm Full Disk Access ở thanh bên trái.
- Nhấn ổ khóa góc dưới bên trái, dùng Touch ID hoặc mật khẩu để mở khóa.
- Nếu Terminal hiển thị ở khung bên trái và đã được tích, hãy tích vào ô của nó. Chọn Quit & Reopen để cấp Terminal toàn quyền truy cập ổ đĩa.
- Nếu chưa có, nhấn biểu tượng + ở khung bên phải, tìm Terminal từ Applications, nhấn Open.
- Terminal sẽ liệt kê trong danh sách ứng dụng được phép với ô được tích.
- Mở Terminal và nhập lại lệnh gây lỗi "operation not permitted" để xem có hoạt động không.

Tạm thời tắt System Integrity Protection
Thông báo "Operation not permitted" vẫn hiện sau khi bật Full Disk Access cho Terminal? Bạn có thể tạm thời tắt System Integrity Protection trên Mac. Việc này cần thiết cho nhà phát triển để tắt SIP nhằm test code, debug ứng dụng, cài extension hệ thống trên Mac. Sau khi thực hiện các tác vụ cần thiết, bạn nên bật lại SIP sớm nhất để bảo vệ Mac khỏi virus và phần mềm độc hại.
- Tắt Mac và khởi động vào macOS Recovery mode.
- Nhấn Utilities từ thanh menu trên cùng và mở Terminal.
- Gõ lệnh csrutil disable trong Terminal.
- Nhấn Return hoặc Enter.
- Nhấn menu Apple và chọn Restart.
- Mở ứng dụng Terminal và chạy lệnh trước đó.

Việc tắt System Integrity Protection khiến Mac dễ bị tấn công. Do đó, sau khi hoàn thành tác vụ trong Terminal, bạn nên bật lại SIP, chỉ cần lặp lại các bước trên và chạy lệnh csrutil enable thay thế trong Terminal.
Kết luận
Khi Terminal báo "Operation not permitted", nghĩa là bạn không có đặc quyền truy cập file và thư mục được bảo vệ trên Mac. Nhưng bài viết này đã đưa ra hai giải pháp. Sau khi bật quyền Full Disk Access cho Terminal hoặc tắt SIP trong Recovery mode, thông báo lỗi sẽ biến mất, và đừng quên bật lại SIP sau khi dùng Terminal.
Câu hỏi thường gặp về "Operation not permitted"
Câu hỏi: Làm thế nào để khắc phục "Operation not permitted" trên Mac?
Trả lời: Khi gặp lỗi "Operation not permitted" trên Terminal Mac, bạn có thể bật Full Disk Access cho Terminal trong System Preferences ở bước đầu. Nếu vẫn không khắc phục, bạn có thể tạm thời tắt System Integrity Protection để xóa lỗi Terminal.
Câu hỏi: Làm thế nào để cấp full disk access trên Mac?
Trả lời: Một số phần mềm thứ ba dùng cho sao lưu và khôi phục dữ liệu như iBoysoft Data Recovery cần truy cập toàn bộ ổ đĩa. Bạn có thể vào menu Apple > System Preferences > Security & Privacy > Privacy, tìm Full Disk Access ở khung bên trái, nhấn nút + để thêm bất kỳ ứng dụng nào bạn tin cậy cần quyền Full Disk Access.