|00:01||Hello and welcome to the spoken tutorial on Assigning Groups on User Creation in Linux.|
|00:08|| In this tutorial we will learn about
Creating a user group /etc/group file
|00:17||Assigning groups to users at the time of account creation|
|00:22||We will do this through some examples.|
|00:25||To record this tutorial, I am using Ubuntu Linux 16.04 Operating System|
|00:32|| To practice this tutorial,
you should have gone through Linux System Administration tutorials on this website.
|00:40||you must have root access to your computer.|
|00:44||What is a group in Linux?|
|00:47||We can understand group as a collection of users.|
|00:51||In a college system, a group can be different departments like CSE, Electrical etc.|
|00:58||Groups can also be different clubs like music club, sports club, literature club, etc.|
|01:06|| Linux supports two types of groups.
Primary group and Supplementary group
|01:12||Every user must belong to one and only one primary group.|
|01:17||This is the default group for the user when the user logs in.|
|01:22||For example: a student must belong to one and only one department.|
|01:28||A user can be a member of more than one group.|
|01:32||Those groups are called supplementary groups.|
|01:36||These groups are assigned to the user, to provide him additional access to resources.|
|01:43||More on access mechanism or permission will be discussed in subsequent tutorials.|
|01:50||Let’s take an example. User radha belongs to the CSE department.|
|01:56||She is also a member of the music club and sports club.|
|02:01||In this scenario, CSE is the primary group for radha.|
|02:05||And she is a member of two supplementary groups - music club and sports club.|
|02:12||Let’s create this scenario in our system.|
|02:16||First, we will create group CSE.|
|02:19||And we will use addgroup command in order to create this group.|
|02:24||Open the Terminal by pressing Ctrl, Alt and T keys simultaneously on the keyboard.|
|02:32||Now, we should login as superuser or root user.|
|02:37||To do so type: sudo space su and press Enter.|
|02:44||Type the admin password and then press Enter.|
|02:48||Notice, our login prompt has changed to a hash symbol.|
|02:53||This indicates that we are in the root user mode.|
|02:57||Here onwards, please remember to press the Enter key after typing each command.|
|03:03||Now type addgroup space cse|
|03:08||This will create group cse.|
|03:12||Linux automatically allocates a Unique ID for each group that is created.|
|03:18||Here, GID, that is Group ID is 1002.|
|03:22||Alternatively, we can mention a GID of our choice.|
|03:28||For this, we need to use hyphen gid option along with the addgroup command.|
|03:35||GIDs in the range of 0 to 999 are reserved for the system users.|
|03:42||So, always choose a number greater than or equal to 1000 as GID|
|03:49||Let’s us create a group Music_club with the GID 1012.|
|03:55|| On the terminal type:
addgroup space hyphen gid 1012 space Music underscore club
|04:06||Here type M is in capital letter.|
|04:10||Notice, it is showing some error.|
|04:13||Actually, we should have written m in lowercase letter.
Let’s try that.
|04:19||Press the Up arrow key to get the previously executed command.|
|04:24||Change capital M to m in lowercase letter.|
|04:30||The command is working now.|
|04:32||So, always remember to use lowercase letters while writing group names.|
|04:38||Similarly let’s create another group sports underscore club.|
|04:43||This time no need to mention the GID.|
|04:48||Now we have three groups cse, music underscore club and sports underscore club.|
|04:55|| How can we check the details of the created group?
Type cat space /etc/group
|05:05||There will be an entry in this file for every user on the system.|
|05:11||Each line has four fields separated by a colon symbol.|
|05:16||The first field is the name of the group.|
|05:19||The second field is the encrypted password for the group.|
|05:24||Third field shows the GID as a number.|
|05:28||Fourth field contains the list of users that belong to that group separated by commas.|
|05:35||This list contains all users who have this group as a secondary group.|
|05:41||We can see the entries for cse, music underscore club and sports underscore club groups.|
|05:49||Notice, music underscore club has Gid 1012 which we mentioned during group creation.|
|05:57||Here, the fourth field is empty for all the groups.|
|06:02||This is because there are no members in these groups, as of now.|
|06:07||The password field is x.|
|06:10||We will discuss about the password field and list of members field in detail, in a separate tutorial on groups.|
|06:18|| Now, how can we specify the primary and supplementary groups while creating the user?
Let us see an example.
|06:26|| To specify that user radha belongs to the primary group cse, type:
adduser space hyphen ingroup space cse space radha
|06:40||Type the password as pass underscore radha and press Enter.|
|06:46||Retype the same password and press Enter.|
|06:50||Type name as Radha with capital R.
And proceed as we have done before.
|06:59||We have successfully created user radha with primary group cse.|
|07:05||So, you should use ingroup option to specify primary group’s name while creating the user.|
|07:13||As we know, radha is a member of music underscore club.|
|07:17||So music underscore club will be the supplementary group for the user radha.|
|07:23||Type adduser space radha space music underscore club|
To add supplementary groups using adduser command, you should have an existing user.
|07:38||Here, we have first created the user radha. Then added radha to the supplementary group using adduser command.|
|07:46|| If you need to specify that radha is also a member of sports club type:
adduser space radha space sports underscore club
|07:59||Let’s check user radha’s details using id command.|
|08:04||Type id space radha|
|08:08||Notice, User radha is in group cse which has GID 1002|
|08:15||That is the primary group for radha.|
|08:19||Next, there is the list of groups, where user radha is member of.|
|08:25||Along with primary group cse, radha is also a member of two supplementary groups music underscore club and sports underscore club.|
|08:35||Now let’s check our /etc/group file for the entry of radha|
|08:42||Type: grep space radha space /etc/group|
|08:49||Notice, you can see user radha is the member of groups music underscore club and sports underscore club|
|08:58||But not as a member of the primary group that is cse.|
|09:03||So the group file will list only the supplementary groups in which the user is associated.|
|09:10||Check the /etc/passwd file for the details of the username radha.|
|09:17||Type grep space radha space /etc/passwd|
|09:25||Notice, the fourth field is 1002|
|09:29||It is the GID for the group cse.|
|09:33||It is the primary group for radha.|
|09:36||So, remember /etc/passwd shows primary group ID for a user|
|09:43||/etc/group file shows list of usernames who have the group as a supplementary group|
|09:51||Command id space username shows the details of both primary and supplementary groups|
|09:59||You can also specify the group id instead of group’s name while creating the user.|
|10:05||Let us create a user suraj and assign him to the group cse using the gid.|
|10:12||We know group cse has GID 1002|
|10:17||So type: adduser space hyphen gid space 1002 space suraj|
|10:26||You should use hyphen gid option to specify the group ID.|
|10:32||Use pass underscore suraj as the password|
|10:37||Retype the password
Full Name as Suraj with S in capital letter.
|10:45||Proceed as we have done for the previous users.|
|10:49||We have successfully created user suraj with primary group cse.|
|10:55||To exit from the root user access, type exit|
|11:00|| This brings us to the end of this tutorial.
Let us summarize.
|11:05|| In this tutorial we learnt about-
Creating primary group
|11:10||Assigning user to the primary group|
|11:13||Assigning user to the supplementary group /etc/group file|
|11:19||Assigning groups to users at the time of account creation|
|11:24||As an assignment- Create two groups: cultural , literature|
|11:30||Now create a user ajay with Home directory as /home/ajay underscore dir|
|11:39||User id as 1090|
|11:42||Primary group as cultural|
|11:45||Supplementary group as literature|
|11:49||Add comments "Native: Mumbai"|
|11:52||Use the command id to check the user details|
|11:56||Check the details of user ajay in /etc/passwd and /etc/group files|
|12:05|| The video at the following link summarises the Spoken Tutorial project.
Please download and watch it.
|12:13|| The Spoken Tutorial Project team conducts workshops and gives certificates.
For more details, please write to us.
|12:23||Please post your timed queries in this forum.|
|12:27||Spoken Tutorial Project is funded by NMEICT, MHRD, Government of India.|
|12:33|| The script has been contributed by Antara and this is Praveen from IIT Bombay signing off.
Thank you for joining.