广告
返回顶部
首页 > 资讯 > 操作系统 >linux uid的作用是什么
  • 534
分享到

linux uid的作用是什么

linuxuid 2023-03-13 12:03:17 534人浏览 独家记忆
摘要

这篇文章主要介绍“linux uid的作用是什么”,在日常操作中,相信很多人在linux uid的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux uid的

这篇文章主要介绍“linux uid的作用是什么”,在日常操作中,相信很多人在linux uid的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux uid的作用是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

linux uid的作用是标识一个用户,每个用户有一个UID;linux中有三个UID标识分别是:1、RUID,Real UID,实际用户ID;2、EUID,Effective UID,有效用户ID;3、SUID,Saved Set-user-ID,保存的设置用户ID。

一、Linux 中的UID

1.1 每个进程的三个UID值

每个用户有一个UID。

内核为每个进程维护3个UID标识。这三个UID标识分别是RUID(Real UID,实际用户ID)EUID(Effective UID,有效用户ID)SUID(Saved Set-user-ID,保存的设置用户ID)

  • RUID:我们当前以哪个用户登录,我们运行程序产生进程的RUID就是这个用户的UID。

  • EUID:指当前进程实际以哪个UID来运行。一般情况下EUID等于RUID;但如果进程对应的可执行文件具有SUID权限(也就是rws的s),那么进程的EUID是可执行文件的所有者的UID

  • SUID:EUID的一个副本,与SUID权限有关。

1.2 二进制文件的SUID权限

以passwd这个可执行文件为例。
passWord文件的权限为:-rwsr-xr-x
passwd的所有者是root,但是其他用户对于passwd也有执行权限,并且passwd自身具有SUID权限(rws的s)。
那么,当非root用户执行passwd这个可执行文件的时候,产生的进程的EUID,就是root用户的UID。换言之,这种情况下,产生的进程,实际以root用户的ID来运行二进制文件。

需要说明的是,SUID权限具有时效性仅在执行该文件的过程中有效

二、setuid、setresuid函数

2.1 setuid函数

函数原型:int setuid(uid_t uid);

在Linux中, setuid(uid)函数的执行步骤为:
(1)如果由Root权限进程(EUID为0的进程)调用,则将进程的RUID,EUID和SUID都设置为uid,返回0
(2)如果由普通权限进程调用,且uid等于RUID或uid等于SUID,则将进程的EUID设置为uid,返回0
(3)如果由普通权限进程调用,且uid不等于RUID或SUID,则设置errno为EPERM,并返回-1(表示执行失败)

上文中,执行password的进程,EUID是password的所有者的UID,也就是root用户的UID,也就是0。所以,属于情况(1)。

su文件同样是-rwsr-xr-x权限。所以,安卓中,普通进程通过Runtime.getRuntime().exec(“su”),发起一个shell进程,去执行su的时候,同样属于情况(1)。

2.2 setresuid函数

函数原型:int setresuid(uid_t ruid, uid_t euid, uid_t suid);

满足以下条件之一时,setresuid被执行:
①当前进程的euid是root(aiD_ROOT)
②三个参数ruid、euid、suid中的每一个,都和当前进程的某个UID值 相等

例如:

  • 如果当前进程的RUID=100,EUID=0,SUID=300
    则setresuid(200,300,100)可以执行,因为原来的euid=0

  • 如果当前进程的RUID=100,EUID=300,SUID=200
    则setresuid(200,300,100)可以执行,因为这三个参数都是当前UID中的某一个;
    但setresuid(100,200,400)不能执行,因为400不等于当前UID中的任意一个。

三、getuid、geteuid函数

getuid返回当前进程的RUID
geteuid返回当前进程的EUID

到此,关于“linux uid的作用是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: linux uid的作用是什么

本文链接: https://www.lsjlt.com/news/199578.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • linux uid的作用是什么
    这篇文章主要介绍“linux uid的作用是什么”,在日常操作中,相信很多人在linux uid的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux uid的...
    99+
    2023-03-13
    linux uid
  • uid在linux中的概念是什么
    本篇内容介绍了“uid在linux中的概念是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!UID在linux中是“用户标识码”的意思。U...
    99+
    2023-06-29
  • docker容器中的uid和gid是什么
    本篇内容介绍了“docker容器中的uid和gid是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!先来...
    99+
    2022-10-19
  • linux如何查看用户的UID和GID
    本篇内容介绍了“linux如何查看用户的UID和GID”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2023-03-13
    linux uid gid
  • linux的作用是什么
    本文小编为大家详细介绍“linux的作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux的作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2023-03-09
    linux
  • Linux系统怎么修改已有用户的uid和gid
    本篇内容介绍了“Linux系统怎么修改已有用户的uid和gid”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Linux系统下有时需要在不同主...
    99+
    2023-06-06
  • linux .profile的作用是什么
    本篇内容主要讲解“linux .profile的作用是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“linux .profile的作用是什么”吧! ...
    99+
    2023-03-22
    linux
  • linux signal的作用是什么
    本文小编为大家详细介绍“linux signal的作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux signal的作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学...
    99+
    2023-04-20
    linux signal
  • linux bison的作用是什么
    这篇文章主要讲解了“linux bison的作用是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux bison的作用是什么”吧! ...
    99+
    2023-04-20
    linux bison
  • linux openssl的作用是什么
    本文小编为大家详细介绍“linux openssl的作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux openssl的作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起...
    99+
    2023-04-20
    linux openssl
  • linux ACL的作用是什么
    这篇文章主要讲解了“linux ACL的作用是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux ACL的作用是什么”吧! ...
    99+
    2023-02-28
    linux acl
  • linux dts的作用是什么
    本文小编为大家详细介绍“linux dts的作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux dts的作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2023-03-14
    linux dts
  • Kali linux的作用是什么
    本篇内容介绍了“Kali linux的作用是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2023-03-20
    linux kali linux
  • Rocky Linux的作用是什么?
    这篇文章主要介绍了Rocky Linux的作用是什么,具有一定借鉴价值,需要的朋友可以参考下。下面就和我一起来看看吧。Rocky Linux的介绍Rocky Linux,是一个即将推出的Linux发行版,目前正在开发中。它旨在成为一个使用红...
    99+
    2023-06-08
  • linux deploy的作用是什么
    本文小编为大家详细介绍“linux deploy的作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux deploy的作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。linux deplo...
    99+
    2023-07-06
  • linux kdump的作用是什么
    这篇文章主要讲解了“linux kdump的作用是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux kdump的作用是什么”吧! ...
    99+
    2023-03-09
    linux kdump
  • linux rpc.statd的作用是什么
    这篇文章主要介绍“linux rpc.statd的作用是什么”,在日常操作中,相信很多人在linux rpc.statd的作用是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2023-04-14
    linux
  • linux ssh的作用是什么
    本文小编为大家详细介绍“linux ssh的作用是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux ssh的作用是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。ssh用于远程登录到Linux服务...
    99+
    2023-06-30
  • linux gem的作用是什么
    这篇文章主要讲解了“linux gem的作用是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux gem的作用是什么”吧!linux gem是一款开发工具集,是一款基于Ruby的库...
    99+
    2023-07-05
  • linux opt的作用是什么
    今天小编给大家分享一下linux opt的作用是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。linux opt是用来安...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作