将Apache加入到linux系统service

将apache加入到linux系统服务,用service命令来控制apache的启动和停止。

本文由乌合之众瞎写http://www.cnblogs.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-confupdate-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检查是否成功

将Apache加入到linux系统service的更多相关文章

  1. linux系统下安装apache与tomcat

    apache的安装 把安装包放到/soft 下 [root@localhost ~]#cd /soft [root@localhost soft]#tar jxvf httpd-2.2.25.tar. ...

  2. linux系统下安装与配置apache

    搭建环境:VMware上虚拟的linux 主机:win  7 安装linux下的Apache前准备: 1.httpd服务的配置文件,默认存储路径:/etc/httpd/conf/httpd.conf( ...

  3. 初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

    目录 一.项目目标 二.实施工具 三.项目实施计划 四.安装rhel7.5操作系统 4.1 配置虚拟机 4.2 安装操作系统 4.3 系统配置 4.3.1 网络配置 4.3.2 修改主机名 4.3.3 ...

  4. Linux系统Apache服务 - 配置 HTTP 的虚拟机主机

    接Linux系统Apache服务 - 配置HTTP的默认主页 1.创建/srv目录,作为httpd的文件目录,并创建/srv/default/www和/srv/www1.example.com/www ...

  5. 在Linux系统上查看Apache服务器的错误日志

    错误日志和访问日志文件为系统管理员提供了有用的信息,比如,为 Web 服务器排障,保护系统不受各种各样的恶意活动侵犯,或者只是进行各种各样的分析以监控 HTTP 服务器.根据你 Web 服务器配置的不 ...

  6. Linux系统软件包之---Apache

    当前互联网主流web服务说明 静态服务: apache 中小型静态web服务的主流,web服务器中的老大哥 nginx 大型新兴网站静态web服务主流,web服务器中的初生牛犊 lighttpd 静态 ...

  7. Linux系统Docker启动问题Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service"

    在Liunx中使用Docker, 注: Liunx使用的是在虚拟机下的centOS7版本在刚开始安装Docker时没有任何错误, 但是在后续的docker启动过程中, 出现以下问题: [root@zk ...

  8. Linux系统判断当前运行的 Apache 所使用的配置文件

    问题描述 由于历史备份.更新等原因,导致在 Linux 系统服务器中存在多个 Apache目录,如果不是网站的配置人员,可能会不清楚应该修改哪个配置文件进行网站调整. 解决方案 可以通过如下步骤,判断 ...

  9. linux系统下apache服务的启动、停止、重启命令

    本文章简单的介绍了关于linux下在利用命令来操作apache的基本操作如启动.停止.重启等操作,对入门者不错的选择.本文假设你的apahce安装目录为 usr local apache2,这些方法适 ...

随机推荐

  1. 20145212 《Java程序设计》第10周学习总结

    20145212 <Java程序设计>第10周学习总结 学习内容总结 一.Java的网络编程 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来. java.net ...

  2. XtraFinder在OSX10.11的使用

    重启系统,按住command键加上R键 进入恢复模式还是什么模式里,然后启动terminal 然后键入 csrutil enable --without debug 重启电脑,可正常使用 居然上传不了 ...

  3. sqlserver权限体系(上)

    简介 权限两个字,一个权力,一个限制.在软件领域通俗的解释就是哪些人可以对哪些资源做哪些操作. 在SQL Server中,”哪些人”,“哪些资源”,”哪些操作”则分别对应SQL Server中的三个对 ...

  4. ServletContext

    1.为什么需要servletContext    需求1 需求2 --------------->解决之道servletContext     servletContext 1.ServletC ...

  5. css样式中遇到!important

    链接: http://zhidao.baidu.com/link?url=XyYHS2l-bFkzEgMBWfbQYuEV4vmGz8kOhj-jDL_HBqu0KnVIBQJKvw5OOO-bVjv ...

  6. Html.RenderPartial、Html.RenderAction联系与区别

    1.引言 开发人员经常希望应用程序可以在多个不同的地方使用同样的Razor标签和HTML标记代码.这并不需要我们在多个地方重复这些标签,使用MVC中的分部视图和子动作可以让我们很好的解决类似的情况. ...

  7. mysql数据表分表策略2(转)

    mysql分表方法: 方法一. 做数据库集群! 主从数据库 双向热备份(或一对多的数据库实时备份策略),这样可将数据库查询分摊到几个服务器去(可跟服务器负载均衡结合起来架构) 优点:扩展性好,没有多个 ...

  8. 多线程 GET

    iOS中多线程的实现 方案 简介 语言 线程生命周期 使用频率 pthread 一套通用的多线程API 适用于 Unix / Linux / Windows 等系统 跨平台\可移植 使用难度大 C 程 ...

  9. ExtJS -- ArrayStore

    ArrayStore : // Store for array var myStore = new Ext.data.ArrayStore({ storeId: "arrayStore&qu ...

  10. Exception→"Source":"EntityFramework" "Message" :"更新条目时出错。有关详细信息,请参阅内部异常。"

    给一个数据库中类型为"datetime"的列赋值为 "DateTime.MinValue"...... 而// ::} But--01到9999-- :: 到 ...