busybox关机执行指定命令
2011-05-23 22:19
435 查看
这里主要是修改inittab
讲这个文件前呢,就要先知道,内核启动后会执行第一个init进程,这是所有进程的父进程,它会执行inittab,也就是说这是初始化的一个配置。
讲之前先抄下别人的文章解析一下
自定义Linux的启动与关闭过程(内置inittab详解)
对Linux系统的启动和关闭过程进行管理是系统管理员的必备技能之一。管理员必须要清楚系统中运行着哪些服务,如何增加新的服务,如何删除不必要的服务。本节向Linux管理员介绍自定义启动和关闭系统时涉及的文件。
一、 引导过程概览
当一个Linux系统引导后,Linux启动管理器(LILO)加载核心,核心首先被解压缩,显示设备被初始化,然后核心开始对系统中的硬件进行检查。当
发现硬件设备后,调入相应的模块以支持对硬件的访问。硬件检测完毕后,核心将以只读方式挂接根文件系统。假如根文件系统是完整的,根文件系统将以读写方式
重新挂接。
之后,核心将执行一个叫init的程序。Init执行后,系统就启动并开始运行。可以对Init进程进行配置,这可以通过/etc/inittab文件来完成。
/etc/inittab文件的语法格式如下:
id:run-level:acion:process [argument]
● 第一项是一个惟一的标志,用以区分inittab文件中不同条目。
● 第二项指定了该条目在哪种运行等级中应用。
● 第三项指定了采取的动作。
● 第四项是要运行的进程和其参数,可以在这里指定命令行参数Linux系统的运行等级是通过run-level指定的。在Linux系统中有7个运行等级:
● 0——挂起(不要将initdefault设置为此项)。
● 1——单用户模式。
● 2——多用户,没有连网的支持。
● 3——完全的多用户模式,具有连网的支持。
● 4——没有使用。
● 5——X11,多用户模式与网络支持。
● 6——重新启动(不要将initdefault的值设置为此项)。
在init配置这一行中,你可以指定多个运行状态。指定运行状态1和3下应用某操作的配置如下:
id:12:action:rocess [argument]
下面列出了系统运行状态可以使用的动作:
● respawn——当该进程终止时自动启动。
● wait——该进程只运行1次,init等待该进程,直到该进程结束。
● once——该进程只运行1次。
● boot——该进程在系统启动时运行,不考虑系统的运行等级。
● bootwait——该进程在系统启动时运行,init等待该进程,直到该进程结束。
● off——不采取任何动作。用来使一条配置失效,而不用删除该条配置。可以代替表示注释的#号
● ondemand——通常没有使通常不使用。
● initdefault——指定系统的默认运行等级。运行的进程一列被忽略。
● sysinit——该进程在系统启动时运行一次。Sysinit的动作要比boot和bootwait的优先级高。
● powerwait——init进程收到SIGPWR信号下运行的进程。UPS电源在电源发生问题时会向该进程发送SIGPWR信号。Init进程会等待该进程,直到该进程终止。
● powerfail——同powerwait相同。但是init不会等待进程的终止。
● powerokwait——当init进程收到SIGPWR信号,并且/etc/powerstatus文件包括有OK的文本内容。/etc/powerstatus文件通常由UPS监视软件创建,用来显示电源问题已经解决。
● ctrlaltdel——当init进程收到SIGINT信号时做的动作。
● kbrequest——当init进程收到键盘信号时做的动作。
-------------------------------------------------------
看回inittab
# /etc/inittab
::sysinit:/etc/init.d/rcS
::askfirst:-/bin/sh
::once:/usr/sbin/telnetd -l /bin/login
::ctrlaltdel:/sbin/reboot
::shutdown:/usr/bin/preshutdown
其中最后一行是加上去的,也就是当执行关机或者重启会调用preshutdown,这是自己写的脚本,这样就可以实现在关机前执行自定义脚本
讲这个文件前呢,就要先知道,内核启动后会执行第一个init进程,这是所有进程的父进程,它会执行inittab,也就是说这是初始化的一个配置。
讲之前先抄下别人的文章解析一下
自定义Linux的启动与关闭过程(内置inittab详解)
对Linux系统的启动和关闭过程进行管理是系统管理员的必备技能之一。管理员必须要清楚系统中运行着哪些服务,如何增加新的服务,如何删除不必要的服务。本节向Linux管理员介绍自定义启动和关闭系统时涉及的文件。
一、 引导过程概览
当一个Linux系统引导后,Linux启动管理器(LILO)加载核心,核心首先被解压缩,显示设备被初始化,然后核心开始对系统中的硬件进行检查。当
发现硬件设备后,调入相应的模块以支持对硬件的访问。硬件检测完毕后,核心将以只读方式挂接根文件系统。假如根文件系统是完整的,根文件系统将以读写方式
重新挂接。
之后,核心将执行一个叫init的程序。Init执行后,系统就启动并开始运行。可以对Init进程进行配置,这可以通过/etc/inittab文件来完成。
/etc/inittab文件的语法格式如下:
id:run-level:acion:process [argument]
● 第一项是一个惟一的标志,用以区分inittab文件中不同条目。
● 第二项指定了该条目在哪种运行等级中应用。
● 第三项指定了采取的动作。
● 第四项是要运行的进程和其参数,可以在这里指定命令行参数Linux系统的运行等级是通过run-level指定的。在Linux系统中有7个运行等级:
● 0——挂起(不要将initdefault设置为此项)。
● 1——单用户模式。
● 2——多用户,没有连网的支持。
● 3——完全的多用户模式,具有连网的支持。
● 4——没有使用。
● 5——X11,多用户模式与网络支持。
● 6——重新启动(不要将initdefault的值设置为此项)。
在init配置这一行中,你可以指定多个运行状态。指定运行状态1和3下应用某操作的配置如下:
id:12:action:rocess [argument]
下面列出了系统运行状态可以使用的动作:
● respawn——当该进程终止时自动启动。
● wait——该进程只运行1次,init等待该进程,直到该进程结束。
● once——该进程只运行1次。
● boot——该进程在系统启动时运行,不考虑系统的运行等级。
● bootwait——该进程在系统启动时运行,init等待该进程,直到该进程结束。
● off——不采取任何动作。用来使一条配置失效,而不用删除该条配置。可以代替表示注释的#号
● ondemand——通常没有使通常不使用。
● initdefault——指定系统的默认运行等级。运行的进程一列被忽略。
● sysinit——该进程在系统启动时运行一次。Sysinit的动作要比boot和bootwait的优先级高。
● powerwait——init进程收到SIGPWR信号下运行的进程。UPS电源在电源发生问题时会向该进程发送SIGPWR信号。Init进程会等待该进程,直到该进程终止。
● powerfail——同powerwait相同。但是init不会等待进程的终止。
● powerokwait——当init进程收到SIGPWR信号,并且/etc/powerstatus文件包括有OK的文本内容。/etc/powerstatus文件通常由UPS监视软件创建,用来显示电源问题已经解决。
● ctrlaltdel——当init进程收到SIGINT信号时做的动作。
● kbrequest——当init进程收到键盘信号时做的动作。
-------------------------------------------------------
看回inittab
# /etc/inittab
::sysinit:/etc/init.d/rcS
::askfirst:-/bin/sh
::once:/usr/sbin/telnetd -l /bin/login
::ctrlaltdel:/sbin/reboot
::shutdown:/usr/bin/preshutdown
其中最后一行是加上去的,也就是当执行关机或者重启会调用preshutdown,这是自己写的脚本,这样就可以实现在关机前执行自定义脚本
相关文章推荐
- Socket一对多。。利用Socket发送命令给客户机让其执行关机命令
- linux下用find命令执行类似windows查找包含指定内容的文件
- at命令_Linux at 命令用法详解:在指定时间执行一个任务
- windbg指定SOS版本,执行扩展命令报错
- expect脚本同步文件,expect脚本指定host和要同步的文件,构建文件分发系统,批量远程执行命令
- ansible指定ip执行命令
- 编译busybox1.16的时候,执行make命令,报错,错误信息:437 “mixed implicit and normal rules”,翻译为中文:混合的和隐含普通规则
- java 从指定行读文件,执行系统命令
- 开机 关机执行命令
- 《鸟哥的Linux私房菜 基础学习篇(第二版)》 读书笔记 第05章 启动关机、在线求助与执行命令的方式
- 跳过指定文件或目录不执行命令
- linux学习第七十篇:expect脚本同步文件,expect脚本指定host和要同步的文件,构建文件分发系统,批量远程执行命令
- 十七周四次课(11月30日) 20.31 expect脚本同步文件 20.32 expect脚本指定host和要同步的文件 20.33 构建文件分发系统 20.34 批量远程执行命令
- exec命令_Linux exec 命令用法详解:调用并执行指定的命令
- 使用redis-cli定时执行指定命令
- 执行系统命令并且将输出写到指定日志文件的shell脚本(1)
- 小黑的日常折腾-复制外部命令的可执行文件和依赖库文件到指定目录下的对应目录
- 关机时执行指定脚本
- 命令行进入android系统里执行linux命令的方法——busybox
- 开篇第一篇文章:启动Cmd执行指定的命令并返回执行的结果