Tuesday, June 17, 2008

How Can I Change Linux File Permissions?

How Can I Change Linux File Permissions?

The general form of the chmod command is

chmod

To tell chmod the new permissions for a file, you can use any combination of these permission flag characters:
WHO IT APPLIES TO ACCESS CHANGE ACCESS TYPE
(pick one or more) (pick one) (pick one or more)
u For the owner + Grant access r For read access
g For the group - Deny access w For write access
o For all others x For execute access

Here are some examples:

chmod o-r pig_info Remove read access from all others.

chmod g+rw pig_info Grant read and write access to group.

chmod ugo+x zippity Grant execute access to everybody.

In effect, you're saying "change the mode for these people by adding/removing their access to read/write/execute the file named whatever." Just pick the proper combination of flags in each of the three columns, depending on what type of access you want for the file.

Note: If you give chmod a directory name instead of a file name, the permissions have slightly different meanings. For a directory, read access means that you can list the files with the ls command; write access allows you to create or delete files; and execute access gives you the ability to change to that directory with the cd command.

Transferring Ownership of a File Using Chown

If you are logged in as root, you can transfer ownership of a file or directory (if you move it into another user's directory) using the chown command.

To tell chown what to do, just give it the new owner and the file name, like this:

chown sigmund zippity

This will make sigmund the owner of zippity. Once you've transferred ownership, sigmund will be able to set the file's permissions (with chmod) if he wants to.

For more information on the chmod command, see the chmod manual.

No comments: