linux服務無法啟動
㈠ 怎樣修復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退出重啟即可。
㈡ linux 下mysql 服務無法開啟
linux 下mysql 服務無法開啟
1.可能是/usr/local/mysql/data/rekfan.pid文件沒有寫的許可權
解決方法 :給予許可權,執行 「chown -R mysql:mysql /var/data」 「chmod -R 755 /usr/local/mysql/data」 然後重新啟動mysqld!
2.可能進程里已經存在mysql進程
解決方法:用命令「ps -ef|grep mysqld」查看是否有mysqld進程,如果有使用「kill -9 進程號」殺死,然後重新啟動mysqld!
3.可能是第二次在機器上安裝mysql,有殘余數據影響了服務的啟動。
解決方法:去mysql的數據目錄/data看看,如果存在mysql-bin.index,把它刪除掉
㈢ 如何修復Linux無法正常啟動故障
沒有操作系統能夠確保100%可靠。終有一天,即使Linux也會無法啟動。本文為你提供一些在Linux工作站無法正常啟動時所採用的策略。
不管你多麼喜愛你的Linux機器,有時候你都必須恢復你的系統。是的,即使一台Linux機器也可能遭受系統崩潰:不管是由於視頻配置錯誤、內核更新出錯、或是由於init腳本配置錯誤,這種情況都是必然的。我看到過大量這種情況——即使在我自己的機器上,大多數是由於X配置出錯——這確實令人沮喪。
在我看來,重新安裝系統並不是最佳救援計劃。有時候,最佳救援計劃甚至不需要從救援磁碟啟動。本文將為如何避免系統崩潰提供一些提示和訣竅,幫助你建立恢復崩潰的Linux機器所需的工具。
使用正確的運行級別
安裝好一個新的Linux系統後,我立即採取措施以確保災難不會輕易發生。其中一個措施就是編輯系統的運行級別。運行級別告訴系統離採用引導過程還有多遠。運行級別分為六個等級:
0級:停止(不設置initdefault)
1級:單用戶模式
2級:多用戶模式,沒有NFS(與3級相同,如果你沒有建立網路)
3級:完整的多用戶模式
4級:不使用
5級:X11
6級:重新啟動(不設置initdefault)
新型的Linux系統幾乎總是默認使用運行級5(X11),表示系統在引導完成後,將會在圖形登錄界面處停止。在某物(或某人)使用X配置前,系統一切正常。
然後你必須找到一個登錄方法。你可以按下[Ctrl][Alt][F7]進入一個基於文本的虛擬窗口,但為什麼要這么麻煩呢?相反,我總是在/etc/inittab文件中將運行級更改為3級。你更改的代碼為:
id:5:initdefault:
它被更改為:
id:3:initdefault:
當X出錯時,這是一個非常簡單的系統恢復方法。
多內核
另一個明顯的磁碟恢復方法是總是安裝一個正常運轉的內核。我通常在一個通過yum更新的內核上工作。有時候,內核會出現一些錯誤,使得我的一台或幾台機器無法啟動。
為避免這種情況,我一直保證在機器上使用至少一個正常運行的內核。要解決這個問題,首先應在/etc/yum.conf文件中添加plugins=1,然後應用這段腳本(由RedHat的Jeremy Katz編寫),並將它命名為n-installonly.py,保存在/usr/lib/yum-plugins文件中。你可以通過修改tookeep變數(默認為2)的方法更新系統所使用內核的數量。
知道系統上有一個正常運轉的內核,你就可以進行安全升級。如果新內核出錯,只需啟動舊內核就可以解決新內核上的問題(不管是刪除、重新編譯還是升級)。
救援模式
如果你在使用Red Hat和LILO引導載入器,你就可以插入產品光碟1,並在引導提示符下輸入Linuxrescue進入救援模式。啟動機器後,你就會看到bash#提示符。在這個模式下,你可以使用許多工具。
如你所見,有檢查硬碟完整性、修復硬碟、檢查內核模塊、裝配設備、以及創建文件系統等的工具。此時是進行救援嘗試的最佳時機(如果你使用的是一個Red Hat,或基於Red Hat的系統)。
另一個救援方法是進入單用戶模式,這里你的計算機引導進入運行級1。系統裝配你的本地文件系統,但不激活網路。你得到一個可用的系統維護外殼。要進入單用戶模式,在LILO提示符下輸入:
Linuxsingle
或
Linuxemergency
建立一張救援CD
如果你正在使用LILO引入載入器,可以使用一個叫做mkrescue的強大工具。這個工具一般用於創建引導軟盤,但也可用來創建ISO。其用法如下。
如果你使用Mandriva:
mkrescue --iso --initrd /boot/initrd-KERNEL-NUMBER.img --
kernel /boot/vmlinuz-KERNEL-NUMBER
注意:這里的KERNEL-NUMBER指內核的版本號。
如果你不能確定內核的版本,可以用以下命令找到intrd和vmlinuz的號碼:
uname –r
運行這個命令後,你就會在運行mkrescue命令的目錄中發現一個rescue.iso文件。現在你可以用以下命令建立鏡像:
首先,檢查建立CD的設備號碼:
cdrecord –scanbus
然後用以下命令建立鏡像:
cdrecord dev=0,0,0 rescue.iso
注意:這里的dev=0,0,0是用上面的scanbus命令查出的號碼。
如果你使用Slackware,使用這些步驟建立一張引導CD:
mkrescue –iso
注意:Slackware自動獲知在ISO中放入何種內核。
然後,你可以用建立Mandriva鏡像同樣的方法建立鏡像。
SystemRescueCD
SystemRescueCD是一個保存在可引導光碟上的Linux系統,用於在系統崩潰後修復系統和數據。它還可在計算機上方便地執行管理任務,如建立和編輯硬碟分區。它由許多系統實用工具(parted、partimage、fstools)和基本實用工具(編輯器、midnight commander文件管理器和網路工具)構成。
它使用起來非常簡單。只需要從光碟啟動你就可以執行一切操作,就像從硬碟啟動一樣。系統內核支持大多數重要的文件系統(ext2/ext3, reiserfs, reiser4, xfs, jfs, vfat, ntfs, iso9660)和網路(samba和nfs)。
SystemRescueCD可能是市面上最優秀的救援系統。你不僅可以從光碟上使用這種救援方法,還可以將這個救援系統放在U盤上使用。
要在一個U盤上建立一個SystemRescueCD,你需要大於256MB的磁碟空間。從Sourceforge下載iso鏡像並把它燒制到光碟上。現在你必須在U盤上創建文件系統。使用dmesg命令找出U盤名稱,然後用以下代碼擦寫U盤:
dd if=/dev/zero of=/dev/sda
這里的/dev/sda是U盤的名稱。
現在在U盤上安裝主引導記錄:
install-mbr /dev/sda
或
install-mbr --force /dev/sda(如果命令出錯)
現在建立分散分區:
parted /dev/sda
(parted) mkpartfs primary fat32 0 100% // use help or help mkpartfs command to see help
(parted) print // check if the write was ok
(parted) quit
現在已經建立好文件系統,然後將用SystemRescueCD鏡像燒制的CD中的文件復制到U盤中。保證你復制的文件等級和CD上的相同。
現在,使得U盤可以用sysLinux命令啟動:
sysLinux/dev/sda1
這里的/dev/sda1是磁碟的名稱。
現在你已經建立了一個你可以整天隨身攜帶的救援U盤。由於你使用Linux,你並不需要經常用到它。
最後總結
Linux是一個非常穩定的環境,但由於該系統中還有許多其它系統,它們可能會出現錯誤。雖然我們很容易會由於使用Linux而洋洋自得(因為它存在諸多優點),但了解如何拯救一個系統崩潰的機器也不失為一種明智的做法。
當然,不是世界上所有的救援系統都能100%地恢復你的系統,因此你可能希望考慮為你的Linux伺服器和桌面系統實施一個災難恢復計劃。
㈣ linux 無法啟動 怎麼解決
一台linux主機重啟後再也啟動不了,遠程看了下,出現以下報錯,failed to load selinux policy ,然後就僵死了,好吧,小編也知道之前改過selinux配置文件了,但怎麼進系統恢復呢。
在出現linux啟動選擇時,用上下鍵先暫停啟動,然後移至第一行,就是平時正常啟動那行,鍵入e進行修改。
如下圖所示,在相關位置鍵入enforcing=0,注意下圖0後面是一個空格,而不是下劃線,然後再用CTRL+X強行啟動
終於進系統了,下圖貼出來的就是小編當時錯誤的配置文件,果然稍微一想當然就要出事情;
還是要搞定作的孽呵,selinux的配置文件位於 /etc/selinux目錄下,配置文件為config。
6
正常情況下關閉selinux,應該是配置為selinux=diabled,小編寫成了selinuxtype=disabled,結果就導致悲劇發生。
㈤ linux系統mysql服務啟動失敗
解決「linux系統mysql服務啟動失敗」問題的具體步驟如下:
1、首先我們查找mysql.sock的文件位置,如果忘記了文件的位置,首先查看/etc/my.cnf文件。
6、mysql啟動的時候錯誤可以通過日誌進行判斷,日誌的路徑同樣在my.cnf中可以看出。
這樣就解決了「linux系統mysql服務啟動失敗」的問題。
㈥ kali linux虛擬機dhcp服務啟動不了
kali linux虛擬機dhcp服務啟動不了的解決方法如下:
運行的是Kali Linux, 希望用橋接模式通過路由器獲取動態IP, 但是無論如何也不能正確獲取IP地址.
一點點排查
1. 排查DNS
root@kali:~# cat /etc/resolv.conf
nameserver 192.168.1.1nameserver 114.114.114.114
192.168.1.1在裡面, DNS設置沒有問題
2. 排查網卡
123456789101112root@kali:~# cat /etc/network/interfaces# This file describes the network interfaces available on your system# and how to activate them. For more information, see interfaces(5).# The loopback network interfaceauto loiface lo inet loopback# The primary network interface#allow-hotplug eth0auto eth0iface eth0 inet dhcp
網卡自動激活, 並配置dhcp獲取IP方式
3.排查VMWare 橋接設置
㈦ 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時代,還是老老實實重新安裝吧。
㈧ 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
㈨ NAS存儲故障導致Linux不能正常啟動該如何處理
一、故障現象描述
NAS操作系統內核為Linux,自帶的存儲有16塊硬碟,總共分兩組,每組做了RAID5,Linux操作系統無法正常啟動,在服務啟動到cups那裡就停止了,按鍵ctrl+c強制斷開也沒有響應,查看硬碟狀態,都是正常的,沒有報警或者警告現象。
二、問題判斷思路
通過上面這些現象,首先判斷NAS硬體應該沒問題,NAS存儲盤也應該正常,現在Linux無法啟動,應該是Linux系統本身存在問題,因此,首先從Linux系統入手進行排查。
三、問題處理過程
1、第一次處理過程
NAS系統本身就是一個Linux內核裝載了一個文件系統管理軟體,管理軟體可以對系統磁碟、系統服務、文件系統等進行管理和操作,正常情況下,基於Linux內核的NAS系統應該啟動到init3或者init5模式下,由於NAS僅用了Linux一個內核模塊和幾個簡單服務,所以判斷NAS下的Linux系統肯定是啟動到init 3模式下,那麼現在無法啟動到多用戶字元界面下,何不讓Linux直接進入單用戶(init 1)模式下呢,因為單用戶模式下僅僅啟用系統所必須的幾個服務,而cpus服務是應用程序級別的,肯定不會在「init 1」模式下啟動,這樣就避開了cups無法啟動的問題,所以,下面的工作就是要進入Linux的單用戶模式下。
很多的Linux發行版本都可以在啟動的引導界面通過相關的設置進入單用戶模式下,通過查看NAS的啟動過程,基本判斷這個Linux系統與RHEL/Centos發行版極為類似,因此,就通過RHEL/Centos進入單用戶模式的方法試一試。
RHEL/Centos進入單用戶模式很簡單,就是在系統啟動到引導歡迎界面下,按鍵e,然後編輯正確的內核引導選項,在最後面加上「single」選項,最後直接按鍵「b「即可進入單用戶了。
接下來,重新啟動NAS,然後硬體自檢,接著開始啟動Linux,一直在等待這個NAS的啟動歡迎界面,但是歡迎界面一直沒出來,就直接進入內核鏡像,載入內核階段了,沒有內核引導界面,如何進入單用戶啊,經過簡單思考,還是決定在硬體檢測完畢後直接按鍵盤」e「鍵,奇跡出現了,還真的可以,NAS進入到了內核引導界面,通過簡單觀察,發行第二個正是要引導的內核選項,於是移動鍵盤上下鍵,選擇這個內核,然後在按鍵」e「,進入內核引導編輯界面了,在這行的最後面,輸入「single」,然後按回車鍵,返回上個界面,接著按鍵「b」開始進行單用戶引導,經過一分鍾的時間,系統如願以償的進入了單用戶下的shell命令行。
進入單用戶模式後,能做的事情就很多了,首先要做的就是將cups服務在多用戶模式下自啟動關閉,執行命令如下:
chkconfig --levle 35 cups off
執行成功後,重啟系統進入多用戶模式下,看看系統是否能正常啟動。
2、第二次處理過程
將cups服務開機自啟動關閉後,重啟NAS,發現問題依舊,NAS還是啟動到cups服務那裡停止了,難道上面的命令沒有執行成功嗎?明明已經禁止了cups服務啟動了,怎麼還是啟動了呢?於是,繼續重啟NAS,再次進入單用戶模式下,看看問題究竟出在哪裡了。
進入單用戶後,再次執行chkconfig 命令,依舊可以成功,難道是cups服務有問題,先看看配置文件,執行如下命令:
vi /etc/cups/cupsd.conf
在這里發現了一個問題,vi打開cupsd.conf時,提示「write file in swap」,文件明明真實存在,怎麼說在虛擬內存中呢,經過思考,只有一種可能,NAS設備的Linux系統分區應該沒有正確掛載,導致在進入單用戶的時候,所有文件都存儲在了虛擬內存中,要驗證非常簡單,執行「df」命令查看即可,如下圖所示:
到這里為止,發現問題了。/dev/sda2磁碟分區已經沒有可用的磁碟空間了,而這個分區剛好是NAS系統的根分區,根分區沒有空間了,那麼系統啟動肯定就出問題了。
下面再把思路轉到前面介紹的案例中,由於系統cups服務在啟動的時候會寫啟動日誌到根分區,而根分區因為沒有空間了,所以也就無法寫日誌了,由此導致的結果就是cups服務無法啟動,這就解釋了此案例中NAS系統每次啟動到cups服務就停止的原因。
四解決問題
由於NAS系統只有根分區和/boot分區,所以系統產生的相關日誌都會存儲在根分區中,現在根分區滿了,首先可以清理的就是/var目錄下的系統相關日誌文件,通常可以清理的目錄有/var/log,執行如下命令查看/var/log日誌目錄占據磁碟空間大小:
[root@NASserver ~]# -sh /var/log
50.1G /var/log
通過命令輸出發現/var/log目錄占據了根分區僅70%的空間,清理這個目錄下的日誌文件即可釋放大部分根分區空間,清理完畢,重啟NAS系統,發現系統cups服務能正常啟動了,NAS服務也啟動正常了。