3A

  • Authentication : 认证 验证用户身份
  • Authorization : 授权 不同用户设置不同权限
  • Accouting | Audition : 审计

Linux

验证用户身份

UID User ID

  • 管理员 root UID=0
  • 普通用户
    • 系统用户 UID 1-999 不需要登陆,给程序用的
    • 自定义用户 UID 1000+ 可以登录

GID Group ID

创建用户时会自动创建同名的用户组

  • 管理员组 root GID=0
  • 普通用户组
    • 系统用户组
    • 自定义用户组

用户和组的关系

  • 主要组 用户必须有且只有一个主要组
  • 附加组 用户可以加入多个附加组,可以有也可以没有

一个程序访问一个文件,需要看运行程序的用户身份来决定是否可以访问该文件。

用户的UID可以修改

修改/etc/passwd 中相关内容,可以更改用户UID

思考:在Liunx系统中UID可以重复么?例如,可以将user1的UID更改为0么?

根据规定,普通用户的uid必须大于499且不能和已存在的uid重复。

但是我们通过看useradd 选项可以发现

  -o, --non-unique              允许使用重复的 UID 创建用户

也就是说,系统中允许uid重复的用户,类似于硬链接的形式。

在某些特 定目的下,系统中可以存在多个拥有不同注册名、但UID相同的用户,事实上,这些使用不同注册名的用户实际上是同一个用户。

[21:03:34 root@C8-3-55 ~]#tail -2 /etc/passwd
pipewire:x:989:985:PipeWire System Daemon:/var/run/pipewire:/sbin/nologin
user1:x:8892:8892::/home/user1:/bin/bash
[21:03:45 root@C8-3-55 ~]#useradd -o user2 -u 8892 -g 8892
[21:04:27 root@C8-3-55 ~]#tail -2 /etc/passwd
user1:x:8892:8892::/home/user1:/bin/bash
user2:x:8892:8892::/home/user2:/bin/bash

通过实验,我们可以看到使用-o参数,我们创建了两个uid同样为8892的用户uesr1和user2,但家目录却不相同。


我们知道,不同用户是不可以进入其他用户的home目录中的,但具有相同UID的不同用户,却可以进入对方的目录。

[21:05:56 root@C8-3-55 ~]#su user1
[21:06:29 user2@C8-3-55 root]$pwd
/root
[21:06:34 user2@C8-3-55 root]$cd
[21:06:39 user2@C8-3-55 ~]$pwd
/home/user1
[21:06:41 user2@C8-3-55 ~]$cd ~user2
[21:06:52 user2@C8-3-55 user2]$pwd
/home/user2

你懂了么?

最新文章

  1. 【MongoDB初识】-增删改
  2. BZOJ 1834 【ZJOI2010】 network 网络扩容
  3. 手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单
  4. 第四十课:CSS3 transition详解
  5. HDU4966 GGS-DDU(最小树形图)
  6. ngnix 配置
  7. swap函數 进阶探讨与实现
  8. Duanxx的Design abroad: C++矩阵运算库Eigen 概要
  9. GIL(全局解释器锁)
  10. [物理学与PDEs]第3章习题1 只有一个非零分量的磁场
  11. mvc中AntiForgeryToken的实现方式--看Mvc源码
  12. Hacker需要掌握的基础
  13. [UE4]蓝图调试
  14. 航信电子发票开发(servlet请求方式)
  15. elasticsearch 6.0在Ubuntu下的安装
  16. 洛谷P3953 [NOIP2017]逛公园
  17. c++中string类中的函数
  18. 飞控入门之C语言结构体、枚举
  19. BZOJ - 3295 动态逆序对 (树状数组套treap)
  20. 浅谈 Vue v-model指令的实现原理 - 如何利用v-model设计自定义的表单组件

热门文章

  1. java随机数的产生
  2. hdu4686 Arc of Dream
  3. Codeforces Global Round 7 D2. Prefix-Suffix Palindrome (Hard version)(Manacher算法+输出回文字符串)
  4. Scanner用户交互
  5. ELK + Redis 日志收集 & HAProxy
  6. leetcode 12 整数转罗马数字 贪心
  7. C++ part4
  8. 在利用手背扫描图像+K因子 对室内温度进行回归预测时碰到的问题
  9. html5 image>usemap (attribute)
  10. Linux Schedule Cron All In One