I’m confused by file permissions
Get to grips with file permissions and manage all of your files
In OS X (but not iOS) you can have more than one user account – typically one for yourself and perhaps others for your family.
At the heart of this sits a system known as File System Permissions and understanding this can make your life a lot easier. Every single item on your Mac – all the files you have created, and every file and folder in the operating system – has permissions attached to it.
These permissions determine who ‘owns’ the file, and who else has access to it. In Unix, the system that sits beneath OS X, there are three types of access: reading, writing and executing. Read determines who gets to view the contents of a file, Write determines who gets to edit (and save) the file, and Execute determines which user accounts can run an app or script.
In OS X, you only get to change who owns the file, and who gets to read or write to it. You’ll need to dig into Terminal to adjust the execution status of files. But for the most part, you’ll be fine adjusting permissions inside OS X’s graphical interface.
Changing file and folder permissions
Select any file, or folder, in OS X and choose File > Get Info ( ç-I). Scroll down to find Sharing & Permissions. For most files, you will see your account name followed by (Me) and the privilege set to Read & Write. Below your account will be two further users: ‘staff’ and ‘everyone’ (both typically set to Read Only.) The former group is all the accounts you have set up on your Mac, and the latter one includes any other accounts that may access your Mac (such as a Guest account or another Mac on your network).
You change the permission status of files and folders in the Get Info window. If you are the owner of the file, just click in the Privilege column next to staff or everyone and change them to Read & Write, Read Only, No Access (only for ‘everyone’), or Write Only (for folders).
Most of the time you’ll want to change permissions on a file that you don’t own (typically because your access to it is blocked). This block may be because you have transferred the file from one user account space to another, or because you are trying to view files on a different user account. To change the permissions for a file, or folder, owned by another user, you first click the padlock icon in the bottom-right corner of the Get Info window. Enter an Admin user’s credentials and click OK. Now you can change the privileges.
If you have moved a file manually from one account to another, you may see the name field set to ‘system’ rather than your name (or the name of another user account). You can change the staff group to Read & Write and access the file that way, or make yourself the owner of the file. Click the + button and choose your account name from the list of Users & Groups, then click Select to add it to the item’s privileges. Click the Settings cog and choose ‘Make me the owner’. Choose ‘system’ in the Name list and click the – (minus) button to get rid of it. You’re now the owner of the file as if you’d created it. You can also use this method to make files owned by other people yours.
Viewing folders in other accounts
A common problem is trying to view the contents of a folder on another account on your Mac. Choose Go > Computer and select your startup drive and then the Users folder on it to see folders for each user with an account on your Mac. Open a folder for an account that isn’t yours, and you’ll see a red Stop icon next to most folders. Trying to view the contents of one of these folders bring up the error: “The folder can’t be opened because you don’t have permission to see its contents.”
You can bypass this lock by adjusting the permissions. Select a locked folder, choose File > Get Info, click the Lock icon and enter an Admin user’s credentials. Click the + button, choose your name from the list and click Select. Change your privilege to Read & Write and you’ll be able to access that folder as if it was in your account.
As long as you have access to an admin account, you can override permissions.