Vì sao và khi nào chúng ta cần sửa lỗi phân quyền (repair permission)
trong OS X ?
"Thử sửa phân quyền coi sao" là một lời khuyên được đưa ra khá nhiều trong những bài chia sẻ liên quan đến việc khắc phục một vài lỗi nào đó của OS X. Đôi khi việc này có thể chấm dứt vấn đề mà bạn đang gặp với chiếc máy Mac của mình, nhưng đôi khi nó lại chẳng giúp ích gì cả. Vậy thao tác này thực chất là gì? Nó có tác dụng ra sao và khi nào thì chúng ta nên chạy sửa lỗi phân quyền?
Phân quyền là gì?
Giống với những hệ điều hành khác, bao gồm cả Windows, Linux hay Unix, các tập tin và thư mục trong OS X đều có phân quyền riêng của mình, gọi là file/folder permission. Quyền này sẽ kiểm soát cách mà người dùng và các tiến trình (hay nói rộng hơn, là các phần mềm, ứng dụng) được phép truy xuất tập tin. Ví dụ, các tập tin hệ thống thường chỉ được thiết lập quyền "read only" (chỉ đọc) để người dùng không táy máy xóa mất phần cốt lõi của OS X, trong khi những tập tin ứng dụng thì có quyền "executable" (thực thi), nếu không bạn sẽ chẳng thể nào xài app đó được cả.
Permission, nói cách khác, là cách mà hệ điều hành đảm bảo tính bảo mật cho tất cả mọi thứ, từ những tập tin ứng dụng cho đến các phần cực kì quan trọng của máy tính. Một ứng dụng nào đó không được phép chỉnh sửa dữ liệu của bạn nếu chưa được phép, một phần mềm không thể chỉ đơn giản đột nhập và đánh sập OS X. Nếu một máy tính có người dùng thì việc phân quyền sẽ giúp tập tin của người này an toàn trước người khác.
OS X có hai loại permission:
- Loại 1: giống permission của Unix và Linux, bao gồm read (r - đọc), write (w - ghi), executable (x - thực thi).
- Loại 2: được gọi là quyền access control list (ACL)
Tuy nhiên mình chỉ giới thiệu nó sơ qua cho các bạn biết, bạn nào thích tìm hiểu sâu hơn thì có thể tìm kiếm giải thích trên Apple.com và Wikipedia nhé.
Cách xem phân quyền trong OS X
Bạn có thể xem được phân quyền của một tập tin, thư mục trong OS X rất dễ dàng bằng cách nhấp phải chuột vào một file/folder bất kì, chọn Get Info và nhìn vào mục "Sharing & Permissions". Tại đây bạn sẽ thấy các quyền mà tài khoản của bạn có đối với tập tin, quyền của nhóm người dùng mà tài khoản của bạn nằm trong đó (gọi là group), và quyền của những người còn lại (everyone, còn gọi là other).
Tất cả thông tin về permission được lưu trong một cơ sở dữ liệu được gọi là Bill of Materials (BOM). Tập tin của cơ sở dữ liệu này có dạng *.bom, nó nằm ở đường dẫn /var/db/receipts và /Library/Receipts. Bản thân hệ điều hành cũng như các ứng dụng bên thứ ba sẽ để lại những tập tin *.bom trong hai thư mục này như là một "cuốn sách tham khảo" để dùng về sau.
Sửa phân quyền
Khi bạn thực hiện việc sửa permission, OS X sẽ nhìn vào những tập tin *.bom nói trên và đối chiếu với các tập tin thực sự đang tồn tại trong ổ đĩa của bạn. Nếu một tập tin/thư mục có permission không khớp với những gì được ghi trong tập tin .bom, OS X sẽ thay đổi phân quyền lại cho đúng với "cuốn sách tham khảo".
Lưu ý rằng điều này không phải được áp dụng cho tất cả mọi tập tin hay thư mục đang có trong máy tính của bạn. Dữ liệu cá nhân, tài liệu, hình ảnh của bạn cũng có permission riêng của từng file đấy, tuy nhiên nó không được lưu trữ trong các tập tin BOM. Ngoài ra, những ứng dụng nào không được cài đặt bằng các gói *.pkg (mà chỉ đơn giản là copy vào thư mục Applications rồi chạy) cũng không được lưu permisson vào cơ sở dữ liệu. Chính vì thế, trong quá trình sửa permisson, OS X sẽ chừa những tập tin này ra.
Khi nào thì chúng ta nên sửa phân quyền?
Trong lúc chúng ta sử dụng máy tính, có khả năng một phần mềm nào đó sẽ thay đổi permisson của file/folder khác đi so với ban đầu. Chính sự thay đổi này sẽ dẫn đến những rắc rối phát sinh về sau. Ví dụ: một chương trình có thể lỡ gán quyền ghi (read) cho một tập tin hệ thống, thế rồi tập tin này lại tiếp tục bị thay đổi nội dung bởi một vài ứng dụng khác khiến OS X không còn hoạt động như bình thường. Ví dụ khác: một ứng dụng có thể bị bỏ mất quyền thực thi (executable) khiến nó không còn có thể chạy lên, hoặc thư mục chính của bạn bị bỏ mất quyền ghi nên bạn chẳng thể nào lưu hay chỉnh sửa tập tin gì nữa.
May mắn cho chúng ta là OS X có sẵn công cụ giúp chỉnh sửa lại những permission trong những tình huống như trên, và tuyệt hơn nữa đó là công đoạn này rất an toàn. Việc sửa phân quyền sẽ không gây ra bất kì lỗi gì, chỉ là nó có khắc phục được vấn đề hiện tại hay không mà thôi. Đó là lý do vì sao bạn thường thấy người ta đề xuất sửa phân quyền khi bạn gặp một vấn đề nghiêm trọng với chiếc máy tính Mac của mình.
Nếu bạn không gặp chuyện gì hết, máy vẫn chạy ngon lành thì bạn chẳng cần phải chạy sửa lỗi làm gì. OS X cũng chỉ tự động repair permission mỗi khi cập nhật hay nâng cấp hệ điều hành mà thôi.
Làm thế nào để sửa phân quyền?
Bạn có thể chạy sửa permission bằng cách vào thư mục Applications > Utilities > Disk Utility. Một cách khác vui vẻ và nhanh hơn: nhấn vào biểu tượng hình cái kính lúp ở góc trên bên phải màn hình, gõ vào chữ Disk Utility rồi nhấn Enter.
Khi đã chạy được công cụ này lên, bạn chọn lấy phân vùng Mac của mình (thường được đặt tên là "Macintosh HD"). Sau đó nhấn tiếp nút "Verify Disk Permissions" để xem có vấn đề gì hay không. Nếu máy báo có, bạn nhấn tiếp nút "Repair Disk Permissions" để máy tự thực hiện việc sửa lỗi.
Nhưng anh em cũng nên biết là có những permission có thể được thay đổi mà không gây ra bất kì vấn đề gì với hệ thống của chúng ta. Nếu máy Mac của bạn đang chạy bình thường mà bạn thấy Disk Utility báo rằng có một số phân quyền đã bị thay đổi thì cũng đừng quá lo lắng.
Ngoài việc chạy Disk Utilities từ trong hệ điều hành, bạn có thể chạy nó từ trình OS X Recovery nếu máy không thể chạy lên. Để truy cập vào chế độ đặc biệt này, lúc vừa nhấn nút nguồn để khởi động thiết bị, bạn nhấn giữ phím Option, sau đó chọn vào phân vùng "10.x Recovery". Việc sửa permission từ OS X Recovery đã vài lần giúp mình khắc phục được chuyện máy Mac không chạy rồi đấy.
Làm thế nào để sửa permission cho thư mục chính?
Thư mục chính trong OS X còn được gọi là thư mục Home. Nó là nơi chứa các thư mục con như Desktop, Music, Pictures, Movies, Download... Đôi khi thư mục này bị lỗi khiến bạn không thể làm gì với những tài liệu của mình. Nếu gặp tình trạng như vậy, bạn còn có một công cụ khác để sửa lỗi permission cho thư mục Home. Thực chất thì công cụ mà mình nói ở đâu không dùng đến các file *.bom, nó chỉ đơn giản chỉnh lại permisson của Home về mặc định của Apple mà thôi.
Để sử dụng tính năng này, bạn sẽ phải vào chế độ OS X Recovery. Đầu tiên bạn hãy tắt hẳn máy tính của mình đi, lúc vừa nhấn nút nguồn để khởi động thiết bị thì bạn nhấn giữ phím Option trên bàn phím, sau đó chọn vào phân vùng "10.x Recovery".
Khi chế độ này đã chạy lên, bạn vào menu Utilities > Terminal. Nhập lệnh
vào cửa sổ dòng lệnh rồi nhấn Enter. Tiếp tục chọn ổ đĩa cài hệ điều hành rồi chọn tài khoản đang bị vấn đề với thư mục Home. Ở cuối cửa sổ này, tìm mục "Reset Home Directory Permissions and ACLs" và nhấn nút Reset tại đây. Khởi động lại máy Mac của bạn khi đã hoàn thành. Permisson của thư mục home sẽ quay trở lại ban đầu.