1. linux鍚鍔ㄥけ璐ヤ慨澶峫inux鍚鍔ㄥけ璐
linuxU鐩樺惎鍔ㄦ椂鍋滃湪鈥渟tartbootingfromUSBdevice鈥濓紵
startbootingfromusbdevice鑻辨枃鐨勬剰鎬濆氨鏄寮濮嬩粠USB椹卞姩鍣ㄥ惎鍔錛屽鉤鏃跺紑鏈哄嚭鐜拌繖涓鏄鍥犱負鍦╞ios涓璁劇疆浜嗕紭鍏堜粠USB鍚鍔錛屼笉鐢ㄧ殑璇濆彲浠ュ彇娑堟帀錛屼紭鍏堢‖鐩樺惎鍔ㄣ
1銆佸紑鏈鴻繘鍏bios錛屽啀鏄疊OOT欏圭洰銆
2銆乫irstboot鎶婂師鍏堢殑USB欏規崲鎴怘DD錛屾憗F10淇濆瓨錛屽惎鍔ㄣ
鏃犳硶姝g『浠嶶鐩樺惎鍔ㄣ傚師鍥犲備笅錛
1銆佸埗浣滀笉褰撱傛瘮濡傚埗浣滆蔣浠舵湁bug鎴栧彈鍒版潃姣掔瓑鍏跺畠杞浠剁殑騫叉壈瀵艱嚧鍒朵綔澶辮觸銆
2銆佸惎鍔ㄦ柟寮忛夋嫨涓嶅綋銆備竴鑸涓繪澘閮芥敮鎸乽sbhdd鍜寀sbzip涓ょ嶃傚傛灉鍙鏀鎸亃ip錛岃屽埗浣滄椂閫夌殑鏄痟dd錛岄偅灝變笉鑳藉惎鍔ㄣ傞噸鏂板埗浣滈噸鏂伴夋嫨鍗沖彲銆
3銆乁鐩樺歸噺榪囧ぇ錛屼富鏉挎湁浜涜侊紝涔熶笉鑳藉惎鍔ㄣ
鎵╁睍璧勬枡
U鐩樻敞鎰忎簨欏
1銆乽鐩樺惎鍔ㄧ洏鍒朵綔宸ュ叿鐨勯夋嫨
鑳藉惁瑁呭ソ緋葷粺錛屼笉浠呮槸鍦ㄥ埗浣滆繃紼嬩腑鎿嶄綔寰楀綋錛寀鐩樺惎鍔ㄧ洏鍒朵綔宸ュ叿鐨勯夋嫨涔熸槸寰堥噸瑕佺殑錛岄夋嫨涓涓濂界殑鍒朵綔宸ュ叿錛屼細浣垮緱鏁翠釜瑁呯郴緇熻繃紼嬬渷鏃剁渷鍔涳紝瀹炵幇鑷鍔ㄥ寲銆
2銆佽繘鍏bios鐣岄潰璁劇疆u鐩樺惎鍔
榪涘叆bios鐣岄潰璁劇疆u鐩樺惎鍔錛屾槸u鐩樿呯郴緇熺殑閲嶇偣涔嬩竴銆
3銆佺佺洏媯嫻
紓佺洏媯嫻嬩篃鏄痷鐩樿呯郴緇熸敞鎰忎簨欏逛箣涓錛屽湪榪涜屾暟鎹鎷瘋礉鍏u鐩樺惎鍔ㄧ洏鏃訛紝鑻ョ‖鐩樿誨彇閫熷害鏋佹參錛屾嫹璐濇暟鎹寮傚父緇堟㈡椂錛屽彲浠ヨ繘琛岀佺洏鍧忛亾媯嫻嬶紝媯鏌ョ佺洏鏄鍚﹀潖閬擄紝騫惰繘琛岀佺洏鍧忛亾淇澶嶃
4銆佺佺洏鍒嗗尯
U鐩樿呯郴緇熸敞鎰忎簨欏逛腑鐨勭佺洏鍒嗗尯闂棰樹篃鏄涓嶅彲蹇借嗙殑錛岃嫢鐩鏍囩佺洏瀹歸噺杈句笉鍒拌呯郴緇熸墍瑕佹眰杈懼埌鐨勬爣鍑嗭紝閭d箞錛孶鐩樿呯郴緇熺殑宸ヤ綔寰堝彲鑳戒笉鑳借繘琛屻
5.鏁版嵁澶囦喚涓庤繕鍘
u鐩樿呯郴緇熸敞鎰忎簨欏逛腑鏈鍚庝竴欏硅佹敞鎰忕殑灝辨槸鏁版嵁澶囦喚涓庤繕鍘熴傚湪閲嶈呯郴緇熶箣鍓嶏紝鍜變滑蹇呴』榪涜岄噸瑕佹枃浠躲佺▼搴忕殑澶囦喚鎿嶄綔錛岄伩鍏嶅湪緋葷粺閲嶈呭悗瀵艱嚧閲嶈佹枃浠朵涪澶辯殑椋庨櫓銆傚綋鐒訛紝涔熷彲浠ヨ繘琛屽囦喚榪樺師鐨勬搷浣溿
linux緋葷粺xserver鍚鍔ㄤ笉鎴愬姛鏄浠涔堝師鍥狅紵
棣栧厛錛寈server鏈夊緢澶氫笉鍚屽疄鐜幫紝鎴戝厛榛樿ゆ槸姣旇緝閫氱敤鐨剎111.鏈涓昏佺殑鍙鑳芥槸杞浠朵緷璧栭棶棰橈紝鏍規嵁鎴戞姌鑵緇fs鐨勭粡楠岋紝濡傛灉浣犳敼鍔ㄨ繃涓浜涗緷璧栧簱錛屽氨鍙鑳芥棤娉曞惎鍔2.鏈夊彲鑳芥槸紜浠跺師鍥狅紝x11鍦ㄧ‖浠舵敮鎸佹柟闈涓嶆槸闈炲父鍏ㄩ潰錛屽傛灉鏄闈炲父鐗規畩鐨勬樉鍗★紝鍙鑳戒笉鏀鎸
濡備綍浠庢牴鏈瑙e喅宓屽叆寮廘inux緋葷粺紿佺劧鏂鐢靛悗鏃犳硶鍚鍔ㄩ棶棰橈紵
棣栧厛浣犵殑鏂鐢墊槸鎸囦粈涔堬紵鐜板湪鐨勬墜鎸佽懼囬兘鏈夎秴榪3縐嶄緵鐢電數婧愩
閭f垜鐚滅殑璇寸殑鏂鐢墊槸鍚屾椂鍒囨柇鍖呮嫭鐢墊睜鍜孶SB鍦ㄥ唴鐨勬墍鏈夊栭儴鐢墊簮浜嗐傞偅涔堜笉璁轟綘鐨勬寕杞界偣鍦ㄥ摢閲岋紝kernel鑲瀹氭槸鐩存帴down鎺夌殑錛宑pu鐘舵佷篃涓嶄細琚淇濆瓨錛屽唴瀛樻竻絀猴紝鎵鏈夎繘紼嬮兘涓嶅瓨鍦ㄤ簡錛屽凡緇忓湪璇葷殑榪涚▼涓嶅啀鎸佹湁鏂囦歡鍙ユ焺錛堟病褰卞搷錛夛紝宸茬粡鍦ㄥ啓鐨勮繘紼嬪氨鍐欏埌鏌愪釜瀛楃﹀仠浣忥紝浣嗘槸榪欎簺閮戒笉浼氬獎鍝嶅埌紜鐩樺晩銆傛墍浠ュ規枃浠剁郴緇熶笉浼氭湁鎹熷潖錛屼絾鏄瀵圭‖浠朵細鏈変簺璁鎬激瀹熾備絾鐜板湪鎵嬫寔璁懼囬兘緇存寔鍦2.5~3V錛屾柇鐢靛圭‖浠剁殑褰卞搷瀹為檯涔熶笉澶с傝嚦浜庝綘璇寸殑鈥滄庝箞鎵嶈兘鍐嶄互鍙璇誨啓灞炴ф寕杞借ョ佺洏鍛⑩濄傛垜涓嶇悊瑙h繖涓鈥滃啀鈥濆瓧銆傞噸鏂頒笂鐢靛悗涓鍒囬噸鏂板紑濮嬶紝kernelboot閲嶈窇涓閬嶏紝璺熸柇鐢靛墠浣犵殑鎸傝澆宸茬粡娌℃湁鍏崇郴浜嗐傚彟涓縐嶆儏鍐碉紝浣犲彲浠ュ湪linux鎺у埗鍙板惎鍔ㄥ彞鏌勯噷闈㈣劇疆錛屾妸浣犵殑鎸傝澆鍛戒護鍐欏湪閭i噷闈錛岄偅涔堟瘡嬈″惎鍔ㄦ椂灝辮嚜鍔ㄦ寕杞戒簡linux鍗℃諱粈涔堥敭閮界敤涓嶄簡錛
緋葷粺濡傛灉鍑虹幇鍗℃葷殑璇濇棤娉曚嬌鐢錛岃繖涓鏃跺欏彧鑳芥槸闀挎寜鐢墊簮閿寮哄埗鍏蟲満浜嗭紝涓嶇劧鐨勮瘽浣犳槸娌℃湁鍔炴硶鐨勶紝鐑鍚鍔ㄤ篃鏄娌℃湁鏁堟灉鐨勶紝濡傛灉鐢墊簮閿娌℃湁鍙嶅簲鐨勮瘽錛屼綘灝卞彧鑳芥妸鐢墊簮鎷旀帀錛岀劧鍚庨噸鏂板惎鍔ㄥ氨鍙浠ヤ簡錛岀劧鍚庡惎鍔ㄤ箣鍚庡畠浼氭湁涓涓緋葷粺鑷媯鐨勮屼負錛岀郴緇熻嚜媯瀹屼簡涔嬪悗灝卞彲浠ユe父鎮㈠嶃
linux鐧誨綍榛戝睆錛
絳旇В鍐蟲柟娉曞備笅
1銆佸湪鍚鍔ㄦ椂錛孏RUB涓奊RUB寮曞煎懡浠ゅ悗闈㈠姞涓婁竴涓猇GA=791錛岃繖鏍瘋繘鍘誨睆騫曞垎杈╃巼灝辨槸1024*768銆
kernel(hd0,0)/linuxroot=/dev/ramramdisk_size=65536devfs=mount,allvga=791
initrd(hd0,0)/initrd
boot
2銆佸湪榛戝睆鏃躲傛寜Ctrl+Alt+F2榪涘叆鍙︿竴涓猻hell錛岃繍琛寉ast錛岄夋嫨hardware-GraphicsandMonitor錛岄噷闈㈡湁涓や釜閫夐」錛岀涓涓鏄痶ext妯″紡錛岀浜屼釜鏄鍥懼艦妯″紡錛岃繕鏈塩hange鍜宺eprobe閫夐」錛屼絾change閫夐」鏄鐢ㄤ笉浜嗙殑(濡傛灉浣犺兘鐢ㄥ氨鏈濂戒笉榪囦簡銆傜洿鎺ユ洿鏀瑰睘鎬э紝鎶婂垎杈ㄧ巼璋冧綆鐐癸紝accept錛岄鍑洪噸鍚灝辮屼簡)錛岃繖鏃跺欏厛鍒囨崲鎴愪負text妯″紡錛岄鍑洪噸鍚錛涢噸鍚鍚庡簲璇ヨ繕鏄鐢ㄤ笉浜嗙殑錛屽啀嬈℃寜Ctrl+Alt+F2榪涘叆鎺у埗鍙幫紝榪愯寉ast錛屾ゆ椂鍐嶅湪涓婅堪鐨勯夐」澶勮繘琛宑hange灝監K浜
3銆佸湪榛戝睆鏃訛紝鎸塩trl+alt+F2榪涘叆鎺у埗鍙般傜洿鎺ヨ緭鍏init3銆傜劧鍚庤緭鍏init5
4銆丟RUB4DOS
濂藉氫漢澶氱郴緇熷惎鍔⊿USE鍠滄㈢敤瀹冨紩瀵糞USE銆
緙栬緫menu.lst
kernel(hdx,y)/linuxvga=791
initrd(hdx,y)/initrd
boot
5銆佷慨鏀箈org.conf
鎸塩trl+alt+F2榪涘叆shell
#vi/etc/x11/xorg.conf
section鈥淢onitor鈥
HorizSync31.5-70.0
VertRefresh50.0-100.0
2. Linux不能正常啟動了,怎麼辦
對於使用Linux的人來說,遲早都可能在某一階段遇到這個問題:你正在興高采烈得探索你的系統,調整,優化以挖掘其最大的潛力,突然,omg,你發現,系統不能啟動了!如果你之前已經習慣了使用Windows系統,我打賭,這是一個經常性的問題,而你最初閃出的念頭就是格式化並重裝系統。而對於Linux而言,重裝系統絕對是最後的選擇,只有在我們其它努力都作廢之後,才需要考慮這一點。我個人認為,唯一能讓人不得不重裝系統的情況就是,不幸的你以root身份敲下了不幸的命令rm -rf /。恩,千萬別模仿!雖然你可以通過「ctrl c」來終止這該死的自殺操作。
對於Linux,一旦出現無法啟動系統情況的時候,也許你知道錯誤大概出在哪裡,有比較明確的修復方向,比如調整屏幕解析度,或者修改某個腳本,等等。但是,現在問題的關鍵,是需要能夠啟動或者訪問Linux系統,這樣才能修復它。下面就是一些應急措施的介紹。
最先應該想到,也許也是最簡單的辦法,就是當boot loader—通常都是grub—開始執行時,通過它調整系統運行級別。在出現菜單項後,按下鍵盤上的「e」按鍵,這樣,菜單項能顯示一個或者多個啟動命令,找到有關內核的這一行,將游標移到上面,高亮這一行,再按下「e」,grub就會將這行內容用一個簡單的編輯器環境打開,讓我們能夠對其做出改變。那麼,到底怎麼改變呢?很簡單,只需要告訴init程序,我們希望通過那個級別啟動即可。在內核命令行的最後加上「init X」參數,其中X表示你所希望的運行級別,舉個實際例子,如果你判斷可能是因為顯卡驅動或者解析度導致的啟動錯誤,就可以啟動到命令行模式來修復它,那麼,就應該把運行級別改為純命令行模式,假設是4,改動後的內核命令行就應該是類似於這樣的。
/boot/vmlinuz-2.6.17-11-generic root=UUID=5cc79966-969d-4cd0-abb2-74a132efbd7c ro vga=794 quiet splash init 4
這樣,就等於告訴了init程序,我要以運行級別4啟動,而不是默認的運行級別。
如果這些招數都無法奏效了,怎麼辦?難道我們就坐以待斃了?no。這里還有一個偏門可以供你使用。我們知道,在默認情況下,內核啟動時會執行init程序,但是你可以指定不同的程序讓內核來執行,只需要在後面添加參數「init=/some/program」即可。「/some/program」通常表示諸如/bin/bash或者/bin/sh這種shell程序。注意這里的等於符號,它的作用是告訴內核,你別啟動init程序了,而是啟動我等號後面所指定的任意程序吧。大體命令行如下:
/boot/vmlinuz-2.6.17-11-generic root=UUID=5cc79966-969d-4cd0-abb2-74a132efbd7c ro vga=794 quiet splash init=/bin/bash
這樣,你就可以直接啟動到所指定的shell中,對發生的錯誤進行分析,修復等操作。
如果這樣做都還是不行……好吧,我覺得你人品有問題!那麼,還是拿出恢復cd,通常就是你的安裝光碟,它允許你在啟動時選擇是否進入rescue修復模式。進入這個模式之後,他會自動找到你的硬碟安裝的系統,並將它們掛載到一個臨時目錄下,這樣,你就能進行修改配置文件或者其它修復操作了。
如果還是不行呢?恭喜你,回到Windows時代,還是老老實實重新安裝吧。
3. 怎樣修復linux無法啟動故障
1、在系統啟動過程中,會出現圖1所示畫面,按任意鍵,進入GRUB菜單選項。
2、按「e」鍵編輯GRUB引導菜單選項,圖2顯示為按「e」鍵後的GRUB屏幕。
GRUB引導菜單選項
通過箭頭鍵下移到kernel行,並按「e」鍵,得到圖3中顯示的編輯界面:
kernel行編輯界面
在尾行游標處添加single或者s,按回車鍵返回前一個屏幕,按「b」鍵進行引導,則系統自動進入單用戶模式,如果要改變root密碼,則執行命令:
sh-3.1# passwd root
更改成功後,執行命令exit退出重啟即可。
4. 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考證
5. linux無法啟動系統
一般來說,如果系統管理員不能正常進入系統,就需要考慮使用急救盤組進入急救模式排除系統的故障。但在沒有製作急救盤組的情況下,Linux系統不能啟動,該怎麼辦呢?
在個人計算機使用 Linux系統時,通常都是Linux和MS Windows 9X或MS Windows NT並存的。
由於重新安裝其他的操作系統,經常會導致原有的Linux不能啟動。這主要是因為,這些操作系統默認為計算機中沒有其他的操作系統,因而改寫了硬碟的主引導記錄(MBR),覆蓋掉了Linux的LILO系統引導程序。
如果有急救盤組,那麼很簡單,用第一張啟動盤啟動硬碟的Linux系統,重新運行LILO命令,就可以將LILO系統引導程序寫回硬碟的主引導記錄,再次開機即可。
如果沒有系統啟動盤,如果知道Linux在硬碟上的確切安裝分區,且有loadlin程序,就可以重新返回Linux。loadlin是DOS下的程序,運行它可以從DOS下直接啟動Linux,快速進入Linux環境。在 Red Hat Linux 6.0光碟的 dosutil目錄下就有這個程序。除此之外,還需要一個 Linux啟動內核的映像文件vmlinuz,在 Red Hat linux 6.0光碟的 images目錄下就有這個文件。
例如,在Windows 98系統下面,進入DOS的單用戶模式,然後運行下述的loadlin命令,即可重新進入Linux系統:
loadlin vmlinuz root=/dev/hda8
/dev/hda8是Linux的root文件系統所在的硬碟分區位置。命令執行後,就開始引導Linux系統。用root身份登錄後,運行LILO命令,則重新將LILO裝入MBR,回到以前多操作系統並存使用的狀態。
Linux操作系統是UNIX操作系統的一種克隆系統,它誕生於1991 年的10 月5 日(這是第一次正式向外公布的時間)。以後藉助於Internet網路,並通過全世界各地計算機愛好者的共同努力,已成為今天世界上使用最多的一種UNIX 類操作系統,並且使用人數還在迅猛增長。
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和網路協議。它支持3