首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动apache脚本

问启动apache脚本
EN

Unix & Linux用户
提问于 2012-03-04 21:57:30
回答 2查看 3.1K关注 0票数 1

我已经在本地Linux (sabayon)操作系统上安装了Apache,只是为了进行编程测试。

我想要的是一个脚本,以便服务器在我需要的时候立即启动。

这是代码:

代码语言:javascript
复制
#!/bin/bash
# een script dat de apache server start
/etc/init.d/apache2 start

唯一的问题是Apache需要根权限,但我是一个普通用户。现在,我可以使用sudo ./apache_start.sh从命令行运行这个脚本,但我不想这样做。我只想双击它并启动Apache服务器。

那么,我能做什么才能使脚本作为根用户而不是普通用户运行呢?

我不在乎是否有询问密码的提示,我只是不想打开控制台,导航到文件等等。

EN

回答 2

Unix & Linux用户

发布于 2012-03-04 22:44:11

如果要执行所做的操作,则不能使用默认init脚本。此外,如果您希望它在端口80上运行,则不能在没有根权限的情况下启动它,因为只有root才能在端口80上启动侦听器。

在我看来你有两个选择。在高于1024的端口上运行,然后从命令行手动执行apache。或者使用sudo:

代码语言:javascript
复制
visudo

添加一行您的用户名

代码语言:javascript
复制
username ALL=NOPASSWD: /etc/init.d/apache2 start, /etc/init.d/apache2 stop

你的桌面快捷方式告诉它执行

代码语言:javascript
复制
sudo /etc/init.d/apache2 start
票数 2
EN

Unix & Linux用户

发布于 2012-09-03 01:56:46

您可以使用gksudo直观地获取根权限,这很好。

apache-start.sh

代码语言:javascript
复制
#!/bin/bash

if [ "$EUID" = "0" ]; then
    # we're root, so just run it
    service apache2 start
    exit 0
fi

# otherwise, try running it with a visual prompt for superuser
gksudo service apache2 start
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/46995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档