From 623b1be9039109e0a4388490f3995ca5d20441cc Mon Sep 17 00:00:00 2001
From: Laurent Modolo <laurent@modolo.fr>
Date: Mon, 5 Oct 2020 14:49:21 +0200
Subject: [PATCH] add session 5.

---
 5_users_and_rights.md | 184 ++++++++++++++++++++++++++++++++++++++++++
 Makefile              |   4 +-
 img/user_right.png    | Bin 0 -> 27183 bytes
 index.md              |   2 +
 4 files changed, 189 insertions(+), 1 deletion(-)
 create mode 100644 5_users_and_rights.md
 create mode 100644 img/user_right.png

diff --git a/5_users_and_rights.md b/5_users_and_rights.md
new file mode 100644
index 0000000..aebedea
--- /dev/null
+++ b/5_users_and_rights.md
@@ -0,0 +1,184 @@
+---
+title: Users and rights
+
+---
+
+# Users and rights
+
+[![cc_by_sa](/Users/laurent/Documents/formations/2020_08_UNIX/img/cc_by_sa.png)](http://creativecommons.org/licenses/by-sa/4.0/)
+
+Objective: Understand how rights works in GNU/Linux
+
+GNU/Linux and other Unix-like OS are multiuser, this means that they are designed to work with multiple users connected simultaneously to the same computer.
+
+There is always at least one user: the **root** user
+
+- It’s the super user
+- he has every right (we can say that he ignores the right system)
+- this account should only be used to administer the system.
+
+There can also be other users who
+
+- have rights
+- belong to groups
+- the groups also have rights
+
+## File rights
+
+Each file is associated with a set of rights:
+
+- `-` nothing
+- `r` **r**eading right
+- `w` **w**riting right
+- `x` e**x**ecution right
+
+Check your set of rights on your `.bashrc` file
+
+```sh
+ls -l ~/.bashrc
+```
+
+The first column of the `ls -l` output show the status of the rights on the file
+
+![user_rights](./img/user_right.png)
+
+```
+ rwxr-xr--
+ \ /\ /\ /
+  v  v  v
+  |  |  others (o)
+  |  |
+  |  group (g)
+  |
+ user (u)
+```
+
+- the 1st character is the type of the file (we already know this one)
+- he 3 following characters (2 to 4) are the **user** rights on the file
+- the characters 5 to 7 are the **group** rights on the file
+- the characters 8 to 10 are the **others’** rights on the file (anyone not the **user** nor in the **group**)
+
+To change the file rights you can use the command `chmod` 
+
+Use the command  `ls -l` to check the effect of the following options for `chmod`
+
+```sh
+chmod u+x .bashrc
+```
+
+```sh
+chmod g=rw .bashrc
+```
+
+```sh
+chmod o+r .bashrc
+```
+
+```sh
+chmod u-x,g-w,o= .bashrc
+```
+
+What can you conclude on the symbols `+` , `=`, `-` and `,` with the `chmod` command ?
+
+The default group of your user is the first in the list of the groups you belong to. You can use the command `groups` to display this list. What is your default group ?
+
+When you create an empty file, system default rights and your default groups are used. You can use the command `touch` to create a file.
+
+```sh
+touch my_first_file.txt
+```
+
+What are the default rights when you crate a file ?
+
+You can create folders with the command `mkdir` (**m**a**k**e **dir**ectories).
+
+```sh
+mkdir my_first_dir
+```
+
+What are the default rights when you create a directory ? Try to remove the execution rights, what appends then ?
+
+You can see the **/root** home directory. Can you see it’s content ? Why ?
+
+Create a symbolic link (`ln -s`) to your **.bashrc** file, what are the default rights to symbolic links ?
+
+Can you remove the writing right of this link ? What happened ?
+
+## Users and Groups
+
+We have seen how to change the right associated with the group, but what about changing the group itself ? The command `chgrp` allows you to do just that:
+
+```sh
+chgrp audio .bashrc
+```
+
+The command `id` show the same information, but with some differences what are they ?
+
+Can you cross this additional information with the content of the file `/etc/passwd` and `/etc/group` ?
+
+What is the user *id* of **root** ?
+
+Now the next step is to change the owner of a file, you can use the command `chown` for that.
+
+```sh
+chown ubuntu my_first_file.txt
+```
+
+You can change the user and the group with this command:
+
+```sh
+chown ubuntu:audio my_first_file.txt
+```
+
+What are the rights on the program `mkdir` (the command `which` can help you find where program file are) ?
+
+Can you remove the execution rights for the others ?
+
+The command `cp` allows you to **c**o**p**y file from one destination to another.
+
+```sh
+man cp
+```
+
+Copy the `mkdir` tool to your home directory. Can you remove execution rights for the others on your copy of `mkdir` ? 
+
+You cannot change the owner of a file, but you can always allow another user to copy it and change the rights on its copy.
+
+## Getting admin access
+
+Currently you don’t have administrative access to your VM, this means that you don’t have the password to the *root* account. Another way to get administrative access in Linux is to use the `sudo` command.
+
+You can read the documentation (manual) of the `sudo` command with the command `man`
+
+```sh
+man sudo
+```
+
+Like for the command, `less` you can close `man` by pressing **Q**.
+
+![sandwich](https://imgs.xkcd.com/comics/sandwich.png)
+
+On Ubuntu, only members of the group **sudo** can use the `sudo` command. Are you in this group ?
+
+**The root user can do everything in your VM, for example it can delete everything from the `/` directory but it’s not a good idea (see the [Peter Parker principle](https://en.wikipedia.org/wiki/With_great_power_comes_great_responsibility))**
+
+One advantage of using a command line interface is that you can easily reuse command written by others. Copy and paste the following command in your terminal to add yourself in the **sudo** group.
+
+```sh
+docker run -it --volume /:/root/chroot alpine sh -c "chroot /root/chroot /bin/bash -c 'usermod -a -G sudo etudiant'"
+```
+
+We will come back to this command later in this course when we talk about virtualisation.
+
+You have to logout and login to update your list of groups. To logout from a terminal, you can type `exit` or press **ctrl** + **d**.
+
+Check your user information with the `sudo` command
+
+```sh
+sudo id
+```
+
+You can try again the `chown` command with the `sudo` command.
+
+Check the content of the file `/etc/shadow` , what is the utility of this file (you can get help from the `man` command).
+
diff --git a/Makefile b/Makefile
index cc5caa9..30dc75d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-all: index.html 1_understanding_a_computer.html 2_using_the_ifb_cloud.html 3_first_steps_in_a_terminal.html 4_unix_file_system.html
+all: index.html 1_understanding_a_computer.html 2_using_the_ifb_cloud.html 3_first_steps_in_a_terminal.html 4_unix_file_system.html 5_users_and_rights.html
 
 index.html: index.md github-pandoc.css
 	pandoc -s -c github-pandoc.css index.md -o index.html
@@ -15,3 +15,5 @@ index.html: index.md github-pandoc.css
 4_unix_file_system.html: 4_unix_file_system.md github-pandoc.css
 	pandoc -s --toc -c github-pandoc.css 4_unix_file_system.md -o 4_unix_file_system.html
 
+5_users_and_rights.html: 5_users_and_rights.md github-pandoc.css
+	pandoc -s --toc -c github-pandoc.css 5_users_and_rights.md -o 5_users_and_rights.html
diff --git a/img/user_right.png b/img/user_right.png
new file mode 100644
index 0000000000000000000000000000000000000000..38447517b8c16d642f6ab26269e7286b5db8641b
GIT binary patch
literal 27183
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

literal 0
HcmV?d00001

diff --git a/index.md b/index.md
index 3f687f3..fe25d37 100644
--- a/index.md
+++ b/index.md
@@ -8,4 +8,6 @@ title: #  Unix / command line training course
 2. [Using the IFB cloud](http://perso.ens-lyon.fr/laurent.modolo/unix/2_using_the_ifb_cloud.html)
 3. [First step in a terminal](http://perso.ens-lyon.fr/laurent.modolo/unix/3_first_steps_in_a_terminal.html)
 4. [The Unix file system.](http://perso.ens-lyon.fr/laurent.modolo/unix/4_unix_file_system.html)
+5. [Users and rights](http://perso.ens-lyon.fr/laurent.modolo/unix/5_users_and_rights.html)
+
 
-- 
GitLab