2011-12-06 46 views
0

我想在Linux上启动,停止并重新启动我的web服务器lighttpd,部分成功的批处理命令(sh)。 理想情况下,我想双击图标,没有什么更多的工作。现在在linux,gnome,bash命令批处理命令

,上双击出现对话框“是否要运行‘START.sh’,或显示其内容?”和“START.sh”是一个可执行的文本文件,“与运行在终端,显示器,取消和运行按钮,输入密码后,在终端上运行做工作 我的脚本如下所示:。

#! /bin/bash 

sudo /bin/bash /etc/init.d/lighttpd start 
echo 
echo -n " [ENTER] to continue... " 
read var_keypress 

是这里的任何方式为我的脚本运行无提示对话框,说我不需要每次都输入密码?

+3

'sudo service lighttpd start | stop | restart'难吗? – cHao

+0

批处理脚本是在许多文件上工作的东西。这是一个初学者脚本,应该迁移到超级用户。 – Bytemain

+0

另一个选择可能是使用'gksu' – elias

回答

1

您可以将sudo配置为无密码可用作为d这里旁切:

http://www.linuxscrew.com/2008/06/22/configure-sudo-nopasswd/

一定要让须藤只有无密码运行特定的命令,而不是全部。

+0

我尝试这个,但也部分成功。我无法禁用特定命令的密码,但对于用户的所有sudo都禁用密码。我认为这是好的。我只是我的比赛用户。 –

+0

实际上,现在我的批量不要求输入密码,而是询问“在终端中运行”,“显示”,“取消”,“运行”,这也是不需要的。任何想法来避免这种情况? –

+0

应该是一个GNOME相关的问题......你可以创建一个链接(在gnome,而不是一个符号链接)到一个程序? – Timo

0

你可能避免了系统初始化脚本(ln -s /etc/init.d/lighttpd /etc/rc2.d/S99lighttpd在Debian),或用crontab条目@reboot

+0

对于RH/Fedora/CentOS,'chkconfig --level 2345 lighttpd on'。假设init脚本有一个正确的chkconfig头文件,并且已经通过类似'chkconfig --add lighttpd'的方式进行了设置。 – cHao

+0

感谢您的帮助!我对此没有任何用处。与鹦鹉螺的“创建链接”不同吗? –

+0

可能是的,但我知道更多的命令(这是由Posix标准化*)比图形界面(这是很难解释在论坛中)。我建议你学习基本的命令。 –