#将Apache加入到linux系统service 将apache加入到linux系统服务,用service命令来控制apache的启动和停止。 本文由乌合之众瞎写http://my.oschina.com/oloroso
##1.生成Apache服务控制脚本 ###1.1提取/usr/local/apache2/bin/apachectl脚本有效内容 grep -v "#"
表示提取不是以#开头的hang
o@o-pc:~/work$ grep -v "#" /usr/local/apache2/bin/apachectl >apache.txt
###1.2在/etc/init.d
目录下创建控制脚本
o@o-pc:~/work$ sudo cat apache.txt >/etc/init.d/apache
bash: /etc/init.d/apache: 权限不够
提示权限不够,因为这个目录root账户也没有写权限。 这是我的系统的原因,别的系统不一定默认就是没有写权限的。
o@o-pc:~/work$ stat /etc/init.d/
文件:"/etc/init.d/"
大小:4096 块:8 IO 块:4096 目录
设备:803h/2051d Inode:2233490 硬链接:2
权限:(0755/drwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2015-05-28 12:27:07.617607855 +0800
最近更改:2015-05-28 09:36:16.162085700 +0800
最近改动:2015-05-28 09:36:16.162085700 +0800
创建时间:-
chmod
修改权限,然后写入
o@o-pc:~/work$ sudo chmod a+w /etc/init.d
o@o-pc:~/work$ stat /etc/init.d/
文件:"/etc/init.d/"
大小:4096 块:8 IO 块:4096 目录
设备:803h/2051d Inode:2233490 硬链接:2
权限:(0777/drwxrwxrwx) Uid:( 0/ root) Gid:( 0/ root)
最近访问:2015-05-28 12:27:07.617607855 +0800
最近更改:2015-05-28 09:36:16.162085700 +0800
最近改动:2015-05-28 16:38:31.203252031 +0800
创建时间:-
o@o-pc:~/work$ sudo cat apache.txt >/etc/init.d/apache
###1.3编辑/etc/init.d/apache文件
o@o-pc:~/work$ sudo vi /etc/init.d/apache
在文件最前面插入下面的行,指示这个脚本使用的解释器
#!/bin/sh
下面是不再使用的,这里简单介绍 还可以添加一下内容使其支持chkconfig命令:
# chkconfig: 2345 85 15 # description: Apache is a World Wide Web server.
chkconfig 命令主要是用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。 使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
对应脚本修改 每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。 例如,random.init包含三行:
chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.
##2.为Apache控制脚本添加执行权限
o@o-pc:~/work$ chmod +x /etc/init.d/apache
##3.使用sysv-rc-conf工具将Apache服务加入到系统服务 ###3.1添加Apache服务到系统服务** chkconfig命令在ubuntu10.04之后就不再提供了,可以手动下载。 这里使用另外两个命令来配置ubuntu的启动服务,sysv-rc-conf和update-rc.d 先安装sysv-rc-conf工具
o@o-pc:~/work$ sudo apt-get install sysv-rc-conf
使用sysv-rc-conf工具 这里要注意权限问题
o@o-pc:~/work$ sysv-rc-conf
Can't create /var/lib/sysv-rc-conf : 权限不够 at /usr/sbin/sysv-rc-conf line 454.
××sysv-rc-conf**操作简单,简洁的操作界面,你可以使用鼠标点击,也可以使用键盘操作,空格键
代表选择,“X”表示开启服务,Ctrl+N
下一页,Ctrl+P
上一页,Q
退出。
我们为其设置运行级别为2/3/5
,且不让它开机启动*(为什么?我这是在自己的笔记本上弄的,不是在服务器)* 还是来一张图片,会比较好看一点
┌ SysV Runlevel Config -: stop service =/+: start service h: help q: quit ┐ │ │ │ service 1 2 3 4 5 0 6 S │ │ ---------------------------------------------------------------------------- │ │ acpid [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ anacron [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ apache [ ] [X] [X] [ ] [X] [ ] [ ] [ ] │ │ apparmor [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] │ │ apport [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ avahi-dae$ [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ bluetooth [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ brltty [ ] [ ] [ ] [ ] [ ] [ ] [ ] [X] │ │ console-s$ [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ cron [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ cups [ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ] │ │ │ └──────────────────────────────────────────────────────────────────────────────┘ ┌──────────────────────────────────────────────────────────────────────────────┐ │ Use the arrow keys or mouse to move around. ^n: next pg ^p: prev pg │ │ space: toggle service on / off │ └──────────────────────────────────────────────────────────────────────────────┘
解释一下运行级别 **运行级别:**Linux系统任何时候都运行在一个指定的运行级上,并且不同的运行级程序和服务都不同,所要完成的工作和要达到的目的也不同,系统可以在这些运行级之间进行切换,来完成不同的工作。 |运行级别等级|说明| |----|----| |0|系统停机状态| |1|单用户模式,只准许root用户对系统进系维护| |2~5|多用户模式(其中3为字符界面、5为图形界面)| |6|重启启动| 在这里需要注意的是,在Debian下(ubuntu其中之一)level2~5是没有任何区别的。 **可以使用runlevel
命令来查看当前系统的运行等级
o@o-pc:~/work$ runlevel
N 2
###3.2检查是否成功