1.Linux啟動流程
Centos6
Centos7
Centos6與Centos7有什么區(qū)別?
2.Linux運(yùn)行級別
1.什么是運(yùn)行級別搀继,運(yùn)行級別就是操作系統(tǒng)當(dāng)前正在運(yùn)行的功能級別
System V init運(yùn)行級別 systemd目標(biāo)名稱 作用
0 runlevel0.target, poweroff.target 關(guān)機(jī)
1 runlevel1.target, rescue.target 單用戶模式
2 runlevel2.target, multi-user.target
3 runlevel3.target, multi-user.target 多用戶的文本界面
4 runlevel4.target, multi-user.target
5 runlevel5.target, graphical.target 多用戶的圖形界面
6 runlevel6.target, reboot.target 重啟
2.如何調(diào)整系統(tǒng)啟動的運(yùn)行級別点骑?systemd使用'targets'而不是runlevels紧索。默認(rèn)情況下尾膊,有兩個主要目標(biāo):
multi-user.target:類似于運(yùn)行級別3
graphical.target: 類似于運(yùn)行級別5
3.Linux systemd
1.systemd的由來
Linux一直以來都是采用init進(jìn)程作為祖宗進(jìn)程滋觉,但是init有兩個缺點(diǎn):
1、啟動時間長。Init進(jìn)程是串行啟動,只有前一個進(jìn)程啟動完,才會啟動下一個進(jìn)程稚新。
2、啟動腳本復(fù)雜噪裕,初始化完成后系統(tǒng)會加載很多腳本,腳本都會處理各自的情況趣席,這會讓腳本多而復(fù)雜。
Centos5 是啟動速度最慢的癞志,串行啟動過程错洁,無論進(jìn)程相互之間有無依賴關(guān)系窿锉。
Centos6 相對啟動速度有所改進(jìn)仍稀。有依賴的進(jìn)程之間依次啟動而其他與之沒有依賴關(guān)系的則并行同步啟動千康。
Centos7 所有進(jìn)程無論有無依賴關(guān)系則都是并行啟動(當(dāng)然很多時候進(jìn)程沒有真正啟動而是只有一個信號或者說是標(biāo)記而已,在真正利用的時候才會真正啟動鸯隅。)
2.什么是systemd
systemd即為system daemon守護(hù)進(jìn)程户誓,systemd主要解決上文的問題而誕生碍彭,systemd的目標(biāo)是,為系統(tǒng)的啟動和管理提供一套完整的解決方案略就。
3.systemd的優(yōu)勢
1崔兴、最新系統(tǒng)都采用systemd管理(RedHat7,CentOS7,Ubuntu15等)
2鸟款、Centos7支持開機(jī)并行啟動服務(wù)蛛砰,顯著提高開機(jī)啟動效率罐栈。
3、Centos7關(guān)機(jī)只關(guān)閉正在運(yùn)行的服務(wù)泥畅,而Centos6全部都關(guān)閉一次荠诬。
4、Centos7服務(wù)的啟動與停止不在使用腳本進(jìn)行管理位仁,也就是/etc/init.d下不在有腳本柑贞。
5、Centos7使用systemd解決原有模式缺陷聂抢,比如原有service不會關(guān)閉程序產(chǎn)生的子進(jìn)程钧嘶。
3.systemd相關(guān)配置文件
/usr/lib/systemd/system/ #類似Centos6系統(tǒng)的啟動腳本,/etc/init.d/
/etc/systemd/system/ #類似Centos6系統(tǒng)的/etc/rc.d/rcN.d/
/etc/systemd/system/multi-user.target.wants/
4.systemd管理服務(wù)相關(guān)命令
systemctl管理服務(wù)的啟動琳疏、重啟有决、停止、重載空盼、查看狀態(tài)等常用命令
systemctl命令 | 作用 |
---|---|
systemctl start crond.service | 啟動服務(wù) |
systemctl stop crond.service | 停止服務(wù) |
systemctl restart crond.service | 重啟服務(wù) |
systemctl reload crond.service | 重新加載配置 |
systemctl status crond.servre | 查看服務(wù)運(yùn)行狀態(tài) |
systemctl is-active sshd.service | 查看服務(wù)是否在運(yùn)行中 |
systemctl mask crond.servre | 禁止服務(wù)運(yùn)行 |
systemctl unmask crond.servre | 取消禁止服務(wù)運(yùn)行 |
當(dāng)我們使用systemctl啟動一個守護(hù)進(jìn)程后书幕,可以通過sysytemctl status查看此守護(hù)進(jìn)程的狀態(tài)
狀態(tài) | 描述 |
---|---|
loaded | 服務(wù)單元的配置文件已經(jīng)被處理 |
active(running) | 服務(wù)持續(xù)運(yùn)行 |
active(exited) | 服務(wù)成功完成一次的配置 |
active(waiting) | 服務(wù)已經(jīng)運(yùn)行但在等待某個事件 |
inactive | 服務(wù)沒有在運(yùn)行 |
enabled | 服務(wù)設(shè)定為開機(jī)運(yùn)行 |
disabled | 服務(wù)設(shè)定為開機(jī)不運(yùn)行 |
static | 服務(wù)開機(jī)不啟動,但可以被其他服務(wù)調(diào)用啟動 |
systemctl 設(shè)置服務(wù)開機(jī)啟動我注、不啟動按咒、查看各級別下服務(wù)啟動狀態(tài)等常用命令
systemctl命令(7系統(tǒng)) | 作用 |
---|---|
systemctl enable crond.service | 開機(jī)自動啟動 |
systemctl disable crond.service | 開機(jī)不自動啟動 |
systemctl list-unit-files | 查看各個級別下服務(wù)的啟動與禁用 |
systemctl is-enabled crond.service | 查看特定服務(wù)是否為開機(jī)自啟動 |
systemctl daemon-reload | 創(chuàng)建新服務(wù)文件需要重載變更 |
CentOS7系統(tǒng), 管理員可以使用 systemctl 命令來管理服務(wù)器啟動與停止
#關(guān)機(jī)相關(guān)命令
systemctl poweroff #立即關(guān)機(jī),常用
#重啟相關(guān)命令
systemctl reboot #重啟命令,常用
systemctl的journalctl日志
journalctl -n 20 #查看最后20行
journalctl -f #動態(tài)查看日志
journalctl -p err #查看日志的級別
journalctl -u crond #查看某個服務(wù)的單元的日志
4丶單用戶模式-->(超級用戶權(quán)限的模式)
必須面對實(shí)體 服務(wù)器前
能正常引導(dǎo)進(jìn)入系統(tǒng)①配置文件錯誤導(dǎo)致無法啟動②忘記ROOT密碼 ( 快照 | 單用戶修改)
忘記root密碼
①重新啟動或開啟CentOS7.6系統(tǒng)后 按“e”進(jìn)入編輯界面
②按方向鍵向下鍵励七,找到以字符串“Linux16”開頭的行智袭,將光標(biāo)移動到該行的結(jié)尾,然后輸入“init=/bin/bash”
③ctrl +x 退出重啟
注:如果系統(tǒng)開了SElinux
①重新啟動或開啟CentOS7.6系統(tǒng)后 按“e”進(jìn)入編輯界面
②按方向鍵向下鍵掠抬,既在以字符串“Linux16”開頭的行吼野,將光標(biāo)移動到該行的結(jié)尾,然后輸入“init=/bin/bashenforcing=0”(前者作用讓系統(tǒng)登錄后加載bash解釋器两波,后者是且關(guān)閉Selinux)
③配置完成后瞳步,輸入“mount-o rw,remount/”命令是重新掛載根目錄為可寫狀態(tài)(rw表示可寫,remount是重新掛載)腰奋,在單用戶模式下默認(rèn)根文件系統(tǒng)是處于只讀狀態(tài)单起。
也可以在增加內(nèi)核參數(shù)時,把以字符串“Linux16”開頭的行中間部分的ro參數(shù)改為rw劣坊,則可以替代繁瑣的“mount-o rw,remount /”命令
④配置完后嘀倒,執(zhí)行exec /sbin/init命令重啟系統(tǒng)
如果selinux已經(jīng)開啟需要“touch /.autorelabel
⑤exec /sbin/init
5丶救援模式(CD光盤-->系統(tǒng))
①沒有內(nèi)核文件,只能使用救援模式進(jìn)入
把內(nèi)核文件移走
bios boot CD第一啟動
選3 選2
輸入1 回車
chroot /mnt/sysimage/
將文件移動到/boot/下
exit reboot
選三
本地啟動
②系統(tǒng)崩潰, 要保留重要的數(shù)據(jù)的時候
添加一個硬盤
新建一個目錄
格式化這個磁盤
掛載
寫數(shù)據(jù)
在加一個硬盤
進(jìn)救援模式
1
chroot /mnt/sysimage/
將文件復(fù)制到新的硬盤
③grub菜單出現(xiàn)問題, linux windows
輸入 1 c
chroot /mnt/sysimage/
1.使用grub修復(fù)
grub2-install /dev/sda
2.然后退出exit
3.最后重啟進(jìn)入系統(tǒng)reboot