Linux启动脚本

一、开机启动时自动运行程序

1, init是所有进程的顶层,init读取/etc/inittab配置
2, init调用执行/etc/inittab配置的/etc/rc.d/rc.sysinit脚本
3, rc.sysinit根据inittab执行/etc/rc?.d/目录下的各个脚本
4,大多数启动脚本放置在 /etc/rc.d/init.d下(/etc/init.d是到/etc/rc.d/init.d/的符号链接)

rc?.d中放置的是init.d中脚本的符号链接,命名格式是:
S{number}{name}
K{number}{name}

S开始的文件向脚本传递start参数
K开始的文件向脚本传递stop参数
number决定执行的顺序

其中有文件:S99local 为 ../rc.local(即/etc/rc.d/rc.local的符号连接)

二、Shell自动运行的脚本

Linux在登录和注销过程中,会按以下顺序先后自动执行几个重要的脚本文件:/etc/profile => [/etc/environment] => (~/.bash_profile | ~/.bash_login | ~/.profile)  =>  ~/.bashrc  =>  (/etc/bash.bashrc | /etc/bashrc) => ~/.bash_logout。
以下简要介绍这些脚本文件的运行时机和作用。
/etc/rc.local
Linux启动时执行的脚本。注意,这里指内核启动,发生在登录之前。
/etc/profile
当用户第一次登录时,该文件被执行。在该脚本中,又会调用执行/etc/profile.d目录下的所有脚本。
/etc/environment
建议用于设置全局环境变量,仅debain系列发行版(如Ubuntu)才有。
/etc/bash.bashrc | /etc/bashrc
当bash shell被打开时,该文件被执行。Redhat系列发行版是bashrc,Debian系列发行版是bash.bashrc。
~/.bash_profile | ~/.bash_login | ~/.profile
用于设置专属于某用户的Shell信息,当用户第一次登录时,该文件被执行一次。默认情况下,他设置一些环境变量,然后调用执行用户的~/.bashrc文件。注意,bash启动时按以上列出的顺序查找这三个文件,但只执行最先找到的脚本文件。
~/.bashrc
用于设置专属于某用户的Shell信息,当登录时以及每次打开新的shell时,该文件被执行。 ~/.bash_profile 是交互式、login 方式进入 bash 运行的,~/.bashrc 是交互式 non-login 方式(终端窗口)进入 bash 运行的。
~/.bash_logout
当注销或退出系统时,执行该文件。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lazyclough

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值