系统的启动模式(启动级别)的改动---使用upstart启动机制的

/*********************************************************************
 * Author  : Samson
 * Date    : 06/18/2014
 * Test platform:
 *              Mint 15
 *              GNU bash, version 4.2.45
 * *******************************************************************/

关于在基于upstart机制下的系统的启动模式(大多数都叫它启动级别)的改动,在Mint中主要有三种方式进行改动,由于upstart模式还是考虑了对system V等老系统的兼容的,所以在/etc/init下有一个名为:rc-sysinit.conf的文件,此文件里对三种改动方法已经进行了说明:

0)、改动环境变量:env DEFAULT_RUNLEVEL=2  图形界面的一般都是为2  若是须要单用户登录的话,那么此值设置为1就可以;

1)、创建/etc/inittab文件,并依照老的system V的配置方式进行配置,system V的详细怎样设置,在网上一大把资料,请自寻找并自取了解了;

2)、在kernel command-line中输入相应的启动模式值,读取这个命令行的地方为文件: /proc/cmdline ,而这个文件的所相应的值一般为 BOOT_IMAGE=/boot/vmlinuz-3.14.× root=UUID=5d5daf1d-cf45-4f1c-b28d-e517a32dcf28 ro quiet splash vt.handoff=7  类似的行,这行相应的是在grub启动选项中进行填入的,能够在系统启动的时候按e键进行配置,仅仅要存在-s或0~6的数值,那么DEFAULT_RUNLEVEL的值将会改变为相应的值,然后会使用telinit 
${DEFAULT_RUNLEVEL}进行相应启动模式的启动;

关于upstart事件驱动的介绍可參考:

http://blog.csdn.net/yygydjkthh/article/details/24796755

主要代码在rc-sysinit.conf中的例如以下代码中体现:

script

# Check for default runlevel in /etc/inittab

if [ -r /etc/inittab ]

then

eval "$(sed -nre ‘s/^[^#][^:]*:([0-6sS]):initdefault:.*/DEFAULT_RUNLEVEL="\1";/p‘ /etc/inittab || true)"

fi

# Check kernel command-line for typical arguments

for ARG in $(cat /proc/cmdline)

do

case "${ARG}" in

-b|emergency)

# Emergency shell

[ -n "${FROM_SINGLE_USER_MODE}" ] || sulogin

;;

[0123456sS])

# Override runlevel

DEFAULT_RUNLEVEL="${ARG}"

;;

-s|single)

# Single user mode

[ -n "${FROM_SINGLE_USER_MODE}" ] || DEFAULT_RUNLEVEL=S

;;

esac

done

# Run the system initialisation scripts

[ -n "${FROM_SINGLE_USER_MODE}" ] || /etc/init.d/rcS

# Switch into the default runlevel

telinit "${DEFAULT_RUNLEVEL}"

end script

系统的启动模式(启动级别)的改动---使用upstart启动机制的,布布扣,bubuko.com

时间: 2024-10-29 03:26:50

系统的启动模式(启动级别)的改动---使用upstart启动机制的的相关文章

系统的启动模式(启动级别)的修改---使用upstart启动机制的

/*********************************************************************  * Author  : Samson  * Date    : 06/18/2014  * Test platform:  *              Mint 15  *              GNU bash, version 4.2.45  * *************************************************

CentOS修改系统的默认启动模式为命令号界面

CentOS在安装桌面之后,将图形界面设置为默认模式,给PC内存带来较大压力,所以希望修改系统的默认启动模式为命令号界面,而不启动图形界面.方法如下: 1.以 root用户登录系统:或者 用su切换到超级用户模式: 2.修改/etc/inittab 文件: vi /etc/inittab 将最后一句: id:5:initdefault: 修改为: id:3:initdefault: 保存退出,重启系统即可. 3.原因及解释: Linux有7种运行级别:如下所示 # Default runleve

Android Activity启动模式

在Android的联机文档中,有对Activity的简单介绍,现在通过编写代码对Activity的启动模式做一个深入的理解.在配置文件AndroidManifest.xml中,activity元素的android:launchMode属性用来配置对应Activity的启动模式,目前有以下四种启动模式:1.standard2.singleTop3.singleTask4.singleInstance如果不对Activity设置启动模式,默认就是standard模式 一.standard 请看以下代

centos/redhat/fedora 7 设置默认开机启动模式

背景: 最近由于工作需要(开始研究openstack,docker等),在经历了centos 5-6版本的使用习惯洗礼后,习惯的使用命令 'sed -i 's#id:5:initdefault:#id:3:initdefault:#' /etc/inittab', 然后reboot重启....发现还是正常进入图形界面模式(init 5). linux常用启动级别: 0 - 表示关闭系统(千万不要把默认设置成0哦!)        1 - 单用户模式        2 - 多用户模式,没有NFS服

android学习笔记 activity生命周期&任务栈&activity启动模式

activity生命周期 完整生命周期 oncreate->onstart->onresume->onpause->onstop->ondestory 使用场景:应用程序退出自动保存数据 ondestory oncreate 可视生命周期 onstart->onresume->onpause->onstop 使用场景:应用程序最小化 暂停的操作 onstop onstart 前台生命周期 onresume->onpause 界面用户仍然可见,但是失去焦

Android:图解四种启动模式 及 实际应用场景解说

在一个项目中会包括着多个Activity,系统中使用任务栈来存储创建的Activity实例,任务栈是一种"后进先出"的栈结构.举个栗子,若我们多次启动同一个Activity.系统会创建多个实例依次放入任务栈中.当按back键返回时,每按一次,一个Activity出栈,直到栈空为止.当栈中无不论什么Activity.系统就会回收此任务栈. 上面这个样例中的Activity并没有设置启动模式,你会发现多次启动同一个Activity.而系统却创建了多个实例,白白浪费内存,这样的情况Andro

Activity 的启动模式有4种,分别是standard、singleTop、singleTask、singleInstance

关于安卓部分知识 1.standar (标准启动模式) 这是Activity 的标准启动模式,也是 Activity 的默认启动模式.在这种模式下启动的Activity 可以被多次实例化,即在同一个任务栈种可以存在多个Activity实例,每个实例都会处理一个Intent 对象.如果ActivityA 的启动模式为standard,并且已经有一个ActivityA 被启动,在该 ActivityA中调用startActivity时会启动一个新的ActivityA 实例.栈的变化如下图: 如果Ac

任务栈 Activity的启动模式 Intent中的Flag taskAffinity

关于任务栈Task 栈的概念 栈(Stack)是一种常用的数据结构,栈只允许访问栈顶的元素,栈就像一个杯子,每次都只能取杯子顶上的东西,而对于栈就只能每次访问它的栈顶元素,从而可以达到保护栈顶元素以下的其他元素."先进后出"或"后进先出"就是栈的一大特点,先进入栈的元素总是要等到后进入栈的元素出栈以后才能出栈.递归就是利用到了系统栈,暂时保存临时结果,对临时结果进行保护. 栈的基本操作:压栈.弹栈 任务栈 Task简单的就是一组以栈的模式聚集在一起的Activity

Android Activity的4种启动模式详解(示例)

转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/5233269.html 先介绍下Android对Activity的管理,Android采用Task来管理多个Activity,当我们启动一个应用时,Android就会为之创建一个Task,然后启动这个应用的入口Activity(即<intent-filter.../>中配置为 MAIN和LAUNCHER的Activity). 因为Android并没有为Task提供API,因此我们无法真正去访问Task,只