热门推荐
Linux-各种UID
2024-10-31 16:53

UID是系统中用来表示用户的标识符,启动的进程的uid就是当前登录用户的uid,查看用户uid可使用命令

Linux-各种UID

需要注意的是,权限检查的时候是对euid检查,通常情况下进程的euid是和uid相同的。

euideffective user id ,有效用户ID。

euid作用

用于文件访问检查,euid和决定了进程是否有访问某个文件的能力。例如,编写下面代码

编译并运行

euid

上述执行过程中,将拥有者改为root并修改访问权限为root只读后,我以eureka用户的身份无法访问该文件。

看APUE发现自己对suid不是特别了解,查资料之后明白了,记录如下。

参考文章

what is suid

上面链接中的文章说的很准确SUID(Set Owner User ID up on execution

在执行时设置为所有者ID,一个例子就是这个可执行文件。

从上面的属性可以看到,权限位中有个,这就是suid。

这个命令是用来修改密码的,而密码文件是,且查看密码文件的属性可以看到它的拥有者是root,root可读写,用户组可读的。

既然这个文件是root可读写,那非root用户修改密码要怎么办呢

这时候就要说的suid了,当非root用户调用修改密码时,此时的euid将会变为的拥有者用户,即root用户,这样就可以修改密码了。

与其说suid是一个id,不如说它是文件的一个标志,它标志着这个可执行文件在执行时的euid将会被修改为它拥有者的uid。

下面编程实验

编译后执行

    以上就是本篇文章【Linux-各种UID】的全部内容了,欢迎阅览 ! 文章地址:http://lianchengexpo.xrbh.cn/quote/8724.html 
     行业      资讯      企业新闻      行情      企业黄页      同类资讯      网站地图      返回首页 迅博思语资讯移动站 http://lianchengexpo.xrbh.cn/mobile/ , 查看更多