chmod u+s pro 使pro不能运行的问题

kongl123 2009-05-31 12:32:45
大家好,我的问题是这样的:在一般状态时(可执行文件权限为rwxr-xr-x,owner为me),程序可以正常运行。当我用chmod u+s并把owner改为root后(他所依赖的库也做一样的设置或不作这样的设置都试过),运行时提示找不到所依赖的库:cannot open shared object file:no such file or directory。依赖的库是静态链接的,请问这是什么问题?还有,如果只是chmod u+s也没问题,root中有所依赖库的查找路径。
...全文
256 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
kongl123 2009-06-19
  • 打赏
  • 举报
回复
对一个用户来说,一般不会把它放在超用户上运行。但对某些特殊的资源,也是出于安全,只有超户才有权申请。这时要满足面前说的两个安全就有用了。
mymtom 2009-06-18
  • 打赏
  • 举报
回复
还是不明白为何要setuid
kongl123 2009-06-17
  • 打赏
  • 举报
回复
6楼是对的,所以把库放usr/lib上就可以了。谢谢大家
mymtom 2009-06-16
  • 打赏
  • 举报
回复
如果楼主的依赖库是在LD_LIBRARY_PATH里的,这很正常。
在很多操作系统环境中,出于安全考虑,系统执行setuid和setgid
程序时是不理会LD_LIBRARY_PATH的。
Caballeroo 2009-06-16
  • 打赏
  • 举报
回复
学习
puheavy123 2009-06-16
  • 打赏
  • 举报
回复
用ldd跟踪一下库看看。。。。但是我想不明白,把普通用户的文件加个s权限干嘛??
threeleafzerg007 2009-06-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 feir8510 的回复:]
你运行时用的用户是root么?先后如果用的不是一个用户可能会对环境变量有影响吧~
[/Quote]

2楼正解

建议 su 到 root用户
ldd pro

看看缺库没 结果一定是肯定的

加LD_LIBRARY_PATH拉
pipisi 2009-06-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 kongl123 的帖子:]
大家好,我的问题是这样的:在一般状态时(可执行文件权限为rwxr-xr-x,owner为me),程序可以正常运行。当我用chmod u+s并把owner改为root后(他所依赖的库也做一样的设置或不作这样的设置都试过),运行时提示找不到所依赖的库:cannot open shared object file:no such file or directory。依赖的库是静态链接的,请问这是什么问题?还有,如果只是chmod u+s也没问题,root中有所依赖库的查找路径。
[/Quote]

两个用户的环境变量是不一样的,

用两个用户分别
echo $PATH
echo $LD_LIBRARY_PATH
看看有什么不同就知道了
feir8510 2009-05-31
  • 打赏
  • 举报
回复
你运行时用的用户是root么?先后如果用的不是一个用户可能会对环境变量有影响吧~

23,223

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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