一、Linux引導流程
1,引導流程
主機啟動,加載BIOS硬碟資訊-->讀取MBR的引導檔案(grub,lilo)--->引導linux核心-->運作第一個程序init(程序号永遠為1)--->進入相應的運作級别-->運作終端,輸入使用者名密碼
2,init程序與配置檔案
讀取/sbin/init,配置檔案/etc/inittab
18行:id:5:initdefault: 設定系統預設啟動的級别
32行:ctrlaltdel 三鍵重新開機
檔案文法
[設定項目]:[runleve]:[init操作行為]:[指令項目]
設定項目:最多4個字元,表示init工作項目,簡單說明
運作級别:0123456
init操作:initdefault 表示預設啟動級别
sysinit 初始化操作
ctrlaltdel 三鍵重新開機
wait 表示後面接的項目必須執行完畢才能繼續随後的操作
respawn 表示後面接的init認為主動重新啟動
指令項目:通常是一些腳本
#dmesg 檢視系統啟動資訊
/etc/rc.d/rc.sysinit 系統初始化
/etc/rc.d/rc 指定運作級别,加載終止相應系統服務
/etc/rc.d/rc.local 開機自動運作腳本
3,運作級别
0 關機
1 單使用者(single)
2 多使用者(但是不支援網絡)
3 伺服器模式
4 保留,未使用
5 圖形
6 重新開機
預設級别千萬不要設定為 0 4 6
顯示目前的運作級别
runlevel
N 5
N-------->上一次運作級别(N表示上一次沒級别,S--------->1)
5-------->目前運作級别
4,改變系統的運作級别
init [0-6]
5,服務狀态
chkconfig --list 顯示全部服務的啟動狀态
chkconfig --list xxx 顯示xxx服務的啟動狀态
開啟獨立服務(/etc/init.d/)
(1),chkconfig --level 0~6 服務名 動作(on/off)(下次啟動生效)
ntsysv --level 級别
(2),service 服務名 start/stop/restart/status(目前級别,目前生效)
/etc/init.d/服務名 start/stop/restart/status/reload(目前級别,目前生效)
開啟非獨立服務(/etc/xinetd.d/)
chkconfig 服務名 on/off
service xinetd restart
二、程序管理
1,程式(硬碟中的代碼)
程序(代碼執行産生)
2,檢視程序
ps 顯示某一時刻程序狀态資訊,靜态
-A和-e一樣 顯示所有的程序
ps aux
ps -elf 以長格式顯示系統中所有的程序資訊
ps -l ppid 父程序号
top 動态顯示
pgrep 根據特定條件
pstree 樹狀結構
3,程序控制
& 放入背景運作,運作在記憶體中的程序
ctrl +z 将目前的作業放入背景并暫停運作
jobs 檢視背景程序
fg 編号 把背景程序調到前台
bg 讓程式在背景運作
ctrl +c 終止目前正在運作的程序
4,終止程序
ps -e
kill -9 pid 強制殺掉程序
killall 程序名
pkill 程序名