Sometime we work in a group and we need to access a specific directory or file by multiple user. And in linux we can get this functionality very easily.
Create a common group and directory
We use groupadd
command in linux for creating a group. Let’s execute below command and create a group name shared
and a directory.
$ mkdir /home/Desktop/shared_directory $ sudo groupadd shared
Add existing user to the group
We use usermod
command to modify an user account in linux. Let’s execute below command to add our existing user aniruddha
to the group shared
.
$ sudo usermod -a -G shared aniruddha
Set appropriate permission on the directory
By default linux assign the group of a newly created directory or file to it’s current user. But we have to set the group of the directory to shared so that all user in the shared
group can access the directory. And we also have to set the setGID so that newly created files or directory inside the shared_directory
have the same group as the parent directory.
$ sudo chgrp -R shared /home/Desktop/shared_directory $ sudo chmod -R 2775 /home/Desktop/shared_directory
Here chgrp
is used to change the group of any directory or file and chmod
is used to change the permission.
Here -R
is recursive operation.2
is for the setGID.7
is the rwx permission.5
is the rx permission.
Create more system users
Now it’s time to create more system user and assign them to the group shared.
$ sudo useradd -m -c "John Doo" -s/bin/bash -G shared john
Now if log in as another user and go to shared_directory
you can access it.