news 2026/6/10 7:54:37

19、Linux进程管理:用户ID、会话与守护进程详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
19、Linux进程管理:用户ID、会话与守护进程详解

Linux进程管理:用户ID、会话与守护进程详解

1. 用户ID相关概念

在Linux系统中,与进程相关的用户ID有三种:真实用户ID(real user ID)、有效用户ID(effective user ID)和保存的用户ID(saved user ID)。

当一个进程执行exec调用时,通常有效用户ID不变。但如果执行的是setuid(suid)二进制文件,进程的有效用户ID会改变,会被设置为程序文件所有者的用户ID。例如,/usr/bin/passwd是一个suid文件,其所有者是root,当普通用户的shell创建一个进程来执行该文件时,无论执行用户是谁,该进程的有效用户ID都会变为root

非特权用户只能将有效用户ID设置为真实用户ID或保存的用户ID,而超级用户可以将有效用户ID设置为任意值。

保存的用户ID是进程最初的有效用户ID。当进程进行fork操作时,子进程会继承父进程的保存用户ID。在执行exec调用时,内核会将保存的用户ID设置为有效用户ID,以此记录exec时的有效用户ID。非特权用户不能更改保存的用户ID,超级用户可以将其设置为与真实用户ID相同的值。

有效用户ID是验证进程凭证时检查的值,真实用户ID和保存的用户ID则作为非root进程可以切换的替代用户ID值。真实用户ID

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 15:45:14

32、内存管理深度解析:从严格别名到高级分配策略

内存管理深度解析:从严格别名到高级分配策略 1. 严格别名规则 在编程中,类型转换的例子可能会违反严格别名规则,这是 C 和 C++ 中较难理解的方面之一。严格别名规则要求,对象只能通过以下几种方式访问: - 对象的实际类型; - 实际类型的限定版本(如 const 或 volatil…

作者头像 李华
网站建设 2026/6/10 14:23:36

SenseVoice语音识别系统:Docker Compose一键部署实战指南

SenseVoice语音识别系统:Docker Compose一键部署实战指南 【免费下载链接】SenseVoice Multilingual Voice Understanding Model 项目地址: https://gitcode.com/gh_mirrors/se/SenseVoice 还在为语音识别服务的复杂部署而头疼吗?想要快速搭建企业…

作者头像 李华
网站建设 2026/6/9 15:48:14

SCPI Parser终极指南:5分钟搞定开源仪器控制命令解析

SCPI Parser终极指南:5分钟搞定开源仪器控制命令解析 【免费下载链接】scpi-parser Open Source SCPI device library 项目地址: https://gitcode.com/gh_mirrors/sc/scpi-parser 还在为复杂的仪器控制命令而头疼吗?想快速构建符合IEEE 488.2标准…

作者头像 李华
网站建设 2026/6/10 3:55:31

ImageViewer:重新定义移动端图片浏览体验的完整解决方案

ImageViewer:重新定义移动端图片浏览体验的完整解决方案 【免费下载链接】ImageViewer An image viewer la Twitter 项目地址: https://gitcode.com/gh_mirrors/im/ImageViewer 你是否曾在手机上翻看相册时感到困扰?图片加载缓慢、切换卡顿、细节…

作者头像 李华
网站建设 2026/6/10 1:06:44

Flutter Engine富文本渲染性能优化:从原理到实战的深度解析

在移动应用开发中,Flutter富文本渲染性能直接影响用户体验,特别是当处理长篇文档、消息历史或新闻内容时。Flutter Engine通过DisplayList预编译、视口裁剪和智能回收三大机制,为开发者提供了强大的性能优化工具链。本文将深入剖析Flutter En…

作者头像 李华
网站建设 2026/6/9 9:50:25

Cirq代码补全异常怎么办,全面解析配置、环境与语法三大陷阱

第一章:Cirq 代码补全的错误修正在使用 Cirq 进行量子电路开发时,集成开发环境(IDE)中的代码补全功能虽然提升了编码效率,但也可能引入误导性建议或语法错误。这些问题通常源于类型推断不准确或库版本不匹配&#xff0…

作者头像 李华