参考:

一、概述

1.1 service 和 daemon

达成某个 service 是需要一支 daemon 在运行的。

没有这支 daemon 就不会有 service.

daemon分为两种:

  • stand_alone

    独立启动,自行启动不透过其他机制,daemon 启动并加载到内存后就一直占用内存与系统资源。

最大的优点就是:因为是一直存在内存内持续的提供服务,因此对于发生客户端的要求时,stand alone 的 daemon 响应速度较快。

常见的 stand alone daemon 有 WWW 的 daemon (httpd)、FTP 的 daemon (vsftpd) 等等。

  • super daemon

    启动方式则是藉由一个统一的 daemon 来负责唤起服务!

它的好处是:自行启动服务不用的时候自行关闭服务,节约内存资源,telnet 就是这样的

1.2 service 命令

service命令,顾名思义,就是用于管理 Linux 操作系统中服务的命令。

注意:

  1. 声明:这个命令不是在所有的linux发行版本中都有。主要是在redhat、fedora、mandriva和centos中。
  2. 此命令位于/sbin目录下,用file命令查看此命令会发现它是一个脚本命令。
  3. 分析脚本可知此命令的作用是去/etc/init.d目录下寻找相应的服务,进行开启和关闭等操作。
  4. 开启httpd服务器:service httpd start

    start可以换成restart表示重新启动,stop表示关闭,reload表示重新载入配置。
  5. 关闭mysql服务器:service mysqld stop
  6. 强烈建议大家将service命令替换为/etc/init.d/mysqld stop (因为有一些linux的版本不支持service)

Usage: service < option > | --status-all | [ service_name [ command | --full-restart ] ]

例如:

  • 示例一 网络重启
  1. 当修改了主机名、ip地址等信息时,经常需要把网络重启使之生效。
  2. [root@node34 root]# service network
  3. 用法:/etc/init.d/network {start|stop|restart|reload|status}
  4. [root@node34 root]# service network status
  5. 配置设备:
  6. lo eth0
  7. 当前的活跃设备:
  8. lo eth0
  9. [root@node34 root]# service network restart
  10. 正在关闭接口 eth0 [ 确定 ]
  11. 关闭环回接口: [ 确定 ]
  12. 设置网络参数: [ 确定 ]
  13. 弹出环回接口: [ 确定 ]
  14. 弹出界面 eth0 [ 确定 ]
  • 示例二 重启 MySQL
  1. [root@node34 root]# service mysql
  2. mysql: unrecognized service
  3. [root@node34 root]# service mysqld
  4. 用法:/etc/init.d/mysqld {start|stop|status|condrestart|restart}
  5. [root@node34 root]# service mysqld status
  6. mysqld (pid 1638) 正在运行...
  7. [root@node34 root]# service mysqld restart
  8. 停止 MySQL [ 确定 ]
  9. 启动 MySQL [ 确定 ]

https://www.bbsmax.com/A/GBJrV18BJ0/

二、使用到的文件

/etc/init.d/* :启动脚本放置处.我们的 CentOS 实际上放置在 /etc/rc.d/init.d/ 啦! 不过还是有配置连结档到 /etc/init.d/ 的!

/etc/sysconfig/* :各服务的初始化环境配置文件

/etc/* :各服务各自的配置文件

/var/lib/* :各服务产生的数据库

`/var/run/*`` :各服务的程序之 PID 记录处

三、linux 中 service *** start 与直接运行 /usr/bin/*** 的区别

在linux想要运行启动一个服务有两种方法:

1,运行/etc/init.d/目录下的shell脚本,还可以有快捷方式,service *** start/ stop/restart /status,

2,直接运行/usr/bin目录下的服务文件;

第一种方法启动的程序可以通过service命令来管理,比如说查看状态 service --status-all

查看/etc/init.d目录,发现下面都是shell脚本,脚本里面运行的程序最终还是指向了/usr/bin下面的程序,只不过在shell脚本中可能直接对程序的一些运行参数继续进行了设置;

第二种方法,直接运行/usr/bin/****,如果运行时有配置文件的话,需要加上 --config *****,用这种方法启动程序后,不能用service命令查看状态。

此文在我的 Github Pages 上同步发布,地址为:Linux 中的 Service

Linux 中的 Service的更多相关文章

  1. linux中服务(service)管理

    一.介绍 服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux 中非常重 ...

  2. 在Linux中利用Service命令添加系统服务及开机自启动

    有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s                       在/etc/rc.d/rc*.d目录中建立/e ...

  3. Linux中的两种守护进程stand alone和xinetd

    Linux中的两种守护进程stand alone和xinetd --http://www.cnblogs.com/itech/archive/2010/12/27/1914846.html#top 一 ...

  4. Linux中service命令和/etc/init.d/的关系

    Linux中service命令和/etc/init.d/的关系   service xxx启动 /etc/init.d/ 目录下的xxx脚本 如一个脚本名为 mysvc保存在/etc/init.d/下 ...

  5. 如何在Linux中搭建禅道8.4.1(httpd+php+mysql)

    1.安装httpd 命令:yum install httpd 然后一路y即可 2.安装php 命令:yum install php   3.安装php-mysql 命令:yum install php ...

  6. 在linux中设置静态ip地址

    在linux中设置静态ip地址1.在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 2.开始编辑,填写ip地址.子网掩码.网关.DNS等[root ...

  7. linux中判断一个命令是否执行成功

    每一条基本命令执行后都有一个返回码,该返回码是用$?表示,执行成功的返回码是0,例如:if [ $? -ne 0 ];then 上一命令执行失败时的操作else 上一命令执行成功时的操作fi例如lin ...

  8. linux中mysql密码找回的两种方式

    方法一:修改my.cnf配置文件 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的  ...

  9. 讲述一下自己在linux中配置ftp服务的经历

    本人大二小白一名,从大一下学期就开始接触到linux,当时看到学校每次让我们下载资源都在一个ftp服务器中,感觉特别的高大上,所以自己就想什么时候自己能够拥有自己的ftp服务器,自己放一点东西进去,让 ...

随机推荐

  1. swift - 之TabBarController的用法

    TabBarController的使用,下面记录两种写法,代码如下: TabBarItem系统自带图标样式(System)介绍: Custom:自定义方式,配合Selected Image来自定义图标 ...

  2. python2.0_day16_django_url_view_models_template介绍

    本节内容 Django流程介绍 Django url Django view Django models Django template Django form Django admin Django ...

  3. linux大全链接

    http://man.linuxde.net/

  4. [转载]会引起全表扫描的几种SQL

    查询语句的时候尽量避免全表扫描,使用全扫描,索引扫描!会引起全表扫描的几种SQL如下 1.模糊查询效率很低: 原因:like本身效率就比较低,应该尽量避免查询条件使用like:对于like ‘%... ...

  5. java基础---->验证码的使用(一)

    验证码是一种区分用户是计算机和人的公共全自动程序.可以防止:恶意破解密码.刷票.论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上是用验证码是现在很多网站通 ...

  6. java FileUtil(文件操作类)

    package tools; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; i ...

  7. JQuery中$.ajax()方法参数详解 转载

    url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...

  8. 内网安全监控和预警平台架构设想(OSSIM)

    内网安全监控和预警平台架构设想 需求简介 内网安全监控和预警平台是内网安全建设的物质基础,是所有甲方安全建设的必备武器库,无论是应急响应和追踪溯源,还是预知告警.自我清查:做下来总的体会是几个问题永远 ...

  9. 什么是runtime?什么是webgl?

    一 什么是Runtime? Egret官方解释:https://www.egret.com/products/runtime.html 二.什么是WebGL渲染? egret官方解释:http://d ...

  10. 微信小程序 --- Image组件

    Image组件可以在小程序中展示图片,支持外链. Image组件可以调用API,进行三种缩放,九种裁剪. Image组件有默认值:300*225 属性: src:图片资源地址. mode:图片裁剪缩放 ...