九,用户和组管理

一,用户配置文件


1.1 用户信息文件


        路径: /etc/passwd
        首先获得该配置文件的帮助信息:

[root@localhost ~]# man 5 passwd


进入配置文件:

[root@localhost ~]# vim /etc/passwd

在这里插入图片描述

  • 第一字段:

        用户名称

  • 第二字段:

        密码标志,但密码存在 /etc/shadow 中,这是因为passwd和shadow的权限不同,只有root用户才能查看shadow文件。

在这里插入图片描述

  • 第三字段:

        UID(用户ID)

  • 0: 超级用户
  • 1-999: 系统用户
  • 1000-65535 普通用户

  • 第四字段:

        GID(用户初始组ID)

  • 初始组:每个用户只有一个初始组,一般就是和这个用户名相同的组名作为这个用户的初始组。(能改但不推荐)
  • 附加组:指用户可以加入多个其他的用户组,并拥有这些组的权限,附加组可以有多个。

  • 第五字段:


        用户说明(备注)

  • 第六字段

        家目录

普通用户:/home/用户名/
超级用户:/root/

  • 第七字段:

        登陆之后的Shell

        Shell是Linux的命令解释器。
        在 /etc/passwd 当中,除了标准Shell是 /bin/bash 之外,还可以写如 /sbin/nologin 。


  1.2 影子文件

 路径:/etc/shadow
 进入配置文件:

[root@localhost /]# vim /etc/shadow

在这里插入图片描述

  • 第一字段:

        用户名

  • 第二字段

        加密密码

        SHA512散列加密算法。
        如果密码位是 “!!” 或 “*” 代表没有密码,不能登陆。

  • 第三字段:

        密码最后修改日期。

        1970年1月1日到修改密码日期的总天数。

  • 第四字段:

        两次密码的修改间隔时间。

  • 第五字段:

        密码有效期(以第三字段为起点)。

  • 第六字段:

        密码修改到期前的警告天数(以第五字段为起点)。

  • 第七字段:

        密码过期后的宽限天数。

        0代表密码过期后立即失效。
        -1表示密码永远不会失效。

  • 第八字段:

        账号失效时间。

        用时间戳表示。

  • 第9字段:

        保留

1.3 组信息文件和组密码文件


组信息文件/etc/group

在这里插入图片描述

  • 第一字段

        组名

  • 第二字段:

        组密码标志

  • 第三字段:

        GID

  • 第四字段:

        组中附加用户

组密码文件/etc/gshadow
 

二,用户管理相关文件

2.1 用户的家目录

        普通用户:/home/用户名/,所有者和所属组都是此用户,权限是700。

        超级用户: /root/,所有者和所属组都是root用户,权限是550。

2.2 用户的邮箱

        路径:/var/spool/mail/

2.3 用户模板目录

        路径:/etc/skel/

新建一个用户,会将**/etc/skel/**中的文件拷贝在该用户的的目录下,可以理解为新建用户时默认产生的文件,例如帮助文档,操作指南等。

三,用户管理命令

3.1 用户添加命令

useradd [选项] 用户名
选项:
	-u UID:			#人为指定用户UID号
	-d 家目录:		  #手工指定用户的家目录
	-c 用户说明:	 #手工指定用户的说明
	-g 组名:		   #手工指定用户的初始组
	-G 组名:		   #指定用户的附加组
	-s Shell:		#手工指定用户的登陆shell。默认是/bin/bash

例如建立一个名叫ceshi的用户

useradd -u 250 -G root,bin -c "test" -d /zhou -s /bin/bash ceshi
用户默认值文件
  • 路径 /etc/default/useradd
GROUP=100		#用户默认组
HOME=/home		#用户家目录
INACTIVE=-1		#密码过期宽限天数(shadow的第7个字段)
EXPIRE=			#密码失效时间(shadow的第8个字段)
SHELL=/bin/bash	#默认shell
SKEL=/etc/skel	#模板目录
CREATE_MAIL_SPOOL=yes	#是否建立邮箱

但这个文件中只定义了shadow文件的第七和第八个字段,其余字段的定义在下面这个文件中。

  • 路径 /etc/login.defs
PASS_MAX_DAYS			#密码有效期(shadow的第5个字段)
PASS_MIN_DAYS			#密码修改间隔(shadow的第4个字段)
PASS_MIN_LEN			#密码的最小位数(现在是PAM生效)
PASS_WARN_AGE			#密码到期警告(shadow的第6个字段)
UID_MIN					#最小和最大UID范围
UID_MAX
ENCRYPT_METHOD SHA512	#密码加密算法是SHA512

3.2 修改用户密码

passwd [选项] 用户名
选项:
	-S		#查询用户密码的密码状态,仅root可用
	-l		#暂时锁定用户(仅root可用)
	-u		#解锁用户(仅root可用)
	--stdin	#可以通过管道符输出的数据作为用户的密码

这里重点说一下最后一个选项的使用:

echo"456"|passwd --stdin 用户名

这句命令的意思是默认将456这个字符串作为该用户的密码,这种方法在创建多个用户时比较有效。

3.3 修改用户信息

usermod [选项] 用户名
选项:
	-u UID			#修改用户的UID号
	-c "用户说明"	  #修改用户的说明信息
    -G 组名			#修改用户的附加组
    -L					#临时锁定用户(Lock)
    -U					#解锁用户锁定(Unlock)

3.4修改用户密码状态

其实用vim直接修改shadow文件更好。

chage [选项] 用户名
选项:
	-l			#列出用户的详细密码状态
	-d 日期:	  #修改密码最后一次更改日期(shadow第3字段),天数设为0就可以使用户登陆就要修改密码
	-m 天数:	  #两次密码修改间隔(第4字段)
	-M 天数:	  #密码有效期(第5字段)
	-W 天数:	  #密码过期前警告天数(第6字段)
	-I 天数:	  #密码过后宽限天数(第7字段)
	-E 日期:	  #账号失效时间(第8字段)

3.5 删除用户

userdel -r 用户名
选项:
	-r	#连同用户的家目录一起删除

手工删除用户文件:(太麻烦,不建议用)

文件

3.6 用户ID

id 用户名

3.7 切换用户身份

su [选项] 用户名
选项:
	-:			#连带用户的环境变量一起切换(坚决不能省略)
	-c "命令":	  #仅执行一次命令,而不切换用户身份
su - markling

- 号坚决不能省略

四,用户组管理命令

4.1 添加用户组

groupadd [选项] 组名
选项:
	-g GID:			#指定组ID

4.2 修改用户组

groupmod [选项] 组名
选项:
	-g GID:			#修改组ID
	-n 新组名:		  #修改组名

例如将user1改为user2(但不建议修改组名)

groupmod -n user1 user2

4.3 删除用户组

groupdel 组名
  • 如果该组没有初始用户才可进行删除,要想删除,要优先删除初始用户。
  • 如果组里有附加用户,删除组将不影响。

4.4 将用户添加到组或从组删除

gpasswd [选项] 组名
选项:
	-a 用户名:		#把用户加入组
	-d 用户名:		#把用户从组中删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值