<<

Laboratory 04 - : permissions to files and directories permissions for files & directories

The permisions are divided into 4 sections.

– adds and removes permissions If you wanted to add or remove permissions to the user, use the “chmod” with a “+” or “–“, along with the r (read), (), x (execute) attribute followed by the name of the or . chmod +rwx “name of the file” chmod –rwx “name of the directory”

chmod +x testfile – this would allow me to execute chmod –wx testfile – this would take out write and permissions this only changes the permissions for the owner of the file

Changing Permissions for the Group Owners & Others The command is similar to previously command, but this has to be add a “g” for group or “o” for others. chmod g+w testfile chmod g-wx testfile

chmod o+w testfile chmod o-rwx workfolder

Lastly you can change it for everyone: “u” for users, “g” for group, & “o” for others; uog or a (for all). chmod ugo+rwx workfolder – will give read, write, execute to everyone chmod a=r workfolder – will give only read permission for everyone

– changing groups of files & directories Another useful option is to change file permission to the group owning the file.

You can see above that testfile and the work folder belong to the users group.

By issuing the command – chgrp “name of the group” “name of the file” – you can change this. chgrp sales testfile chgrp sales workfolder This give sales control of the file & then I can take away permissions for everyone else. Note: The group must before you try to assign groups to files and directories.

– changing ownerships of files and directories. The command “chwon” along with “name of new owner” & “name of file.”

The files belonged to roman. To give ownership to tom, issue the command: chown tom testfile chown tom workfolder We can also combine the group and ownership command by:

chown -R tom:sales /home/roman/tsfiles The above command gives tom the ownership of the directory tsfiles, and all files and subfolders. The -R stands for recursive, is why all sub folders, and files belong to tom as well. As opposed to: chown tom workfolder This command will give ownership to tom but all sub files and directories still belong to the original owner. The -R will transfer ownership of all sub directories to the new owner. As you can see, you have several options when it comes to permissions. You have the capability to dictate can do what & the flexibility to limit usability among users. It may be easier to just give all permission to everyone but this may end up biting you in the end, so choose wisely.

Permission in numeric mode The above way of changing permissions will work fine but you may also need to know how to change permissions in numeric mode. chmod is used in much the same way, but instead of r, w, or x you will use numbers instead. What are the numbers? 0 = No Permission 1 = Execute 2 = Write 4 = Read You basically add up the numbers depending on the level of permission you want to give.

Examples: chmod 777 workfolder Will give read, write, and execute permissions for everyone.

chmod 700 workfolder Will give read, write, and execute permission for the user, but nothing to everyone else.

chmod 327 workfolder Will give write and execute (3) permission for the user, w (2) for the group, and read, write, and execute for other users. Permission numbers 0 = — 1 = –x 2 = -w- 3 = -wx 4 = r— 5 = r-x 6 = rw- 7 = rwx Either variation of changing permissions will work, just remember how to use the numeric values.

TASKS: 1. familiar with adduser command using: man adduser/useradd, man groupadd useradd - create a new user or update default new user information. Create 3 user accounts (user1, user2, user3) and add 2 groups (gr1, gr2). add user1 to gr1 and add user2, user2 to gr2.

Check user ID (UID) and group ID (GID) by listing file /etc/. lines with added user. What is the UID and GID for these accounts?

Write command which show UID and GID for your user name:

2. create 3 files with command: files1, files2, files3.

3. Write the command line by using letters with chmod to set the following permissions: - rwxrwxr-x for file1

- r-x—x—x for file2

- ——xrwx for file3

4. Write the command line by using numbers with chmod to set the following permissions:

- rwxrwxrwx for file4 (you have to prepare this file)

- -w------for file5 (you have to prepare this file)

- rwx--x—x for folder1 (you have to prepare this folder)

5. Create two user accounts: tst1 and tst2 Logging in id: tst1, group users, with bash shell, home directory /home/tst1 Logging in id: tst2, group public, with bash shell, home directory /home/tst2 For the two accounts set a password.

Logging in as tst1 and copy /bin/ into tst1 home directory as myls file. Change the owner of myls to tst1 and the permissions to 0710. What does this permission value mean?

Logging in as tst2 and try to use /home/tst1/myls to list your current directory. Does it work ?

Create a new group labo with tst1 and tst2. Change the owner group of myls file to labo. Try again from tst2 account to execute /home/tst1/myls to list your current directory. Does it work?