网站黄色在线观看视频,男人和女人操逼有免费的视频吗2018高清,91熟女丨老女人丨高潮丰满,丝袜高潮流白浆潮喷在线播放

中國站

中國站

國際版

聯(lián)系我們

400-002-9968

售前咨詢

售后服務

注冊 登錄

博客 > Linux知識:Linux常見故障的排查和修復

Linux知識:Linux常見故障的排查和修復

  • 標簽:
  • Linux
  • Linux系統(tǒng)
  • Linux故障排查
  • Linux故障解決方法

瀏覽量:3178次評論:0次

作者:銳成網(wǎng)絡整理時間:2024-08-06 15:19:42

我們在使用Linux時,偶爾會遇到一些故障,比如系統(tǒng)無法啟動、系統(tǒng)網(wǎng)絡故障、MBR扇區(qū)故障等,出現(xiàn)這些故障的原因各不相同,解決方法也不同,以下是Linux常見故障的排查和修復,僅供大家參考。

一、系統(tǒng)故障

No.1 linux系統(tǒng)無法啟動

原因1:文件系統(tǒng)配置不當,比如/etc/fstab文件等配置錯誤或丟失,導致系統(tǒng)錯誤無法啟動。一般是人為修改錯誤或者文件系統(tǒng)故障。

排查方法:系統(tǒng)配置/etc/fstab錯誤或丟失而無法啟動,當啟動的時候,出現(xiàn)starting system logger后停止了;

解決方法:想辦法恢復/etc/fstab文件,利用linux rescue修復模式登錄系統(tǒng),從而獲取掛載點和分區(qū)信息,重構(gòu)/etc/fstab文件。

原因2:非法關(guān)機,導致root文件系統(tǒng)破壞,也就是linux根分區(qū)破壞,系統(tǒng)無法正常啟動。

排查方法:

Linux下普遍采用的是ext3文件系統(tǒng),ext3是一個具有日志記錄功能的日志文件系統(tǒng),可以進行簡單的容錯和恢復,但是在一個高負荷讀寫的ext3文件系統(tǒng)下,如果突然發(fā)生掉電,就很有可能發(fā)生文件系統(tǒng)內(nèi)部結(jié)構(gòu)不一致,導致文件系統(tǒng)破壞。

Linux在啟動時,會自動去分析和檢查系統(tǒng)分區(qū),如果發(fā)現(xiàn)文件系統(tǒng)有簡單的錯誤,會自動修復,如果文件系統(tǒng)破壞比較嚴重,系統(tǒng)無法完成修復時,系統(tǒng)就會自動進入單用戶模式下或者出現(xiàn)一個交互界面,提示用戶介入手動修復,現(xiàn)象類似下面所示:

checking root filesystem
/dev/sdb5 contains a file system with errors, check forced
/dev/sdb5:
Unattached inode 68338812
/dev/sdb5: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY
(i.e., without -a or -p options)
FAILED
/contains a file system with errors check forced
an eror occurred during the file system check
*dropping you to a shell;the system will reboot
when you leave the shell
Press enter for maintenance
(or type Control-D to continue):
give root password for maintenance

從這個錯誤可以看出,系統(tǒng)根分區(qū)文件系統(tǒng)出現(xiàn)了問題,

系統(tǒng)在啟動時無法自動修復,然后進入到了一個交互界面,提示用戶進行系統(tǒng)修復。

這個問題發(fā)生的機率很高,引起這個問題的主要原因就是系統(tǒng)突然掉電,引起文件系統(tǒng)結(jié)構(gòu)不一致。一般情況下解決此問題的辦法是采用fsck命令,進行強制修復。

解決方法:

根據(jù)上面的錯誤提示,當按下“Control-D”組合鍵后系統(tǒng)自動重啟,當輸入root密碼后進入系統(tǒng)修復模式,在修復模式下,可以執(zhí)行fsck命令,具體操作過程如下:

 

[root@localhost /]#umount /dev/sdb5
[root@localhost /]#fsck .ext3 -y  /dev/sdb5
e2fsck 1.39 (29-May-2006)
/ contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Inode 6833812 ref count is 2, should be 1.  Fix? yes
Unattached inode 6833812
Connect to /lost+found? yes
Inode 6833812 ref count is 2, should be 1.  Fix? yes
Pass 5: Checking group summary information
Block bitmap differences:  -(519--529) -9273
Fix? yes…… ……
/: * FILE SYSTEM WAS MODIFIED **
/: 19/128520 files (15.8% non-contiguous), 46034/514048 blocks

需要注意的是,在執(zhí)行fsck的時候,一定要先卸載要修復的分區(qū),然后再執(zhí)行修復操作!

原因3:linux內(nèi)核文件丟失或者崩潰,從而無法啟動,也可能是因為內(nèi)核升級錯誤或者內(nèi)核存在bug。

這種情況一般linux系統(tǒng)啟動會報錯找不到內(nèi)核文件,而內(nèi)核文件存儲在/boot分區(qū),主要包括內(nèi)核文件和初始化文件:

1、vmlinuz:內(nèi)核鏡像文件,包含內(nèi)核代碼和數(shù)據(jù)

顯示error: file'/vmlinuz'not found

解決方案:

a. 使用可啟動修復介質(zhì)啟動系統(tǒng),并掛載系統(tǒng)磁盤的/boot分區(qū);

b. 從安裝介質(zhì)或系統(tǒng)備份中提取vmlinuz內(nèi)核文件,復制到/boot分區(qū);

c. 更新引導配置(grub.cfg),將menuentry塊中的linux行指向vmlinuz內(nèi)核文件;

d. 重啟系統(tǒng),在引導菜單選擇更新后的菜單項啟動系統(tǒng)。

2、initrd/initramfs:初始化RAM磁盤,包含啟動時需要的模塊和驅(qū)動

顯示error: file'/initrd.img'not found

解決方案:

a. 參考內(nèi)核文件丟失的解決步驟a,掛載/boot分區(qū)和獲取initrd.img文件;

b. 將initrd.img文件復制到/boot分區(qū);

c. 更新grub.cfg,找到initrd相關(guān)行,將其指向新文件;

d. 重啟系統(tǒng),啟動更新后的菜單項。

原因4:硬件故障,比如主板、電源、硬盤等出現(xiàn)問題,導致linux無法啟動。

解決方法:一般來說由硬件造成的故障,只需更換硬件設(shè)備即可解決。

No.2 linux系統(tǒng)網(wǎng)絡故障

排查1:檢查網(wǎng)絡硬件

檢查網(wǎng)絡故障,首先要排除網(wǎng)絡硬件設(shè)備是否存在問題。比如網(wǎng)卡,網(wǎng)線,路由器,交換機等設(shè)備是否正常。

這些是網(wǎng)絡正常運行的基本條件,如果發(fā)現(xiàn)某些設(shè)備出現(xiàn)故障,只需更換硬件即可解決問題。

排查2:檢查網(wǎng)卡是否正常工作

1、檢查網(wǎng)卡是否正常加載

可以通過 ifconfig 命令判斷網(wǎng)卡是否正常加載。如果通過 ifconfig 可以顯示網(wǎng)絡接口的配置信息,表示系統(tǒng)找到網(wǎng)卡驅(qū)動程序,網(wǎng)卡加載正常;

解決方法:如果發(fā)現(xiàn)問題網(wǎng)卡,我們可以使用 ethtool 工具查看問題網(wǎng)卡的具體狀態(tài)信息

(注意:Speed / Link deteced 等字段 )

2、檢查網(wǎng)卡IP設(shè)置是否正確

接下來就要檢查網(wǎng)卡的軟件設(shè)定,比如IP是否配置,配置是否正確,確保IP的配置和局域網(wǎng)其它計算機配置沒有沖突。

排查3:檢查局域網(wǎng)內(nèi)主機能否互連

檢查網(wǎng)絡之間的連通是否存在故障,可以先通過ping命令測試局域網(wǎng)主機之間的連通性,然后ping網(wǎng)關(guān),檢測主機到網(wǎng)關(guān)的通信是否正常。

排查4:檢查系統(tǒng)路由表信息是否正確

檢查系統(tǒng)路由表狀態(tài)是處理網(wǎng)絡故障的一種很重要的方法。很多時候都是 ip 地址沒有配錯,網(wǎng)卡也正常加載但是路由配置不正確,而導致網(wǎng)絡問題的出現(xiàn)。

因此需要檢查系統(tǒng)的路由表設(shè)置是否正確,如果一個linux系統(tǒng)有兩塊網(wǎng)卡,同時兩塊網(wǎng)卡設(shè)置的IP不在一個網(wǎng)段,要特別注意系統(tǒng)路由表的設(shè)置。例如下面這個系統(tǒng)的網(wǎng)絡接口信息:

Linux知識:Linux常見故障的排查和修復

 

從上面輸出可知,本系統(tǒng)有兩塊網(wǎng)卡,分別配置不同網(wǎng)段的IP地址,假定eth0通過映射的方式對外提供ssh連接服務,而eth1僅供局域網(wǎng)主機之間共享數(shù)據(jù)使用。

現(xiàn)在的問題是,外界無法ssh遠程登錄到此系統(tǒng),而網(wǎng)卡加載沒有問題,網(wǎng)卡IP設(shè)置也沒問題,接下來看看此系統(tǒng)的路由設(shè)置:

Linux知識:Linux常見故障的排查和修復

 

至此問題已經(jīng)基本排查出來了:從route的輸出可知,linux的缺省路由是192.168.200.1,而192.168.200段的IP僅僅供局域網(wǎng)主機之間共享數(shù)據(jù)使用,沒有連接出去的訪問權(quán)限,因而,外界無法連接到linux系統(tǒng)。

解決方法:刪除192段的缺省路由,然后增加10段的缺省路由即可:

[root@webserver ~]# route delete default

[root@webserver ~]#route add default gw 10.10.1.254

此時外界就可以通過ssh服務遠程連接到linux系統(tǒng)了。

排查5:檢查DNS解析

在Linux系統(tǒng)中,有兩個文件用來指定系統(tǒng)到哪里尋找相關(guān)域名解析的庫。分別是文件/etc/host.conf和/etc/nsswitch.conf。

/etc/host.conf文件指定系統(tǒng)如何解析主機名,Linux通過域名解析庫來獲得主機名對應的IP地址。

下面是RedHat Linux安裝后缺省的/etc/host.conf內(nèi)容:

order hosts,bind

其中,order指定主機名查詢順序,這里表示首先查找/etc/hosts文件對應的解析,如果沒有找到對應的解析,接著就根據(jù)/etc/resolve.conf指定的域名服務器進行解析。

/etc/nsswitch.conf文件是由SUN公司開發(fā)的,用于管理系統(tǒng)中多個配置文件查詢的順序,由于nsswich.conf提供了更多的資源控制方式,nsswich.conf文件現(xiàn)在已經(jīng)基本取代了hosts.conf,雖然LINUX系統(tǒng)中默認這兩個文檔都存在,但實際上起作用的是 nsswitch.conf文件。

nsswitch.conf文件每行的配置都以一個關(guān)鍵字開頭,后跟冒號,緊接著是空白,然后是一系列方法的列表。例如這段信息:

hosts: files dns

表示系統(tǒng)首先查詢主機庫文件,如果沒有找到對應的解析,接著會去DNS配置文件指定的DNS服務器進行解析。

清楚了linux下域名解析的原理和過程,我們就可以根據(jù)這兩個文件的設(shè)定,確定解析的順序,從而判斷出域名解析可能出現(xiàn)的問題。

排查6:檢查相關(guān)服務是否開啟

在一個應用出現(xiàn)故障時,必須要檢測服務本身。比如服務是否開啟,配置是否正確等。

檢查服務是否正確打開,分為兩步,第一步是查看服務的端口是否打開:

例如,我們不能用root用戶ssh登錄到192.168.60.133這臺linux服務器,首先檢查sshd服務的22端口是否打開:

[root@localhost init.d]# telnet 192.168.60.133 22SSH-2.0-Open

SSH_4.3

這個輸出表示192.168.60.133的22端口對外開放,或者可以說sshd服務是處于打開狀態(tài)。如果沒有任何輸出,可能是服務沒有啟動,或者服務端口被屏蔽。也可以在服務器上通過netstat命令檢查22端口是否打開:

Linux知識:Linux常見故障的排查和修復

 

可以看到,22端口在服務器上是打開的,同時,服務器上打開的還有3306、80端口。

接著進行第二步的檢查,既然服務已經(jīng)打開,可能是sshd服務配置的問題,檢查sshd服務配置文件/etc/ssh/sshd_config是否正確,發(fā)現(xiàn)有下面一行信息:

PermitRootLogin no

由此可知是ssh服務端配置文件限制了root用戶不能登錄系統(tǒng),如果需要root登錄系統(tǒng),只需更改為如下即可:

PermitRootLogin yes

到這里為止,我們通過對端口和服務配置文件的層層檢查,最終找到了問題的根源。需要說明的是,這里的重點不是講述如何讓root登錄linux系統(tǒng),而是要通過這個例子學會處理類似問題的思路和方法。

排查7:檢查訪問權(quán)限是否打開

1、檢查系統(tǒng)防火墻 iptables的狀態(tài)

當某些服務不能訪問時,一定要檢查是否被linux本機防火墻iptables屏蔽了,可以通過iptables -L指令查看iptables的配置策略。

例如我們不能訪問某臺linux服務器提供的www服務,通過檢查,系統(tǒng)網(wǎng)絡、域名解析都正常,并且服務也正常啟動,然后檢查了服務器的iptables策略配置,信息如下:

Linux知識:Linux常見故障的排查和修復

 

從上面的輸出可知,這個linux服務器僅僅設(shè)置了預設(shè)策略,而致命的是將INPUT鏈和OUTPUT鏈都設(shè)置為DROP,也就是所有外部數(shù)據(jù)不能進入服務器,服務器數(shù)據(jù)也不能出去,這樣的設(shè)置相當于沒有網(wǎng)絡。為了能訪問這臺服務器提供的www服務,增加兩條策略即可:

Linux知識:Linux常見故障的排查和修復

 

這樣一來,internet上的其他人就能訪問我們的www服務了。

2、檢查 SELinux 是否打開

SELinux是個系統(tǒng)級的安全防護工具,可以最大限度的保障Linux系統(tǒng)的安全。但是selinux有時也會給linux下軟件 的運行帶來一些問題,這些問題大部分是對selinux不了解造成的。

為了迅速定位問題,最簡單的方法是先關(guān)閉selinux,然后測試軟件運行是否正常,這不是個好方法,但是對于判斷問題往往是很有用的,selinux是個很好的安全訪問控制軟件,可是如果你還不能熟練運用selinux訪問控制策略的話,還是建議將它暫時關(guān)閉,等到對linux有了更深入的認識后,再開啟selinux不失為一個明智的策略。

No.3 MBR扇區(qū)故障

故障現(xiàn)象:

1、找不到引導程序,啟動中斷

2、無法加載操作系統(tǒng),開機后黑屏

故障原因:

1、病毒、木馬等造成的破壞

2、錯誤的分區(qū)操作,磁盤讀寫錯誤操作

解決方法:

1、備份MBR扇區(qū)數(shù)據(jù)

a.在關(guān)機狀態(tài)下添加一塊新硬盤:虛擬機-->硬盤-->添加-->選擇硬盤-->下一步

b.啟動主機進入Linux系統(tǒng),并對新硬盤進行分區(qū)

查看硬盤分區(qū)情況:fdisk -l -->對新硬盤進行分區(qū):fdisk/dev/sdb

c.建立新硬盤的文件系統(tǒng)(即格式化文件系統(tǒng))

查看sdb磁盤的列表信息-->對磁盤進行格式化

d.掛載硬盤

創(chuàng)建掛載點-->掛載分區(qū)

e.備份MBR扇區(qū)數(shù)據(jù)

2、模擬MBR扇區(qū)被破壞的故障

重啟計算機,當出現(xiàn)“Operating system not found”的提示信息,表示無法找到可用的操作系統(tǒng),此時硬盤已經(jīng)損壞,如果沒有光盤引導,則系統(tǒng)一直處于如下狀態(tài),因此無法啟動主機。

3、進入急救模式來修復MBR扇區(qū)故障

a.先關(guān)閉計算機-->虛擬機-->電源-->打開電源時進入固件(F)-->選擇Boot-->將光盤放在第一位

b.選擇進入急救模式[Rescue installed system]

c.[choose a language]選擇English-->確認

d.[Keyboard type]選擇us-->確認

e.[Unsupported Hardware Detected]選擇OK

f.[Satup Networking]選擇No

g.[Rescue]選擇Skip

h.選擇Shell Start shell-->選擇Ok

i.查看/dev/sdb硬盤和/dev/sda硬盤,能看到sdb1分區(qū),看不到sda設(shè)備,因為sda設(shè)備的MBR被破壞

j.將之前拷貝的文件重新寫回來

4、重啟計算機,發(fā)現(xiàn)可以正常啟動計算機,說明修復了MBR扇區(qū)故障.

No.4 GRUB引導故障

故障現(xiàn)象:系統(tǒng)引導停滯,顯示“grub>”提示符

故障原因:

有時Linux啟動后會直接進入GRUB命令行界面(只有“grub>”提示符),此時很多用戶就選擇了重新安裝GRUB甚至重新安裝系統(tǒng)。其實一般而言此故障的原因最常見的有兩個:

一是GRUB配置文件中選項設(shè)置錯誤;

二是GRUB配置文件丟失。

若是第一種情況,則一般顯示error: you need to load the kernel first: 引導配置錯誤,內(nèi)核文件沒有被正確加載,提示先加載內(nèi)核。

解決方案:

a. 啟動系統(tǒng)修復介質(zhì),備份/boot分區(qū)文件;

b. 檢查/boot/grub2/grub.cfg文件,找到menuentry塊中l(wèi)inux和initrd行,確保它們正確指向vmlinuz和initrd.img文件;

c. 重啟系統(tǒng),進入BIOS將引導選項設(shè)置為啟動磁盤,保存后重啟;

d. 啟動grescue grub>提示符,運行:

set prefix= (root) ′ /boot/grub2 ′configfile(prefix)/grub.cfg

boot

命令以修復并重新加載grub配置,然后啟動系統(tǒng)。

若是第二種情況,GRUB rescue> : 當GRUB引導加載程序文件丟失或磁盤無法訪問時,會結(jié)束在rescue提示符。

解決方案:

a. 啟動系統(tǒng)安裝或修復介質(zhì),備份數(shù)據(jù)并檢查文件系統(tǒng)。使用fsck修復或使用娛樂用光盤工具修復磁盤問題;

b. 引導進入安裝系統(tǒng),運行g(shù)rub2-install /dev/sda將GRUB重新安裝至系統(tǒng)磁盤MBR;

c. 修改BIOS啟動選項為從系統(tǒng)磁盤啟動。重啟系統(tǒng),現(xiàn)GRUB菜單應可正常顯示,啟動系統(tǒng);

d. 如果仍無法啟動,可能需要重新安裝系統(tǒng)或更換硬件。

NO.5 忘記linux root密碼

很多人經(jīng)常會忘記Linux系統(tǒng)的root密碼,而著急選擇重新安裝系統(tǒng),這里為大家整理了兩個更加直接的解決方法:

1、進入急救模式重設(shè)root用戶密碼

進入急救模式,加載系統(tǒng)鏡像,切換到系統(tǒng)根環(huán)境進行重置root密碼:

a.打開電源時進入固件,將開機啟動項boot中的CD-ROM調(diào)到第一項;

b.進入急救模式:

sh-4.2# chroot /mnt/sysimage

#重設(shè)root用戶密碼

bash-4.2# passwd root

bash-4.2# exit //退出鏡像回到系統(tǒng)

sh-4.2# reboot //重啟系統(tǒng)(注意重啟后要進入固件將Hard-drive調(diào)至第一項)

c.重啟進入登入界面后輸入剛才設(shè)置的密碼即可;

2、進入單用戶模式進行修改root密碼:

以Redhat linux為基準,操作步驟如下:

a.重啟系統(tǒng),待linux系統(tǒng)啟動到grub引導菜單時,找到當前系統(tǒng)引導選項(可以按方向鍵展開隱藏的菜單,單處理器只有一個引導項,多處理器有3個或3個以上引導項,一般默認選項就是系統(tǒng)當前引導選項);

b.通過方向鍵將光標放到當前系統(tǒng)引導項上,然后按鍵盤字母“e”,進入編輯狀態(tài)。

c.然后通過上下鍵,選中帶有kernel指令的一行,繼續(xù)按鍵盤字母“e”,編輯該行,在行末尾加個空格,然后添加single,類似與這樣:kernel /vmlinuz-2.6.18-8.el5 ro root=LABEL=/ rhgb quiet single

d.修改完成,按回車鍵,返回到剛才的界面。

e.最后按鍵盤“b”,系統(tǒng)開始引導。這樣系統(tǒng)就啟動到了單用戶模式下,這里的單用戶和windows下的安全模式類似,在單用戶模式下,只是啟動最基本的系統(tǒng),網(wǎng)絡以及應用服務均不啟動。

單用戶模式啟動完畢,系統(tǒng)會自動進入到命令行狀態(tài)下,類似與“sh-3.1#”,然后直接執(zhí)行passwd,回車,系統(tǒng)會提示輸入新的root密碼兩次,最后會看到修改密碼成功的提示,這樣就完成了root密碼的修改。

如果需要正常啟動系統(tǒng),現(xiàn)在只需輸入“init 3”,就進入了多用戶模式。用root用戶重新登錄系統(tǒng),看看設(shè)置的新密碼是否生效。

No.6 Read-only file system 錯誤解決

故障現(xiàn)象:涉及到修改/保存條目等需要寫磁盤操作的命令都無法使用(如tar、cp、mv、rm、chmod、chown、wget下載等指令),總是提示Read-only file system,也就是說系統(tǒng)是只讀的,什么也寫不了。

故障原因:

①文件系統(tǒng)損壞;

②磁盤問題,磁盤又壞道;

③fstab文件配置錯誤,如分區(qū)格式錯誤錯誤(將ntfs寫成了fat)、配置指令拼寫錯誤等。

排查網(wǎng)站程序,看報錯信息和服務日志錯誤,以及系統(tǒng)日志,來定位問題所在。

解決方法:

①如果能夠確認數(shù)據(jù)和系統(tǒng)的文件沒有被損壞,修復fstab文件配置后只要重新R/W加載或reboot就能夠恢復正常。

以讀寫方式重新掛載文件系統(tǒng)

mount -o rw,remount /system

②如果是文件系統(tǒng)有問題,那就需要在umount狀態(tài)下執(zhí)行fsck命令來檢查文件系統(tǒng)并修復文件系統(tǒng)中的錯誤。

nohup fsck -y /dev/VolGroup00/LogVol00 > /dev/shm/fscklog & # 檢查好后重啟 reboot

③如果是磁盤硬件損壞,最好的方法就是直接換一個新硬盤。如果覺得舊硬盤扔了可惜,還可以將它低格之后,再重新安裝系統(tǒng),系統(tǒng)重新安裝后,磁盤會重新分區(qū)。

④如果僅僅是想將數(shù)據(jù)備份出來而且機器又在身邊的話,你可以用live-cd從光盤啟動系統(tǒng),然后直接備份。當然此時你也可以修改硬盤中的配置文件,如/etc/fstab。

重要聲明:本文來自一口Linux,經(jīng)授權(quán)轉(zhuǎn)載,版權(quán)歸原作者所有,不代表銳成觀點,轉(zhuǎn)載的目的在于傳遞更多知識和信息。

我的評論

還未登錄?點擊登錄

微信掃碼溝通
微信掃碼溝通

微信掃碼溝通

AI
return head