目录
查看当前用户登陆的信息,可以使用以下几种方式:
w
who
users
finger
系统如何区别用户的身份:
系统是根据uid号来区别的
范围:
Centos6:
超级管理员:uid=0
程序用户:1-499
普通用户 500+
Centos7:
超级管理员:默认uid=0
普通用户 :1000-60000?不指定 顺序给用户进行交互式登录使用
超级管理员:root, 0
程序用户:1-999??
????????Linux 操作系统中的每一个用户账号都有一个数字形式的身份标记,称为UID号
????????root 用户账号的 UID 号为固定值 0,而程序用户账号的 UID号默认为1~499,500~60000 的 UID 号默认分配给普通用户使用。1-999 预留给系统,叫系统用户,?给人使用的账户是从1000开始。
????????与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID,root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。
? ? ? ? 存放保存用户名称、宿主目录、登录Shell等基本信息,一行对应一个账户
useradd [选项]? 用户名
添加用户:查看是否在passwd和shadow文件中生成信息
选项:
选项 | 说明 |
---|---|
-u | 指定用户的 UID 号,要求该 UID 号码未被其他用户使用。 |
-d | 指定用户的宿主目录位置(当与-M 一起使用时,不生效)。 |
-e | 指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。 |
-g | 指定用户的基本组名(或使用 GID 号)。 |
-G | 指定用户的附加组名(或使用 GID 号)。 |
-M | 不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。 |
-s | 指定用户的登录 Shell /sbin/nologin。 |
例如给用户指定uid号
3.设置用户更改、锁定密码
选项 | 说明 |
---|---|
-d | 清空指定用户的密码,仅使用用户名即可登录系统 |
-l | 锁定用户账户 |
-S | 查看用户账户的状态(是否被锁定) |
-u | 解锁用户账户 |
(1)设置密码 echo “123123” | passwd --stdin lisi
(2)锁定用户 passwd -l zhangsan?
(3)?解锁用户 passwd -u zhangsan
(4)?查看用户状态 passwd -S zhangsan
(5)清楚密码 passwd -d zhangsan?
格式:
userdel? [-r]? ?用户名
格式:
usermod [选项]... 用户名
选项:
选项 | 说明 |
---|---|
-l | 更改用户账号的登录名称 |
-L | 锁定用户账户 |
-u | 修改用户的UID号 |
-U | 解锁用户账户 |
-d | 修改用户的宿主目录位置 |
-e | 修改用户的账户失效时间(YYYY-MM-DD) |
-g | 修改用户的基本组名(或使用GID号) |
-G | 修改用户的附加组名(或使用GID号) |
-s | 指定用户的登录shell |
格式:
groupadd [-g GID] 组账号名
格式:
gpasswd
选项 | 说明 |
---|---|
-a | 添加用户到组 |
-d | 从组删除用户 |
-M | 批量加,指定组成员 |
[root@test1 /]# useradd zhou1 ? ? ? ? ? ? //组内加入新成员
[root@test1 /]# gpasswd -a zhou1 zhou
正在将用户“zhou1”加入到“zhou”组中 用户在前,组在后
[root@test1 /]# gpasswd -d zhou1 zhou
正在将用户“zhou1”从“zhou”组中删除
[root@test1 /]# gpasswd -M zhou1,zhou zhou
[root@test1 /]# grep "^zhou" /etc/group
zhou:x:88:zhou1,zhou
格式:
groupdel? 组账号名
w [选项]? [用户名]
选项 | 说明 |
---|---|
-h | 不显示输出信息的标题 |
-l | 用长格式输出 |
-s | 用短格式输出,不显示登陆时间,JCPU 和 PCPU 时间 |
-V | 显示版本信息 |
?
相比较 w 命令,who 命令只能显示当前登陆的用户信息,但无法知晓每个用户正在执行的命令
who [选项] [file]
需要说明的是,who 命令默认是通过 /var/run/utmp 文件来获取登陆用户信息,但如果通过 file 指定另一个文件,则 who 命令将不再默认读取 /var/run/utmp 文件,而是读取该指定文件来获取信息。
选项 | 说明 |
---|---|
-a | 列出所有信息,相当于所有选项。 |
-b | 列出系统最近启动的时间日期。 |
-l | 列出所有可登陆的终端信息。 |
-m | 仅列出关于当前终端的信息,who -m 命令等同于 who am i 。? |
-q | 列出在本地系统上的用户和用户数的清单 |
-r | 显示当前系统的运行级别。 |
-s | 仅显示名称、线路和时间字段信息,这是 who 命令的默认选项。 |
-u | 显示当前每个用户的用户名、登陆终端、登陆时间、线路活动和进程标识。 |
-T 或-w | 显示 tty 终端的状态,“+”表示对任何人可写,“-”表示仅对 root 用户或所有者可写,“?”表示遇到线路故障。 |
[root@localhost ~]# users
root root
finger? 用户名
查询用户的详细信息
5.id
id? 用户名
查询身份表示
进程的发起者,同文件的属主:则应用文件属主权限
进程的发起者,属于文件属组;则应用文件属组权限
应用文件“其它”权限
选项? -R : 递归
chmod ?[ugoa] ? ?[+ - =] ? ? ? ? ?[rwx] ? ? ?文件或目录
u:所有者(属主) ?g:所有组(属组) o:其他人?? ? a:所有、其他
+:增加 ? -:去除 ? =:设置权限
r:读 ?w:写 ? x:运行权限1. u=rwx,g=rx,o=x
2. o+w?? ??? ??? ??? ??? ?其它用户增加w权限
3. a-x?? ??? ??? ??? ??? ?所有人减去执行权限
选项? -R? 递归
修改属主 ?属组
chown ?属主:属组 ?文件?
chown ?属主 ?文件
chown ? ? :属组 文件?
umask 的值可以用来保留在创建文件权限
实现方式:
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
非特权用户umask默认是 002
root的umask 默认是 022
作用:
????????(1)控制新建的文件或目录的权限
????????(2)默认权限去除umask’的权限为新建文件或者目录的权限