PDA

View Full Version : chmod question



jiohdi
01-21-2005, 05:40 PM
I come across files which tell me you dont have permission to read this....
if I do root#chmod u=+rwx /dir/dir/file.doc I still get no access
but if I do root#chmod uo+rwx /dir/dir/file.doc, I do get access....
so why am I other and not user?

Rumo
01-21-2005, 08:56 PM
The u-flag stands for the user who owns the file. In your case root. The 'g'-flag stands for the group it belongs to and 'o' for all other users. That was the short explanation, now the long one:


if you type 'ls -l' you get something like this:
-rw-r--r-- 1 root root 0 2005-01-21 20:46 test

The owner of the file 'test' is root and it belongs to the group root. The first - means that it is a file (a directory would show a d). -rw-r--r-- means that it is read- and writable for the owner (root), readabale for the group it belongs to and readable for all other users.

If you now type 'chgrp users test ' and 'chmod g+w test' you get this:
-rw-rw-r-- 1 root users 0 2005-01-21 20:46 test

Now the file belongs to the user root and the group users. The group users has now write-access to the file (if not every user should have write-access you can change the ownership to an other group). I think, that's what you wanted.

P.S.: If you want to change the owner of a file you can use the command 'chown nameofuser nameoffileordirectory'

jiohdi
01-21-2005, 09:06 PM
if I want only console users to access a file, should create such a group and give them
permission to do rwx

Rumo
01-21-2005, 09:16 PM
'other' and users mean basically the same (normally every user is part of the group users): Every person with a useraccount has access. other doesn't mean, that people from the internet have access.

So as long as you don't share your computer with people you don't trust or you are part of a big network (not the internet) it should be totally safe to give write-access to 'other' and/or 'users'. If this is not the case than you probably like to create a new group (or use an existing one). Login as root and type 'groupadd groupname'. You can add users to this group with the following command 'groupmod -A username groupname'.

If you like to know which groups you are part of, type *tada* 'groups'.


btw: If you like to know more about any of these commands type 'man commandname', e.g. 'man groupadd'.

jMon54
03-02-2005, 02:44 PM
What I don't understand about this subject is why when I right click on a file on my desktop, and I change the permissions there, it doesn't seem to do anything, even if I am using file mgr as superuser.