设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
编程开发讨论区 —— LinuxSir.cn
›
Perl
›
菜鸟问题:怎么在perl程序中执行sh命令? ...
返回列表
查看:
3009
|
回复:
7
菜鸟问题:怎么在perl程序中执行sh命令?
[复制链接]
samwang
samwang
当前离线
积分
113
IP卡
狗仔卡
发表于 2003-5-8 08:36:38
|
显示全部楼层
|
阅读模式
我想在web上,通过触发一个perl程序。来控制/etc/init.d/proftpd的启动和停止,请问应该怎么做啊?
有一种方法是:
`/etc/init.d/proftpd start`
这样,在linux机器上的命令行上执行那个文件是可以的。
但是,通过web调用这个文件时,却不能执行,
请各位高手回答!!!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
xiawei_cn
xiawei_cn
当前离线
积分
36
IP卡
狗仔卡
发表于 2003-5-8 16:13:40
|
显示全部楼层
应该是权限问题
回复
支持
反对
使用道具
举报
显身卡
bingo-dw
bingo-dw
当前离线
积分
170
IP卡
狗仔卡
发表于 2003-5-8 16:45:58
|
显示全部楼层
通过web调用使用的缺省用户是apache没有启动服务的权限。
有几种方法可以改:
1,修改httpd.conf的缺省用户,较危险。
2,使用sudo,加入apache运行service的权限,推荐。
3,设置suid,较危险。
4,参考webmin的源代码,有帮助,不过一定使用了perl的其他模块,比如认证等,我没研究过,但是我看到可以,推荐。
5,还没想好...
回复
支持
反对
使用道具
举报
显身卡
samwang
samwang
当前离线
积分
113
IP卡
狗仔卡
楼主
|
发表于 2003-5-8 17:49:27
|
显示全部楼层
没解决啊,老大们,再问,请再答!!!
经过测试,的确是权限问题,apache不能到/etc/init.d/下面去做什么活动。
bingo-dw说得很好,但是我还不知道具体怎么操作啊,能教教么?
用第2种方法。使用sudo
回复
支持
反对
使用道具
举报
显身卡
samwang
samwang
当前离线
积分
113
IP卡
狗仔卡
楼主
|
发表于 2003-5-8 18:19:02
|
显示全部楼层
没解决啊,老大们,再问,请再答!!!
我在/etc/apache/conf/commonapache.conf里面把ScriptAlias选项加了一条:
ScriptAlias /cgi-bin/ /etc/init.d/
然后,把我的perl命令copy过去。结果还是不能启动proftpd啊。
甚至我把proftpd 设为了chmod 777 还有,把proftpd文件chown apache proftpd,chgrp apache proftpd后,还是不行。
sudo到底是怎么执行啊??!!!
回复
支持
反对
使用道具
举报
显身卡
bingo-dw
bingo-dw
当前离线
积分
170
IP卡
狗仔卡
发表于 2003-5-8 21:51:51
|
显示全部楼层
如果是redhat,在安装包中有sudo-xxx.rpm,用rpm -ivh安装。
用visudo编辑配置文件,其中有例子可以参考,用不使用password提示的例子设定/sbin/service,然后编辑你的perl脚本,用sudo service proftpd restart。
不然就是修改/etc/httpd/conf/httpd.conf文件,寻找Group,就在下面几行就是设定启动httpd的用户,你可以修改成有权限运行 service的用户。
其实init.d下的proftpd只是脚本,真正的可执行文件在另外的目录里,你只修改它的权限是不行的。
请试试,有问题不要慌,慢慢问,细细想,不是什么天塌下来的事,不必用呼天抢地的标题。;)
回复
支持
反对
使用道具
举报
显身卡
samwang
samwang
当前离线
积分
113
IP卡
狗仔卡
楼主
|
发表于 2003-5-9 12:08:45
|
显示全部楼层
谢谢 bingo-dw!
我用sudo解决问题了。呵呵,
apache ALL=(ALL) NOPASSWD:ALL
就可以了。
我用呼天抢地的标题是因为比较急,怕别人看不到我的贴子,呵呵。好,下回如果遇到天塌下来的事,我再用呼天抢地的标题,
平时,再也不用啦。:)
回复
支持
反对
使用道具
举报
显身卡
bingo-dw
bingo-dw
当前离线
积分
170
IP卡
狗仔卡
发表于 2003-5-9 12:27:17
|
显示全部楼层
不谢。
不过你要注意安全哟,看你的设置好像把所有的命令都给apache用户给sudo了,这样要是有不法之徒象毁掉你的系统,简直轻而易举。
建议你只针对某个命令开放sudo。
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表