System administrations User managements -1
In Linux user and group management is done by these for important files.
Linux files responsible for User managements
/etc/shadow store all the Linux password in MD5 encryptions format
/etc/passwd store all user related information's
/etc/group store all group related information's
back-up files responsible for User managements
In this assignment we will modify these files. So it's better to take back-up before doing this assignment because your little mistake can crash Linux systems.
#mkdir /backup #cp /etc/passwd /backup #cp /etc/group /backup #cp /etc/shadow /backup
Create a simple user
useradd is used to create user. Several options are used with useradd command but you will learn about then in our next assignments. In this assignment your task is to learn what exactly happens in these files when a new user is added. First observe the last line for these files.
#cat /etc/passwd |more #cat /etc/shadow |more #cat /etc/group |more
Now add a simple user.
#useradd vinita #passwd vinita
Now read these files again with cat command alternate you can use |grep switch to filter the output
#cat /etc/passwd |grep vinita #cat /etc/shadow |grep vinita #cat /etc/group |grep vinita # cd /home #ls –ld vinita
User's entry in passwd
All these files are changed when a user is created In passwd files entries are in following formats separated by :
vinita users login name
x password required to login
503 unique user id
504 unique group id
/home/vinita users home directory
/bin/bash user shell
In shadow files entry is straight forwards. Whatever showing beside the user name is the password of user vinita in MD5 encrypt format.
User's entry in group
Whenever you create a normal user, users primary group form same name is automatically created. As you can verify by looking in /etc/group. 504 is the unique group id.
User's home directory
Same as group, users home directory is also created in /home partition and user get the ownership of this directory.
How to create a user without password.
To create a user without password use –d switch .
#useradd nikki #passwd -d nikki
How to create a group.
To create group use groupadd commands. Group created by this command is called secondary group.
#groupadd test #cat /etc/group |grep test
How to add user in groups
To add user in this group use usermod commands
#usermod –G test vinita
This command will make vinita user to member of test group.
How to delete secondary group
You can delete a group by groupdel commands
#groupdel test #cat /etc/group |grep test
You cannot delete users primary group until user exist for example
#groupdel nikki
How to delete User
userdel command is used to delete user. When a users is deleted user’s primary group will automatically be deleted.
#userdel nikki #groupdel nikki groupdel: group nikki does not exist.
Whenever you delete user with userdel command. entry of user will be removed from these files. But users home folder and mail folder will not be deleted. As you can see in image. If you want completely remove user including his home folder and mail folder use –r switch with userdel commands.
System administrations User managements -2
To add a new user, use the useradd command. The basic syntax is
# useradd [username]
The username is the only information required to add a new user; however, for exam prospective you should know some additional command-line arguments for useradd. The useradd command creates the account, butthe account is locked.
To unlock the account and create a password for the user, use the command passwd [username]. By default, the user's home directory is created and the files from /etc/skel/ are copied into it.
The two exceptions are if the –M option is used or if the home directory already exists.
Create a user with additional command-line arguments.In this example you are going to assign home directory on other locations so first create it and same as create first desired user's secondary group.
#mkdir /test #groupadd example #useradd –u 700 –d /test/user1 –g example –c “testing user” –s /bin/sh –m user1 #passwd user1
-c [fullname] Full name of the user (or a comment about the user).
If more than one word is needed, place quotation marks
around the value.
-d [directory] Home directory for the user. The default value is /home/[username]/.
-g [group] Default group for the user specified as a group name or group ID
number. The group name or GID must already exist. The default is
to create a private user group. If a private user group is not
created, the default is the users group.
-m Create a home directory for the user if it doesn't exist. Files from
/etc/skel/ are copied into the home directory.
-s [shell] Specify the user login shell for the user. The default shell if not
specified is /bin/bash.
-u [uid] Integer to use for the user ID. Must be unique unless -o is used.
Values less than 500 are reserved for system users.
-M Do not create a home directory for the user. By default, a home
directory is created unless this option is used or unless the
directory already exists.
Now login form this user. And check where did this user logged in and why its shell prompt is looking different.
$pwd /test/user1
By default user gets bash sell prompts. But we modified this by –s switch and given user to /bin/sh shell. Now change user shell again
#usermod –s /bin/bash user1
Verify by login again from user1
How to manage bulk users
Consider a situation where you need to create more then thousand user. It will be really tedious task if you will do it by simple useradd commands. Here you have to switch to Linux shell scripts.
loop for creating user
# for USER in _ _ _ _ _ _ _ _ _ _ _ > do >useradd $USER >echo _ _ _ _ |passwd --stdin $USER >done
No comments:
Post a Comment