Linux 用户管理

一、简述

在任何系统中,只要能正常登录系统的都算是系统中的用户。因为管理员的权限太大,容易造成不可逆的操作,所以我们系统上每一个进程都需要一个特定的用户来运行。

二、用户相关系统文件

/etc/passwd

~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash

root

x00root/root/bin/bash
用户名称密码占位符用户UID用户GID注释信息家目录登录Shell

/etc/shadow

~]# tail -1 /etc/shadow
zy:!!:19745:15:9999:3:1:19775:
第一列:用户名称
第二列:加密后的密码
第三列:最后一次变更密码的时间。从1970年到现在的天数。
第四列:密码最少保留的天数
第五列:密码有效期
第六列:修改密码到期前的警告天数
第七列:修改密码过期后的宽限天数
第八列:修改账号失效日期,从1970年到现在的天数。
第九列:保留字段。

如何更改用户密码属性?

#语法
chage [用户名称] [参数]

#参数说明:
-l:列出用户的详细密码状态。
-d:修改指定用户密码信息的第3个字段,也就是最后一次修改密码的日期。
-m:修改密码最短保留的天数,也就是第4个字段。
-M:修改密码的有效期,也就是第5个字段。
-W:修改密码到期前的警告天数,也就是第6个字段。
-i:修改密码过期后的宽限天数,也就是第7个字段。
-E:修改账号失效日期,也就是第8个字段。

#例
~]# chage test -E 19775

三、用户UID的含义

用户UID系统中的含义
0超级系统管理员,拥有系统最高权限
1-200系统用户,用来运行系统自带的进程
201-999系统用户,用来运行用户安装的程序进程,此类用户无需登录系统
1000+普通用户,可以正常登录系统的用户,权限比较小

四、用户相关指令

1.创建用户及用户组

#语法
用户:useradd [用户名称] [参数]

#参数
-u    指定要创建用户的UID,唯一。
-g    指定要创建用户的默认分组,(基本组,主要的组)
-G    指定要创建用户的附加组,逗号隔开可添加多个附加组
-d    指定要创建用户的家目录
-s    指定要创建用户的shell(/bin/bash & /sbin/nologin)
-c    指定要创建用户的注释信息。
-M    给创建的用户不创建家目录
-r    创建系统用户,默认无家目录

#例
##创建 csdn 用户,UID:2001,基本用户组:C,附加组:S,注释信息:2024,shell:/bin/bash,不创建家目录
~]# groupadd C
~]# groupadd S
~]# useradd csdn -u 2001 -g C -G S -c 2024 -s /bin/bash -M
~]# id csdn
uid=2001(csdn) gid=1000(C) groups=1000(C),1001(S)

 2.修改用户

#语法
usermod [用户名称] [参数]

#参数
-u   指定要修改用户的UID
-g   指定要修改用户的基本组
-G   指定要修改用户的附加组,使用逗号隔开多个附加组,覆盖原有的附加组。(-aG  追加一个附加组)
-d   指定要修改用户的家目录。(-md  把原有家目录一起带到要修改的家目录)
-s   指定要修改用户的bash shell
-c   指定要修改用户的注释信息
-l   指定要修改用户的登录名

3.删除用户

#语法
userdel [用户名称] [参数]

#参数
-r   清空用户的家目录以及邮件

五、用户密码

1.为用户添加密码

交互式设定密码:passwd  加用户名
非交互式设定密码: echo  “初始密码”  | passwd  --stdin  用户名

交互式shell:等待用户输入执行指令,有提示

非交互式shell:不需要等待用户输入执行指令,没有提示shell执行结束会自动退出

登录式shell:需要输入用户名和密码才可以进入shell

非登录式shell:不需要输入用户名和密码就可以进入shell,比如运行bash会开启一个新的会话窗口

2.设置复杂的密码

#系统自带方式
echo $RANDOM :(随机生成字符串)
echo $RANDOM | md5sum (随机生成复杂数字串)

#使用工具mkpasswd
##安装
yum install -y expect

#用法
mkpasswd参数:-l(字符数)-d(几个数字)-c(几个小写字母)-C(几个 )-s(几个特殊符号)

六、用户组相关指令

1.创建用户组

#语法
groupadd [用户组名称] [参数]

#参数
-g      指定用户组的GID
-r      创建一个系统组

2.修改用户组

#语法
groupmod [用户组名称] [参数]

#参数
-g      指定用户组的GID
-n      用户组名称

3.删除用户组

#语法
groupdel [用户组名称] [参数]

#参数
-r      删除用户组所有信息
  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值