小白成长之路-Linux用户与组管理(一)
文章目录
- 一、用户与组概述
- 1.用户类型
- 2.用户和用户的组的关系
- 3.用户和用户组配置文件
- **/etc/passwd-------存储用户信息**
- /etc/shadow --------保存了用户的密码信息
- /etc/group
- /etc/gshadow -----保存了用户组的密码
- /etc/login.defs---设置密码过期的时间,密码最大长度限制等内容,影响的是新创建的用户密码信息
- /etc/skel目录
- 二、用户管理
- 1.useradd命令
一、用户与组概述
与windows类似,Linux也有用户和用户组的概念。在Linux系统中,每次登录系统都必须以一个用户的身份登录,并且登录后的权限也会根据用户身份来确定。 每一个进程在执行时,也会有其用户,该用户也和进程所能控制的资源有关。**Linux系统下的每一个目录、文件,都会有其属于的用户和用户组,我们称其为属主和属组。**由此可见,用户和用户组与Linux系统的运行息息相关。在实际操作使用系统时,我们往往较多关注用户与用户组。
在Linux系统中,每个用户都有自己的用户ID,称为UID,每个用户组也有自己的用户组ID,称为GID,**UID和GID在Linux系统中是不可重复的。**Linux系统就是通过UID和GID来对用户和组进行管理的,而对于管理员来说,往往会设置用户名和组名,这样使得用户和用户组的使用管理更人性化。
1.用户类型
- root用户**
root用户时UID和GID都等于0的用户,是Linux系统中的“上帝”,拥有最大的权限。如果深入了解Linux系统,会发现root用户真的拥有很多特权,比如:无视Linux对权限的设置而强行读、写、执行文件,切换其他用户登录不需要密码,可以强行切换到已经存在的用户,只有root可以为普通用户修改密码等等。
- 系统用户 (程序用户)
系统用户通常用于运行服务,但是**此用户无家目录,也不能用于登录系统。**例如,在yum安装apache、nginx等服务后,就会自动创建apache和nginx的用户和同名用户组。在CentOS6系统中,系统用户的UID范围是1-499,在CentOS7系统中,系统用户的ID是1-999。
- 普通用户
普通用户只能由root用户创建,该用户拥有家目录,并且可以登录,该用户的权限由root分配。普通用户拥有指定的shell环境。
2.用户和用户的组的关系
在Linux系统中,每个用户必定属于一个主组(基本组),默认情况下属于与其同名的用户组,最多可以有31个附属组,从用户权限的角度看,主组和附属组其实差别不大,用户也会拥有其附属组的组相关权限。
3.用户和用户组配置文件
Linux系统下用户和用户组相关的配置文件主要有以下几个:
/etc/passwd-------存储用户信息
tail -1 /etc/passwd
user10❌1014:1014::/home/user10:/bin/bash
#用户名:密码占位符:用户ID:组ID:用户描述信息:用户家目录:登录shell
/etc/shadow --------保存了用户的密码信息
tail -1 /etc/shadow
user2:!!:19522:0:99999:7:::
#用户名:密码:用户创建时间:密码最短使用期限:密码最长使用期限:密码过期提醒时间:密码过期后的宽容时间:密码过期时间:没用
注意: !! 表示该用户没有设置密码。
! 表示用户密码被锁定,该用户无法登录操作系统
/etc/group
tail -1 /etc/group
nginx❌982:
#组名:占位符:组ID:非基本组的组成员
/etc/gshadow -----保存了用户组的密码
/etc/login.defs—设置密码过期的时间,密码最大长度限制等内容,影响的是新创建的用户密码信息
/etc/skel目录
作用:用户创建时默认文件的模版目录
[root@c2407 skel]# ls -a
. … .bash_logout .bash_profile .bashrc .mozilla
二、用户管理
1.useradd命令
创建一个新用户或更新默认新用户信息
语法:
useradd [选项] 用户名
选项:
案例:
1.指定用户的UID
useradd -u 54321 user1
2.指定用户家目录
useradd -d /user2 user2
3.指定用户的登录shell
useradd -s /sbin/nologin user3
4.创建用户时不创建家目录
useradd -M user4
5.创建程序用户
useradd -M -s /sbin/nologin user5
6.创建用户时指定基本组
useradd -g user5 user6
7.创建用户时指定附加组
useradd -G user5 user7
8.创建用户时,指定用户的失效时间
useradd -e 2024-04-08 user8
#验证:
tail -1 /etc/shadow
user8:!!:19820:0:99999:7::19821: