用户的概述
1.什么是用户
用户是指能够正常登录Windows和Linux系统的人
2.Linux系统的用户和Windows用户有什么区别
本质上都是登录系统,但Linux支持多个用户同时登录,Windows系统中支持建立多个用户,但不支持同一个时刻多个用户同时登录系统,
但Linux系统支持同时登录多个用户登陆之后相互之间操作不受影响
多个普通用户逻辑上分为一个组,一个用户也能隶属于多个组
3.为什么要创建用户
1. 系统上每一个进程(运行的程序),都要用一个特定的用户身份运行
2.通常在公司都是使用普通用户来管理服务器,因为root权限过大,容易造成故障.
每一个文件都有特定的用户拥有,所以在访问一个文件或目录时是由用户所限制的
进程访问的某一个文件或目录是由进程所关联的用户决定的
4.怎么查看系统中所存在的用户
查看当前登录的用户信息
当创建一个新用户以后,系统中/etc/passwd/和etc/shadow/这两个文件会发生变更
6.系统对用户的一个约定?
PS:在centos7之前,UID1-499用于系统用户,而UID500+则用于普通用户
用户相关的命令
用户的创建,变更,删除
useradd,usermod,userdel
用户的创建 useradd
示例1.创建一个新用户,用户名为bgx,uid为5001,基本组为students,附加组为sa,注释信息为2019 newstudent,登录shell为:/bin/bash
在创建用户之前首先要创建组,但由于在此之前我己经创建过students和sa这两个组所以显示already exists
创建完成检查所创建的用户信息
也可以通过grep命令进行详细查看所创建的用户信息
示例2.创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户 无法登陆系统
创建用户
检查用户信息
详细查看用户信息
模拟登陆mysql系统,登陆失败
3.创建一个ltc用户,uid为6666,附加组为sa,用户的家目录为/tmp/ltc登陆的shell为/sbin/nologin
PS:UID和GID在系统中是唯一的
1.使用useradd命令新增用户,adduser命令软链接指向useradd
-u #指定用户的UID
-g #指定用户的GID
-G #指定用户的附加组
-c #指定用户的注释
-s #指定用户的shell
-r #指定该用户的系统用户
-M #不指定该用户的家目录
-d #指定要创建用户家目录
用户的更改usermod
示例1:检查之前创建的ltc用户
修改ltc用户uid 9999、gid (devops),附加组 dba,sa,dsb
修改ltc用户的注释信息, 用户家目录, 登录shell, 登录名
2.usermod
选项:
-u #指定要修改用户的UID
-g #指定要修改用户的基本组
-G #指定要修改用户附加组,使用逗号隔开多个附加组,覆盖原有的附加组
-d #指定要修改用户的家目录
-s #指定要修改用户的bash shell
-c #指定要修改用户的注释信息
-l #指定要修改用户的登录名
-L #指定要锁定的用户
-U #指定要解锁的用户
PS:还有很多命令可以查看用户的信息,
删除用户userdel
3.userdel命令删除账户
选项 -r 删除用户时同时删除它的家目录和mail spool
1.删除userl用户时,不能删除用户的家目录和mail spool
2.-r 参数可以连通用户家目录一起删除
PS:
1.使用finger命令查询用户以及登录信息
2.使用chfn命令修改用户信息
3使用chsh命令修改用户登录Bash Shell,
4.使用who,whoami,w 检查用户登录情况
示例1:who
示例2:whoami 查看当前登录系统的用户
示例3:w
17:47:49 #当前系统的时间
up 7:47 #当前系统运行了多久
1 user #当前登录系统的用户数
load average: 0.00, 0.01, 0.05 #当前系统的负载状态,平均1分钟 5分钟 15分钟
JCPU #与该终端连接后产生的进程所占用的时间,不包括登录系统前后台的进程时间
PCPU #当前进程所占用的时间