关于centos x_64 下的s权限位

sfz200809242719 2014-01-28 03:40:19
我做了两个测试,一个是redhat,一个是我的系统,然后以下结果却是不同,让我造成了疑惑。
s权限设置位,可以让进程或得该用户有效设置位,但是我的系统下去没有出现这个功能,如下是我的代码:
#include"../include/apue.h"
int main(){
printf("this is s power,before swap\n");
printf("real uid= %d, effective uid= %d\n",getuid(),geteuid());
printf("\n\n\n now start swap\n");
setreuid(500,0);
seteuid(0);
printf("real uid= %d, effective uid= %d\n",getuid(),geteuid());
exit(0);
}
首先apue的头文件的话,其实就是扩充了所有头文件的头文件。先说一下,setreuid是用来交换实际用户和有效用户ID,然后seteuid用来让有效用户ID设置成用户ID,通常,root用户的ID位0。用ROOT用户编译此文件后,chmod u+s,chmod o+x.之后用普通用户执行后发现有效ID人然是普通用户ID,那么S权限位为什么没有起作用?
在redhat32位上,这个代码符合我的预期结果,但是在centos x_64上却非常符合我的结果
...全文
325 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sfz200809242719 2014-01-30
  • 打赏
  • 举报
回复
我擦,怎么这么冷清
sfz200809242719 2014-01-28
  • 打赏
  • 举报
回复
别沉。。。。
sfz200809242719 2014-01-28
  • 打赏
  • 举报
回复
这么快要沉了。。。。

18,829

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧