A、首先创建hehe用户

[root@Centos01 ~]# useradd -M -s /bin/sh -u 1000 hehe   //创建hehe用户   

用户与组的管理详解

[root@Centos01 ~]# cat /etc/passwd                  //查看hehe信息

用户与组的管理详解

B、创建haha组

 [root@Centos01 ~]# groupadd –g 2000 haha                  //新建haha组

用户与组的管理详解

 [root@Centos01 ~]# cat /etc/group                       //查看haha组信息

用户与组的管理详解
C、将hehe用户加入到haha组

[root@Centos01 ~]# gpasswd -a hehe haha          //把hehe用户加入haha组

用户与组的管理详解

 [root@Centos01 ~]# cat /etc/group                //查看添加成功与否

用户与组的管理详解

用户管理
1.用户信息文件

1)/etc/passwd:用户信息

例:

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

用户名:密码占位符:UID:GID:描述信息:家目录:使用的Shell(常见/bin/bash、/sbin/nologin不允许登录系统,一般用于程序用户)

2)/etc/shadow:用户密码(加密)

例:

root:$6$FHdPVQ1:17211:0:99999:7:::

用户名:
密码信息($开头为密码正常状态,!!开头则当前用户未设置密码, 不允许登陆系统):
上次修改密码的时间(1970-01-01自动统计):
密码最短使用期限(多少天后方可更改密码,0可随时更改密码):
密码最长使用期限(多少天后必须强制更改密码,才可继续使用、99999账户永不过期):
密码提前提醒天数:
账号失效时间(到达时间,账号自动禁用):
未使用

1)新建用户
useradd [] 用户名

选项:

-d:指定新建用户家目录;默认为/home/目录(例:useradd -d /tmp/u01 u01)

-s:指定新建用户shell;默认为/bin/bash(例:useradd -s /sbin/nologin vsftpd)

-u:指定新建用户UID;默认为500-∞(例:useradd -u 10000 u02)

-g:指定新建用户的GID;默认为500-∞(该组必须存在)

-M:指定新建用户不需要家目录;默认为-m效果,新建目录

注:默认新建用户时如不指定新建选项,则执行/etc/login.defs(UID、GID、密码等信息)文件内容、并读取/etc/default/useradd文件(创建用户家目录并拷贝默认文件(/etc/skel))

.bashrc:用户每次登录时,自动执行的文件(一般存放用户);/etc/bashrc:针对所有用户生效

.bash_profile:用户每次登录时,自动执行的文件(一般定义变量或别名);/etc/profile:针对所有用户生效

.bash_logout:用户每次退出登录时,自动执行的文件

2)更改用户
usermod [] 用户名

-d:指定已存在用户的家目录,主要用于迁移家目录(迁移时需手动迁移家目录)

-s:指定已存在用户的Shell

-u:指定已存在用户的UID

-g:指定已存在组的GID

注:所有新建用户,必须设置密码后方可登录

组管理
1.组信息文件
1)/etc/group:组名及组员

    例:

    adm:x:4:adm,daemon

    组名:密码占位符:GID:成员

    2)/etc/gshadow:组的密码及组员

haldaemon:!::haldaemon

组名:当前组未设置密码::成员

GID:组标识ID

0:root组默认值,代表超级管理员组

1-499:程序组(专用于存储程序用户)

500-接近∞:普通用户组(专用于普通用户)

注:新建用户,如不指定组名,则新建与用户同名的组

2.组管理

1)新建组

groupadd [选项] 组名

选项:

-g:指定新建组GID,默认从上一个组+1

2)更改组GID

groupmod [选项] 组名        //更改组

选项:

-g:更改组GID

3)将用户加入指定组

gpasswd [选项] 用户名 组名

选项:

-a:将指定用户加入组

-d:将指定用户从组中移除

-M:批量添加、删除组成员,用于定义成员列

密码管理

1)设置密码

passwd [] 用户名

选项:

-d:清空指定用户密码,可空密码登录

-l:锁定用户,不允许登录

-u:解锁用户,允许用户登录(如用于原为空密码,则需先设置密码或添加-f选项)

注:useradd、userdel、usermod、passwd密码只能root用户或具有管理员权限用户执行(普通用户可直接执行passwd更改当前用户密码)

-x:指定密码最长使用时间,默认永久

-n:指定密码最短使用时间,默认为0,任意时间都可更改密码

chage -E "时间" 用户        //设置账号失效时间

chage -d 0 用户           //强制用户密码过期,用户下次登录时必须强制更改密码

chage -l 用户         //查看账号的密码控制信息(如最短、最长密码使用时间等)

查询账号信息

id [ 用户名 ]              //查询用户的信息;如UID、GID、所属组

groups [ 用户名 ]          //查询用户所属组

finger [ 用户名 ]          //查询用户的详细信息