/*********************************************************************
 * Author  : Samson
 * Date    : 04/30/2014
 * Test platform:
 *              3.11.0-12-generic #19-Ubuntu
 *              GNU bash, version 4.2.45
 * *******************************************************************/

Upstart是一个基于事件的替代在引导过程中处理任务和服务的启动、停止、监督整个系统执行的/sbin/init守护进程的一个程序。

在Unix和Linux系统上的“初始化”或“系统初始化”过程中有进程ID(PID)为“1”。也就是说,它是启动在系统引导时(忽略的initrd/ initramfs)装载的第一道工序。依据官方说法。Upstart是一个替代传统的Unix的“System V”的“init”制度的“INIT”。Upstart提供与传统的“初始化”系统同样的功能。但超越了原有的很多方面。

若是採用了Upstart方式的系统在启动时。会去运行/etc/init/下的众多.conf文件。这此文件里包括的即是服务或任务的运行方式。这些文件里就使用了基于Upstart事件的方法,比如ssh.conf,这是启动ssh服务的Upstart事件的配置文件;详细说明例如以下:



# ssh - OpenBSD Secure Shell server

#

# The OpenSSH server provides secure shell access to the system.



description    "OpenSSH server"



#表示在登录界面运行的时候进行此服务(sshd)的启动

start on desktop-session-start

#以下这句的意义是当系统在2、3、4、5这四种启动模式下或文件系统事件信号的情况下

#start on filesystem or runlevel [2345]

stop on runlevel [!2345]

#当服务或程序为停止状态时,为了让服务有持续性。则须要进行重新启动此服务

respawn

#重生极限计数间隔|无限

#Syntax:

#respawn limit COUNT INTERVAL | unlimited

#下面语句的意义为:重新启动的最大次数为10次 每次间隔5秒

respawn limit 10 5

umask 022



# 'sshd -D' leaks stderr and confuses things in conjunction with 'console log'

console none

#pre-start:

#Syntax:

#pre-start exec|script

#在进行任务之前进行预处理的块

#下面是推断sshd是否可运行 文件sshd_not_to_be_run是否存在等

pre-start script

    test -x /usr/sbin/sshd || { stop; exit 0; }

    test -e /etc/ssh/sshd_not_to_be_run && { stop; exit 0; }

    test -c /dev/null || { stop; exit 0; }

    #能够在这里打印运行的时间。

    echo "`date` is start." > /home/wbc/sshdatatime.log

    #改动sshd的权限

    mkdir -p -m0755 /var/run/sshd

end script



# if you used to set SSHD_OPTS in /etc/default/ssh, you can change the

# 'exec' line here instead

exec /usr/sbin/sshd -D



Upstart參考:

http://upstart.ubuntu.com/cookbook/#what-is-upstart

重新启动系统后。服务启动时间是启动登录屏幕后的时间。相反,系统将开始启动该服务;

Upstart概述引导方法事件驱动的任务和服务的更多相关文章

  1. ng 通过factory方法来创建一个心跳服务

    <!DOCTYPE html> <html ng-app="myApp"> <head lang="en"> <met ...

  2. 概述:基于事件的优化方法 / 事件驱动优化 / Event-Based Optimization / EBO

    大家好,我是月出 本文基于这篇综述,介绍了 事件驱动优化(Event-Based Optimization, EBO). 事件驱动优化,是一种建模现实场景.做优化的思路,理论和 MDP / 强化学习很 ...

  3. windows7 ubuntu双系统采用windows7 mbr引导方法

    在安装有Windows7系统上的机器,安装用Ubuntu后,开机会自动用grub2 引导.对于使用双系统的用户来说,用MBR和grub2都差不多,但是,我的机器上有三个系统,需要用MBR来引导变色龙, ...

  4. Java基础知识强化82:Random类概述和方法使用

    1. Random类 public class Random extends Object implements Serializable: 此类的实例用于生成伪随机数流.此类使用48位种子. (1) ...

  5. 双系统重装win7和ubuntu修复win7引导方法介绍(来源百度经验)

    很多朋友喜欢为电脑安装win7和ubuntu双系统,当我们重装双系统时,可能会出现win7引导不见的情况,接下来就告诉大家双系统重装win7和ubuntu修复win7引导的方法. 1.win7和ubu ...

  6. Java基础知识强化89:Date类之Data类概述及其方法

    1. Date类概述 类Date表示特定的瞬间,精确到毫秒 2. 构造方法 public Date():根据当前默认毫秒值创建日期对象 public Date(long date):根据给定的毫秒值创 ...

  7. 一步步优化JVM一:概述、方法及需求

    现代JVM是一个具有灵活适应各种应用能力的软件,尽管很多应用能够在JVM的默认配置下运行良好,但是有些应用还是需要优化JVM配置以达到其性能要求.由于各种各样的应用能够运行在现在JVM上面,所以大量的 ...

  8. angular2系列教程(十)两种启动方法、两个路由服务、引用类型和单例模式的妙用

    今天我们要讲的是ng2的路由系统. 例子

  9. 在Ubuntu为Android硬件抽象层(HAL)模块编写JNI方法提供Java访问硬件服务接口(老罗学习笔记4)

    在上两篇文章中,我们介绍了如何为Android系统的硬件编写驱动程序,包括如何在Linux内核空间实现内核驱动程序和在用户空间实现硬件抽象层接口.实现这两者的目的是为了向更上一层提供硬件访问接口,即为 ...

随机推荐

  1. Java ,单实例 多线程 ,web容器,servlet与struts1-2.x系列,线程安全的解决

    1.Servlet是如何处理多个请求同时访问呢? 回答:servlet是默认采用单实例,多线程的方式进行.只要webapp被发布到web容器中的时候,servlet只会在发布的时候实例化一次,serv ...

  2. PYTHON小CASE

    import os import time source = ['C:\\py\\', 'C:\\work\\'] target_dir = 'C:\\backup' today = target_d ...

  3. 【codeforce 219D】 Choosing Capital for Treeland (树形DP)

    Choosing Capital for Treeland Description The country Treeland consists of n cities, some pairs of t ...

  4. PHP数组和Json之间的互相转换 json_encode() 和 json_decode()

    之所以要用到Json,很多时候是因为使用ajax对象时,程序与JS函数之间的数据交互.因为JS不认识PHP中的数组,PHP也不认识JS中的数组或对象.Json很好的解决了这个问题. Json简介 JS ...

  5. BroadCastReceiver中耗时操作导致ANR

    現象:廣播接收器中進行耗時的I/O操作導致ANR. 查資料發現每次广播到来时 , 会重新创建 BroadcastReceiver 对象 , 并且调用 onReceive() 方法 , 执行完以后 该对 ...

  6. 转:Java图形化界面设计——布局管理器之FlowLayout(流式布局)其他请参考转载出处网址

    http://blog.csdn.net/liujun13579/article/details/7771191 前文讲解了JFrame.JPanel,其中已经涉及到了空布局的使用.Java虽然可以以 ...

  7. wpf 创建动画三种方式

    动画类型 : 故事版,CompositionTarget,DispachTime 那么到此,三种动态创建动画的方法都已经详细介绍过了,大家可能会有种感觉,比较钟情于第一种WPF/Silverlight ...

  8. CENTOS6.5 teamviewer安装

    官网https://www.teamviewer.com/en/download/linux.aspx下载此版本:RedHat, CentOS, Fedora, SUSE

  9. UVA_303_Pipe_(计算几何基础)

    描述 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=5&page ...

  10. tomcat6 配置SSI 支持.shtml文件

    一.修改tomcat-6.0.36\conf\server.xml 文件: 把文件里 ssi 相关的 servlet .servlet-mapping .filter .filter-mapping注 ...