Lazarus中文社区

 找回密码
 立即注册(注册审核可向QQ群索取)

QQ登录

只需一步,快速开始

Lazarus IDE and 组件 下载地址版权申明
查看: 9155|回复: 11

lazarus怎么调用需要root权限的外部程序?

[复制链接]

该用户从未签到

发表于 2010-3-24 21:14:52 | 显示全部楼层 |阅读模式
本来这个问题应该在mac区发问的,但因为linux也有这个问题,而且更贴切,所以就发在这里了。
问题:我用lazarus写了一个界面,这个界面需要调用另外一个需要root权限才能执行的外部程序(用c写的),调用程序我会,但是调用需要root权限才能执行的程序就不知道该怎么办了,查了网上的一些资料说是用SUID、但具体怎么操作我就找不到资料了,请大家帮帮忙、出谋划策。
大概的意思和这个帖子发问的人一样http://linux.chinaunix.net/bbs/thread-1061788-1-1.html
回复

使用道具 举报

该用户从未签到

发表于 2010-3-25 09:05:12 | 显示全部楼层
那你需要把这个执行程序给他赋执行的权限:chmod -777 xxxx
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-3-25 09:06:14 | 显示全部楼层
你可以用root登录,或者把程序放到这个用户的目录下,或把你程序的目录赋权限,就像上面那样
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-3-27 17:12:49 | 显示全部楼层
chmod -777 xxxx 如果这样就不存在调用root权限了!
应该是 su -c "命令"之类的。。。
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-3-27 17:14:13 | 显示全部楼层
SUID 不现实。也不安全。。
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2010-3-27 22:40:36 | 显示全部楼层
引用第1楼猫工于2010-03-25 09:05发表的  :
那你需要把这个执行程序给他赋执行的权限:chmod -777 xxxx
linux下的情况我不是很清楚,但mac这里依旧提示没有权限....显然这样是不行的...
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2010-3-27 22:42:07 | 显示全部楼层
引用第4楼student于2010-03-27 17:14发表的  :
SUID 不现实。也不安全。。
我不需要安不安全,我只需要一瞬间获得权限完成任务,然后放弃权限都没所谓了~
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2010-3-27 22:45:59 | 显示全部楼层
这是用了chmod 777 xxxx后 依旧提示没有权限访问

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册(注册审核可向QQ群索取)

x
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2010-4-1 15:41:22 | 显示全部楼层
install -v -m 4755 -o root ./ppfile /usr/bin/ppfile

用这个命令之后就可以被调用了,不过不是很明白这个命令参数的具体意思,有谁知道吗?
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-11-23 16:25:38 | 显示全部楼层
install -v -m 4755 -o root ./ppfile /usr/bin/ppfile
等于
cp  ./ppfile   /usr/bin 将当前目录下的ppfile复制到/usr/bin下
chmod 4755 /usr/bin/ppfile 改变权限rwsr-xr-x,前面的4就是SUID(-m 的作用)
chown root /usr/bin/ppfile 改变拥有者为root (-o 的作用)
-v 是显示详细信息
回复 支持 反对

使用道具 举报

*滑块验证:

本版积分规则

QQ|手机版|小黑屋|Lazarus中国|Lazarus中文社区 ( 鄂ICP备16006501号-1 )

GMT+8, 2025-5-2 20:25 , Processed in 0.032167 second(s), 11 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表