首先,来看如何在linux中添加一个新的用户
复制代码代码如下:
#useradd user1(username)
[root@localhost ~]# [root@localhost ~]# useradd user1 [root@localhost ~]# id user1 uid=500(user1) gid=500(user1) groups=500(user1) [root@localhost ~]# User1这个用户就创建成功了,用useradd命令会自动的在/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow。这四个文件中添加条目。创建用户的主目录。设定用户的权限和拥有者。 使用passwd命令来设置用户的密码
复制代码代码如下:
#passwd user1(username)
[root@localhost ~]# [root@localhost ~]# passwd user1 Changing password for user user1. New UNIX password: BAD PASSWORD: it is based on a dictionary word Retype new UNIX password: passwd: all authentication tokens updated successfully. [root@localhost ~]# 密码设置成功。 接下来,我们来看如何在linux中删除一个用户
可以手动的在/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow。这个四个文件中去手动删除用户信息。
复制代码代码如下:
#userdel -r user1(username)
-r 删除用户的home目录 [root@localhost ~]# [root@localhost ~]# userdel -r user1 [root@localhost ~]# [root@localhost ~]# id user1 id: user1: No such user [root@localhost ~]# 这样,user1这个用户就被删除了。 关于用户的私有组和附加组的概念 在linux系统中,我们组分为两种,一种是私有组,一种是附加组。我们知道当利用useradd这条命令去创建一个用户的时候,系统将默认的去创建一个与之同名的组。这个组就叫做用户的私有组。
复制代码代码如下:
[root@localhost ~]#
[root@localhost ~]# su - user1 [user1@localhost ~]$ [user1@localhost ~]$ touch abc.txt [user1@localhost ~]$ ll total 0 -rw-rw-r-- 1 user1 user1 0 Mar 2 14:58 abc.txt [user1@localhost ~]$
当我们使用user1的身份去创建一个文件,这个文件的拥有组就是用户的私有组。 如何去修改用户的信息
我们可以直接修改/etc/passwd这个文件。 1.修改用户的描述
复制代码代码如下:
#usermod -c “test account” user1
[root@localhost ~]# [root@localhost ~]# usermod -c "test account" user1 [root@localhost ~]# [root@localhost ~]# cat /etc/passwd | grep user1 user1:x:500:500:test account:/home/user1:/bin/bash [root@localhost ~]# 可以看到,这个用户就多了一个描述。
2.修改用户的home目录
复制代码代码如下:
#useradd –d /home/guests/user2 user2
[root@localhost ~]# [root@localhost ~]# cd /home/ [root@localhost home]# mkdir guests [root@localhost home]# ls guests user1 [root@localhost home]# useradd -d /home/guests/user2 user2 [root@localhost home]# su - user2 [user2@localhost ~]$ pwd /home/guests/user2 [user2@localhost ~]$ OK,在创建用户时候指定用户的home目录是没有问题的。 现在在来看看使用usermod命令来调整用户的信息。
复制代码代码如下:
#usermod -d /home/guests/user1 user1
[root@localhost home]# [root@localhost home]# ls guests user1 [root@localhost home]# usermod -d /home/guests/user1/ user1 [root@localhost home]# [root@localhost home]# su - user1 su: warning: cannot change directory to /home/guests/user1/: No such file or directory -bash-3.2$ pwd /home -bash-3.2$ 使用user1登录的时候,用户的/home目录和环境变量都不正确。 我们知道,在guests这目录下面其实是没有user1 user2这两个目录的。但是在创建用户的时候指定home目录,系统是可以自动生成这个用户的/home目录的。但是用户usermod命令是不会自动生成的,我们必须在/home目录下面创建一个user2的目录。然后改变权限,在去复制环境变量过来。这样user2登录的时候才会正常登录。
复制代码代码如下:
[root@localhost ~]# cd /home/guests/
[root@localhost guests]# ll total 4 drwx------ 3 user2 user2 4096 Mar 2 15:25 user2 [root@localhost guests]# mkdir user1 [root@localhost guests]# ll total 8 drwxr-xr-x 2 root root 4096 Mar 2 15:28 user1 drwx------ 3 user2 user2 4096 Mar 2 15:25 user2 [root@localhost guests]# chown user1:user1 user1 [root@localhost guests]# chmod 700 user1/ [root@localhost guests]# ll total 8 drwx------ 2 user1 user1 4096 Mar 2 15:28 user1 drwx------ 3 user2 user2 4096 Mar 2 15:25 user2 [root@localhost guests]# su - user1 -bash-3.2$ cp /etc/skel/.* . cp: omitting directory `/etc/skel/.' cp: omitting directory `/etc/skel/..' cp: omitting directory `/etc/skel/.mozilla' -bash-3.2$ exit [root@localhost guests]# su - user1 [user1@localhost ~]$
现在user1的home目录和环境变量就正常了。 3.修改用户的私有组
复制代码代码如下:
#chmod -g user1 user2
[root@localhost ~]# usermod -g user1 user2 [root@localhost ~]# [root@localhost ~]# id user2 uid=501(user2) gid=500(user1) groups=500(user1) [root@localhost ~]# 将user2的私有组变成user1。 4.修改用户的附加组
复制代码代码如下:
#chmod -G user2 user3
[root@localhost ~]# [root@localhost ~]# usermod -G user2 user3 [root@localhost ~]# [root@localhost ~]# id user3 uid=502(user3) gid=502(user3) groups=502(user3),501(user2) [root@localhost ~]#
可以看到,user3的附加组就变成了user2。
复制代码代码如下:
# usermod -a -G user4 user3
[root@localhost ~]# [root@localhost ~]# usermod -a -G user4 user3 [root@localhost ~]# [root@localhost ~]# id user3 uid=502(user3) gid=502(user3) groups=502(user3),501(user2),503(user4) [root@localhost ~]# 可以看到,user3现在就有两个附加组了。 5.修改用户的登录名
复制代码代码如下:
#usermod -l students user1
[root@localhost ~]# [root@localhost ~]# usermod -l students user1 [root@localhost ~]# [root@localhost ~]# su - students [students@localhost ~]$ 可以看到,user1的登录名就变成了students。 6.修改用户的shell
复制代码代码如下:
#usermod -s /sbin/nologin user1
[root@localhost ~]# [root@localhost ~]# usermod -s /sbin/nologin user2 [root@localhost ~]# su - user2 This account is currently not available. [root@localhost ~]# User2的登录shell变成/sbin/nologin以后,用户就不可以登陆计算机,只可以登陆服务了。 7.锁定用户
复制代码代码如下:
#usermod -L user3
[root@localhost ~]# [root@localhost ~]# usermod -L user3 [root@localhost ~]# cat /etc/shadow | grep user3 user3:!$1$coBU9WM5$r0Qmp12kA15KLD5Dte9De0:14670:0:99999:7::: [root@localhost ~]# su - user4 [user4@localhost ~]$ su - user3 Password: su: incorrect password [user4@localhost ~]$ 可以看到,当我们锁定用户的时候,系统会自动的在/etc/shadow文件里面的密码位前面添加一个感叹号,就代表这个用户被锁定了。当然我们也可以手动添加。我们的user3的确是不能登录的。 8.解锁用户
复制代码代码如下:
#usermod -U user3
[root@localhost ~]# [root@localhost ~]# usermod -U user3 [root@localhost ~]# [root@localhost ~]# cat /etc/shadow | grep user3 user3:$1$coBU9WM5$r0Qmp12kA15KLD5Dte9De0:14670:0:99999:7::: [root@localhost ~]# su - user4 [user4@localhost ~]$ su - user3 Password: [user3@localhost ~]$ 解锁后,user3登录成功了。 关于用户密码的时效策略
默认情况下,用户的密码永不过期。 查看用户密码的时效策略
复制代码代码如下:
#chage -l user1(username)
[root@localhost ~]# [root@localhost ~]# chage -l user1 Last password change : Mar 02, 2010 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change :0 Maximum number of days between password change : 99999 Number of days of warning before password expires :7 [root@localhost ~]# 这条命令可以查看用户密码的策略。
如何修改用户密码的策略,
复制代码代码如下:
#chage user1
[root@localhost ~]# [root@localhost ~]# chage user1 Changing the aging information for user1 Enter the new value, or press ENTER for the default Minimum Password Age [0]: Maximum Password Age [99999]: Last Password Change (YYYY-MM-DD) [2010-03-02]: Password Expiration Warning [7]: Password Inactive [-1]: Account Expiration Date (YYYY-MM-DD) [1969-12-31]: [root@localhost ~]# 它会以交互式的方式来修改用户的密码时效。
从上到下,依次解释: 关于组的管理
在组里面添加用户, 至此,关于linux下用户管理的相关内容就介绍完了,希望对大家有所帮助。 (责任编辑:IT) |