Linux之用户管理
1、在Linux中用户是有用户和用户组的概念的。用户隶属于用户组
2、用户和用户组配置文件
①、/etc/group 用户组配置文件
在这个文件中,有很多行,每一行表示系统中的一个用户组
每一行共分四列(以下是以上图中 第1行 root:x:0:root 来介绍每一列的含义 )
第1列(root):用户组组名
第2列(x): 组密码 其实真正的用户组的组密码存储在/etc/gshadow文件中了
第3列(0): 用户组组ID 用户组的唯一标识
0:超级用户的组
1-499 :系统用户组
500以后:用户自定义组
第4列(root): 组成员
②、/etc/gshadow 用户组密码配置文件
第1列:组名
第2列:组密码
第3列:组管理员
第4列:组成员
③、/etc/passwd 用户配置文件
第1列:用户名
第2列:用户密码, 这里仅有一个"x",真正的密码存储在/etc/gpasswd文件中
第3列:用户ID 0:超级用户root 1-499:系统用户 500以后:自定义用户
第4列:所属组组ID
第5列:备注信息
第6列:用户的主目录(家) 当用户登录到系统时就是登录在它的家中
第7列:shell类型
④、/etc/shadow 用户密码配置文件
第1列:用户名
第2列:用户密码(密码是加密后的密码),我们经常会看到有的第2列是两个感叹号,在Linux操作系统中 两个感叹号表示当前用户是没有密码的,没有密码的用户是不允许登录操作系统的。
3、用户组管理(命令)
①、添加用户组命令:
groupadd 组名 添加用户组
-g: 添加组时指定组ID
添加用户组以后可以查看用户组的配置文件中查看添加的用户组信息是否成功 即:vi /etc/group
②、修改用户组命令:
groupmod 组名 修改用户组信息
-n: 修改组名
-g: 修改组ID
注意:groupmod -n zyl5 zyl3 是将zyl3的组名修改成为zyl5 zyl5是修改后的组名,zyl3是要修改的组名。
将zyl5这个用户组的组ID更改成为777
③、删除用户组命令:
groupdel 组名 删除用户组
注意:如果一个用户组下有用户,是不能删除这个组的,必须先将用户组下的用户删除掉才可以删除这个用户组
4、用户管理(命令)
①、添加用户命令:
useradd [选项] 用户名 添加用户
注意:添加用户时,如果不指定组,那么,系统会创建一个与用户同名的组,再将用户放入组中
-g group_name:添加用户指定所属组
-d home:添加用户时指定主目录
给zyl这个用户组添加一个user3的用户
给zyl这个用户组添加一个user5用户 并且指定user5的家(主目录)为 /home/user6这个目录
②、删除用户命令:
userdel [参数] 用户名
-r
注意:userdel user3会删除user3这个用户 但是user3用户的主目录不会删除,userdel -r user5表示既能将user5用户删除,同时也会将user5用户的主目录一起删除。
③、修改用户命令:
usermod [选项] 用户名
-c comment :修改备注信息
-l login_name :修改用户名
-d home_dir :修改用户主目录
-g group_name :修改用户的所属组
注:给user1添加备注信息为"testcomment",再次注意,usermod -l user8 user1 是将user1的用户名修改成为user8 user8是修改后的名字,user1是要修改的名字,千万注意不要写反了。
5、密码管理(命令)
passwd [选项] 用户
-S: 查看用户密码状态
-l: 锁定用户的密码(禁止登录)
-u: 解除用户密码的锁定
-d: 删除用户密码
①、设置用户密码命令:
②、密码其它命令示例:
6、禁止账号登录(命令)
①、禁止某个账号登录
修改用户密码配置文件 /etc/shadow
我们发现其实就是在用户密码前面加了两个!!,我们可以在手动来修改配置文件,为了以防万一,建议还是使用命令来禁止账号登录。即:passwd -l user8
②、禁止所有账号登录
创建/etc/nologin 文件
只要在/etc/下创建nologin文件,那么所有帐号就不允许登录(root用户除外)