Linux系統(tǒng)啟動(dòng)慢或無(wú)法啟動(dòng)的排查方法
1. 硬件檢查
- 確認(rèn)硬件狀態(tài):
檢查硬盤、內(nèi)存、CPU等是否正常,特別是硬盤是否存在壞道(使用
smartctl檢測(cè))。
smartctl -a /dev/sdX
- 拔插外部設(shè)備:
移除多余的外接設(shè)備(如USB設(shè)備)以排除外部硬件的影響。
- 檢查硬盤接口:
確認(rèn)BIOS/UEFI設(shè)置中硬盤的接口模式(如AHCI)。
2. GRUB階段
- 檢查GRUB配置文件:
在啟動(dòng)菜單中按
e編輯啟動(dòng)項(xiàng),確認(rèn)引導(dǎo)參數(shù)是否正確(如根分區(qū)、內(nèi)核版本等)。 - 引導(dǎo)日志查看:
啟動(dòng)時(shí)在GRUB中添加
debug或rescue模式,排查引導(dǎo)是否卡在某個(gè)環(huán)節(jié)。
3. 單用戶模式啟動(dòng)
- 進(jìn)入單用戶模式:
在GRUB中編輯啟動(dòng)項(xiàng),添加
single或init=/bin/bash。 - 文件系統(tǒng)檢查:
使用
fsck修復(fù)可能損壞的文件系統(tǒng)。
fsck /dev/sdXn
- 檢查磁盤掛載問(wèn)題:
如果
/etc/fstab中配置錯(cuò)誤,可能導(dǎo)致啟動(dòng)掛起??梢耘R時(shí)注釋可疑掛載項(xiàng)。
4. 系統(tǒng)服務(wù)排查
- 查看啟動(dòng)日志:
使用
journalctl查看系統(tǒng)日志,定位啟動(dòng)慢或失敗的具體服務(wù)。
journalctl -b
- 分析啟動(dòng)耗時(shí):
使用
systemd-analyze查看啟動(dòng)總耗時(shí)。
systemd-analyze
使用
systemd-analyze blame找出耗時(shí)最長(zhǎng)的服務(wù)。
systemd-analyze blame
- 禁用無(wú)用服務(wù):
對(duì)耗時(shí)過(guò)長(zhǎng)或無(wú)關(guān)的服務(wù)進(jìn)行禁用。
systemctl disable 服務(wù)名
5. 核心組件檢查
- 內(nèi)核模塊加載問(wèn)題:
檢查內(nèi)核模塊是否加載失敗或沖突(
dmesg查看內(nèi)核日志)。 - 驅(qū)動(dòng)兼容性問(wèn)題:
更新或回滾內(nèi)核,使用穩(wěn)定版本。
- 啟動(dòng)參數(shù)優(yōu)化:
在GRUB配置中優(yōu)化內(nèi)核啟動(dòng)參數(shù),例如
quiet、nomodeset、nosplash等。
6. 網(wǎng)絡(luò)配置
- DNS或網(wǎng)絡(luò)掛起:
網(wǎng)絡(luò)服務(wù)配置錯(cuò)誤可能導(dǎo)致啟動(dòng)卡住,檢查
/etc/resolv.conf和網(wǎng)絡(luò)服務(wù)狀態(tài)。 - 禁用網(wǎng)絡(luò)服務(wù)測(cè)試:
臨時(shí)禁用網(wǎng)絡(luò)相關(guān)服務(wù),排查是否因網(wǎng)絡(luò)導(dǎo)致啟動(dòng)慢。
systemctldisable NetworkManager
7. 文件系統(tǒng)和磁盤IO
- 磁盤性能問(wèn)題:使用
iotop或iostat檢查磁盤IO負(fù)載。- 安裝工具:
yum install sysstat -y
運(yùn)行:
iostat -x
- 過(guò)多文件碎片:
定期清理臨時(shí)文件目錄
/tmp和/var/tmp。
8. 排查啟動(dòng)腳本
- 查看啟動(dòng)過(guò)程輸出:
移除啟動(dòng)參數(shù)中的
quiet,讓內(nèi)核打印詳細(xì)啟動(dòng)日志。 - 逐步啟用服務(wù):
使用
systemctl單獨(dú)啟動(dòng)服務(wù),排查哪個(gè)服務(wù)導(dǎo)致問(wèn)題。
9. 日志分析
- 日志文件位置:
內(nèi)核日志:
/var/log/dmesg系統(tǒng)日志:
/var/log/messages或/var/log/syslog系統(tǒng)啟動(dòng)日志:
journalctl -b
- 關(guān)鍵錯(cuò)誤排查:
搜索錯(cuò)誤或超時(shí)關(guān)鍵字(如
error、failed、timeout)。
grep -i"error" /var/log/messages
10. 系統(tǒng)恢復(fù)措施
- 備份重要數(shù)據(jù):
使用LiveCD或救援模式掛載磁盤并備份數(shù)據(jù)。
- 重裝引導(dǎo)程序:
如果GRUB損壞,可以使用以下命令重新安裝:
grub2-install /dev/sdX grub2-mkconfig -o /boot/grub2/grub.cfg
- 重建initramfs:
如果initramfs損壞,可以重新生成:
dracut -f
11. 優(yōu)化建議
- 精簡(jiǎn)啟動(dòng)服務(wù):
關(guān)閉無(wú)用服務(wù),優(yōu)化開(kāi)機(jī)速度。
- 定期清理系統(tǒng):
清理舊日志和緩存文件,釋放磁盤空間。
- 升級(jí)或回滾系統(tǒng)組件:
使用穩(wěn)定版本的內(nèi)核、驅(qū)動(dòng)和關(guān)鍵服務(wù)。
以上就是Linux系統(tǒng)啟動(dòng)慢或無(wú)法啟動(dòng)的排查方法的詳細(xì)內(nèi)容,更多關(guān)于Linux啟動(dòng)慢或無(wú)法啟動(dòng)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
ubuntu20.04不顯示wifi圖標(biāo)的問(wèn)題及解決
文章主要介紹了在Ubuntu 20.04系統(tǒng)中安裝WiFi網(wǎng)卡驅(qū)動(dòng)的方法,包括通過(guò)軟件和更新、更換軟件源、激活BCM無(wú)線網(wǎng)卡等步驟2026-03-03
詳解Ubuntu16.04啟動(dòng)器圖標(biāo)異常解決方法
本篇文章主要介紹了詳解Ubuntu16.04啟動(dòng)器圖標(biāo)異常解決方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
解決Linux systemd服務(wù)啟動(dòng)失敗Main process exited,code
文章分析了使用nohup啟動(dòng)服務(wù)在systemd中遇到的問(wèn)題,并提供了解決方案,建議使用systemd管理服務(wù),創(chuàng)建.service文件,避免使用nohup,同時(shí)檢查日志、權(quán)限和環(huán)境變量,確保服務(wù)正常啟動(dòng)2026-04-04
VMware虛擬機(jī)安裝Centos操作系統(tǒng)的教程
這篇文章主要為大家詳細(xì)介紹了VMware虛擬機(jī)安裝Centos操作系統(tǒng)的教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
Linux系統(tǒng)下CUDA和cuDNN環(huán)境配置方式
這篇文章主要介紹了Linux系統(tǒng)下CUDA和cuDNN環(huán)境配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06
Apache?APISIX?Dashboard?未授權(quán)訪問(wèn)漏洞分析(CVE-2021-45232)
Apache?APISIX?是一個(gè)動(dòng)態(tài)、實(shí)時(shí)、高性能的?API?網(wǎng)關(guān),?提供負(fù)載均衡、動(dòng)態(tài)上游、灰度發(fā)布、服務(wù)熔斷、身份認(rèn)證、可觀測(cè)性等豐富的流量管理功能,這篇文章主要介紹了Apache?APISIX?Dashboard?未授權(quán)訪問(wèn)漏洞(CVE-2021-45232),需要的朋友可以參考下2023-03-03

