Linux启动脚本
一、開機啟動時自動運行程序
1, init是所有進程的頂層,init讀取/etc/inittab配置
2, init調用執(zhí)行/etc/inittab配置的/etc/rc.d/rc.sysinit腳本
3, rc.sysinit根據inittab執(zhí)行/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決定執(zhí)行的順序
其中有文件:S99local 為 ../rc.local(即/etc/rc.d/rc.local的符號連接)
二、Shell自動運行的腳本
Linux在登錄和注銷過程中,會按以下順序先后自動執(zhí)行幾個重要的腳本文件:/etc/profile => [/etc/environment] => (~/.bash_profile | ~/.bash_login | ~/.profile)? =>? ~/.bashrc? =>? (/etc/bash.bashrc | /etc/bashrc) => ~/.bash_logout。
以下簡要介紹這些腳本文件的運行時機和作用。
/etc/rc.local
Linux啟動時執(zhí)行的腳本。注意,這里指內核啟動,發(fā)生在登錄之前。
/etc/profile
當用戶第一次登錄時,該文件被執(zhí)行。在該腳本中,又會調用執(zhí)行/etc/profile.d目錄下的所有腳本。
/etc/environment
建議用于設置全局環(huán)境變量,僅debain系列發(fā)行版(如Ubuntu)才有。
/etc/bash.bashrc | /etc/bashrc
當bash shell被打開時,該文件被執(zhí)行。Redhat系列發(fā)行版是bashrc,Debian系列發(fā)行版是bash.bashrc。
~/.bash_profile | ~/.bash_login | ~/.profile
用于設置專屬于某用戶的Shell信息,當用戶第一次登錄時,該文件被執(zhí)行一次。默認情況下,他設置一些環(huán)境變量,然后調用執(zhí)行用戶的~/.bashrc文件。注意,bash啟動時按以上列出的順序查找這三個文件,但只執(zhí)行最先找到的腳本文件。
~/.bashrc
用于設置專屬于某用戶的Shell信息,當登錄時以及每次打開新的shell時,該文件被執(zhí)行。 ~/.bash_profile 是交互式、login 方式進入 bash 運行的,~/.bashrc 是交互式 non-login 方式(終端窗口)進入 bash 運行的。
~/.bash_logout
當注銷或退出系統(tǒng)時,執(zhí)行該文件。
?
總結
- 上一篇: Flex通用克隆(clone)方法
- 下一篇: 【转】mac os、linux及unix