IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:UID

共 1 篇相关文章

IT 累计浏览 3,117

Linux系统管理技术手册第四章习题实践

这篇讲的是Linux系统中三个容易混淆的概念:文件的UID、进程的真实UID(Real UID)与有效UID(Effective UID)。作者从《Linux系统管理技术手册》第四章的一道经典习题出发,直接切入核心问题。 文章首先厘清了基本关系:文件的UID决定了“谁拥有这个文件”,而进程的两个UID则决定了“哪个用户身份在运行这个程序”以及“当前操作被允许以哪个身份执行”。真实UID是启动进程的用户身份,通常不会改变;有效UID则是进程在操作资源时实际使用的身份,它可能因为SUID等机制而改变。 关键差异在于,有效UID主要服务于进程的权限提升需求。除了大家熟知的、用于匹配文件权限位进行访问控制外,它的另一个重要用途是:当进程尝试修改文件时,系统会依据有效UID(而非真实UID)来检查写权限;同时,在一些系统调用中(如`kill`向其他进程发送信号),有效UID也会被用作权限验证的依据。简单说,真实UID记录了进程的“出身”,而有效UID则代表了它当前被赋予的“能力”,这种设计在系统服务以普通用户身份启动、却需要完成特定特权操作时尤为关键。