linux是一个多用户、多任务的分时操作系统。windows是一个单用户操作系统。
linux系统中的用户类型
1.root(超级管理员):uid(用户ID)=0 权限大于Windows中的Administrator
2. 系统用户(伪用户):uid 1-999 (部分系统1-499),对于sshd、ftp这些用户是不允许登录;
3.普通用户——用户手动创建用户:uid 大于等于1000,有的系统大于等于500
groupadd 命令
没有参数 :系统分配组ID,从1000开始递增
-g:指定ID,id最好不要小于1000
组的作用:简化管理或者方便管理
组文件(/etc/group)
第一列:组名
第二列:密码占位符
第三列:组ID
第四列:组内成员列表
useradd命令
没有参数:会在/home中以用户名创建一个目录,以用户名为名创建一个组
-d:指定用户的主目录,用户默认创建主目录为/home/username(部分系统不会自动创建用户的主目录)
-s:指定用户的shell
#shell是程序和内核沟通的桥梁,可以使用cat/etc/shells查看系统支持的shell类型
-g:指定用户所属的基本组
-G:指定用户所属的附加组
gpadd命令
-a:添加用户
-d:删除用户
su命令 切换用户
从普通用户切换到高级用户需要输入命令,普通用户没有重启和关机的权限
userdel命令
没有参数:删除用户,但不会删除用户的主目录
-r:删除用户,包括用户的主目录
影响的文件 passwd、group、shadow
usermod命令
-g:修改用户的基本组
-G:修改用户的附加组
#将用户xiaoming修改到aaa组内
groupmod命令
-g:为用户指定新的组标识(修改组ID)
-n:将用户组的名字改为新名字
groupdel命令
无参数:删除指定的组,必须保证组内无用户
密码文件
cat/etc/passwd
#该文加使用冒号(:)将字段分开
#用户名:密码占位符:用户ID:组ID:用户的全名描述:登录目录:登陆的shell
#passwd命令
未指定用户名:修改当前用户
passwd用户:设置或修改指定用户的密码
-S:显示用户状态信息
-l:锁定用户,禁止其登陆
#echo “456” |passwd ——stdin zhangsan #将用户zhangsan的密码改为456
|:管道符
stdin:标准输入
影子文件
cat/etc/shadow
第一列:用户名:用户登陆的用户名
第二列:加密密码:Centos 7默认使用SHA512加密算法
第三列:【!】【*】【x】:密码暂时失效,禁止登陆;
【!!】:空密码,禁止登陆
第四列:密码最少使用期限 0为无期限
第五列:密码最长使用天数 9999为永不过期