Linux账号和权限管理

目录

一、用户账号和组账号概述

1、用户账号类型

2、组账号

1.基本组(私有组)

2.附加组(公共组)

3、ID

1.UID

2.GID

4、用户和账号管理

1.文件位置

2.useradd-----创建用户

3.userdel——删除用户账号

4.usermod---修改用户账号的属性

5、建立用户组

1.groupadd----添加组

2.gpasswd-----添加添加、设置、删除组成员

3.groupdel-----删除组账号

4.查询账户信息

 1.w--查询已登录到主机的用户信息

2.who

3.users

4.finger

二、 文件/目录的权限和归属

1、程序访问文件时的权限,取决于此程序的发起者

2、访问人群分为了三类

3、权限分为三种

1.对 文件的权限

2.对目录的权限

4、chmod--设置文件和目录的权限

5、chown--设置文件和目录的归属

6、umask---权限掩码


一、用户账号和组账号概述

1、用户账号类型

  • 普通用户:权限受到限制的用户
  • 超级管理员:拥有至高无上的权限
  • 程序用户:不是给人使用的,是给程序使用的,不允许登录

查看当前用户登陆的信息,可以使用以下几种方式:

w

who

users

finger

系统如何区别用户的身份:

系统是根据uid号来区别的

范围:

Centos6:

超级管理员:uid=0

程序用户:1-499

普通用户 500+

Centos7:

超级管理员:默认uid=0

普通用户 :1000-60000 不指定 顺序给用户进行交互式登录使用

超级管理员:root, 0

程序用户:1-999  

2、组账号

1.基本组(私有组)

  • 建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默认只容纳了一个用户。
  • 在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定。
  • 等于主职位,有且唯一。

2.附加组(公共组)

  • 除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定。
  • 等于兼职位,可有可无,可以有多个。

3、ID

1.UID

        Linux 操作系统中的每一个用户账号都有一个数字形式的身份标记,称为UID号

        root 用户账号的 UID 号为固定值 0,而程序用户账号的 UID号默认为1~499,500~60000 的 UID 号默认分配给普通用户使用。1-999 预留给系统,叫系统用户, 给人使用的账户是从1000开始。

2.GID

        与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID,root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。

4、用户和账号管理

1.文件位置

  • /etc/passwd

        存放保存用户名称、宿主目录、登录Shell等基本信息,一行对应一个账户

Linux账号和权限管理_第1张图片

  • /etc/shadow          存放保存密码,一行对应一个密码

Linux账号和权限管理_第2张图片

2.useradd-----创建用户

  • 基本格式

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

Linux账号和权限管理_第3张图片

(4) 查看用户状态 passwd -S zhangsan

(5)清楚密码 passwd -d zhangsan 

3.userdel——删除用户账号

格式:

userdel  [-r]   用户名

  • 添加-r选项时,表示用户的宿主目录一并删除
  • 如果不加-r选项,删除之后在创建用户时会报错

Linux账号和权限管理_第4张图片

  • userdel 直接删除用户不加参数,然后再重新创建出相同的用户 

Linux账号和权限管理_第5张图片

4.usermod---修改用户账号的属性

格式:

usermod [选项]... 用户名

选项:

选项 说明
-l 更改用户账号的登录名称
-L 锁定用户账户
-u 修改用户的UID号
-U 解锁用户账户
-d 修改用户的宿主目录位置
-e 修改用户的账户失效时间(YYYY-MM-DD)
-g 修改用户的基本组名(或使用GID号)
-G 修改用户的附加组名(或使用GID号)
-s 指定用户的登录shell

Linux账号和权限管理_第6张图片

5、建立用户组

1.groupadd----添加组

格式:

groupadd [-g GID] 组账号名

2.gpasswd-----添加添加、设置、删除组成员

格式:

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

3.groupdel-----删除组账号

格式:

groupdel  组账号名

Linux账号和权限管理_第7张图片

4.查询账户信息

 1.w--查询已登录到主机的用户信息

w [选项]  [用户名]

选项 说明
-h 不显示输出信息的标题
-l 用长格式输出
-s 用短格式输出,不显示登陆时间,JCPU 和 PCPU 时间
-V 显示版本信息

 Linux账号和权限管理_第8张图片

2.who

相比较 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 用户或所有者可写,“?”表示遇到线路故障。
3.users

[root@localhost ~]# users
root root

4.finger

finger  用户名

查询用户的详细信息

Linux账号和权限管理_第9张图片

5.id

id  用户名

查询身份表示

二、 文件/目录的权限和归属

1、程序访问文件时的权限,取决于此程序的发起者

  • 进程的发起者,同文件的属主:则应用文件属主权限

  • 进程的发起者,属于文件属组;则应用文件属组权限

  • 应用文件“其它”权限

2、访问人群分为了三类

  • 所属住(u)
  • 所属组(g)
  • 其他人(o)

3、权限分为三种

Linux账号和权限管理_第10张图片

1.对 文件的权限

  • 读(r,4)
  • 写(w,2)
  • 执行(x,1 程序,脚本)

2.对目录的权限

  • r 可以使用ls查看此目录中文件列表
  • w 可在此目录中创建文件,也可删除此目录中的文件,而和此被删除的文件的权限无关
  • x 可以cd进入此目录,可以使用ls -l查看此目录中文件元数据(须配合r权限),属于目录的可访问的最小权限

4、chmod--设置文件和目录的权限

选项  -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                    所有人减去执行权限

5、chown--设置文件和目录的归属

选项  -R  递归

修改属主  属组
chown  属主:属组  文件 
chown  属主  文件
chown     :属组 文件 

6、umask---权限掩码

umask 的值可以用来保留在创建文件权限

实现方式:

新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变

新建目录的默认权限: 777-umask

非特权用户umask默认是 002

root的umask 默认是 022

作用:

        (1)控制新建的文件或目录的权限

        (2)默认权限去除umask’的权限为新建文件或者目录的权限

你可能感兴趣的:(Linux基础篇,github,linux)