halt命令用來關(guān)閉正在運(yùn)行的Linux操作系統(tǒng),如果是線上跑了業(yè)務(wù)的服務(wù)器,執(zhí)行此命令需謹(jǐn)慎。halt命令會(huì)先檢測系統(tǒng)的runlevel,若runlevel為0或6,則關(guān)閉系統(tǒng),否則即調(diào)用shutdown來關(guān)閉系統(tǒng)。
創(chuàng)新互聯(lián)是專業(yè)的同仁網(wǎng)站建設(shè)公司,同仁接單;提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行同仁網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
halt命令是關(guān)閉系統(tǒng)但不會(huì)斷電,最后會(huì)一直停留在一下畫面不動(dòng)。可以用 init 0 或 shutdown now 來關(guān)閉。
當(dāng)使用“halt”命令進(jìn)行關(guān)機(jī)時(shí),實(shí)際上會(huì)調(diào)用shutdown -h。 執(zhí)行暫停后,應(yīng)用程序進(jìn)程將被終止。 同步系統(tǒng)調(diào)用文件系統(tǒng)寫操作完成后,內(nèi)核將停止,如下圖所示。
應(yīng)該是shutdown -h now shutdown 參數(shù)說明:[-t] 在改變到其它runlevel之前﹐告訴init多久以后關(guān)機(jī)。[-r] 重啟計(jì)算器。[-k] 并不真正關(guān)機(jī)﹐只是送警告信號(hào)給每位登錄者〔login〕。[-h] 關(guān)機(jī)后關(guān)閉電源〔halt〕。
Linux下常用的關(guān)機(jī)命令有:shutdown、halt、poweroff、init0;重啟命令有:reboot、init6。重啟命令:(1)reboot-——重啟。(2)init6-——重啟。(3)shutdown-rnow——立刻重啟(root用戶使用)。
[-k]帶這個(gè)參數(shù)其實(shí)并不真正關(guān)機(jī)_只是送警告信號(hào)給每位登錄者;[-h]在關(guān)閉服務(wù)器后再閉電源,執(zhí)行過后就不能登錄服務(wù)器了,除非把服務(wù)器的電源鍵按下,使其啟動(dòng)。halt命令,可以說是最簡單的關(guān)機(jī)命令。
使用shutdown命令可 以直接關(guān)閉系統(tǒng),也可以延遲指定的時(shí)間再關(guān)閉系統(tǒng),還可以重新啟動(dòng)。延遲指定的時(shí)間再關(guān)閉系統(tǒng),可以讓用戶有時(shí)間儲(chǔ)存當(dāng)前正在處理的文件和關(guān)閉已經(jīng)打開的 程序。
halt:系統(tǒng)關(guān)機(jī)指令。A是退出系統(tǒng)會(huì)話 B是重新啟動(dòng) D也是關(guān)機(jī)指令。
shutdown。poweroff。init。reboot。halt。
shutdown -r now 立即重啟 Linux命令:shutdown 功能說明:系統(tǒng)關(guān)機(jī)指令。語法:shutdown [-efFhknr][-t 秒數(shù)][時(shí)間][警告信息]補(bǔ)充說明:shutdown指令可以關(guān)閉所有程序,并依用戶的需要,進(jìn)行重新開機(jī)或關(guān)機(jī)的動(dòng)作。
如果不需要Windows網(wǎng)絡(luò)共享功能,則可以放心關(guān)閉Samba。
Linux關(guān)閉和重啟系統(tǒng)一般使用相同的命令可以實(shí)現(xiàn)。在Linux系統(tǒng)下常用在關(guān)機(jī)/重啟命令有shutdown、halt、reboot和init,但每個(gè)命令的內(nèi)部工作過程是不同的。
先啟動(dòng)一個(gè)進(jìn)程作為測試使用,如圖:tomcat它是一個(gè)Java進(jìn)程,所以查找Java進(jìn)程也可查找出來,ps -ef|grep java 可以看到用戶和進(jìn)程編號(hào),然后用kill 進(jìn)程編號(hào)結(jié)束進(jìn)程。
有兩個(gè)命令可以來查看,ps 和 jobs。區(qū)別在于 jobs 只能查看當(dāng)前終端后臺(tái)執(zhí)行的任務(wù),換了終端就看不見了。而ps命令適用于查看瞬時(shí)進(jìn)程的動(dòng)態(tài),可以看到別的終端的任務(wù)。
nohup命令:如果你正在運(yùn)行一個(gè)進(jìn)程,而且你覺得在退出帳戶時(shí)該進(jìn)程還不會(huì)結(jié)束,那么可以使用nohup命令。該命令可以在你退出帳戶/關(guān)閉終端之后繼續(xù)運(yùn)行相應(yīng)的進(jìn)程。nohup就是不掛起的意思( n ohang up)。
1、Linux 里有一些工具,可以脫鉤父子進(jìn)程。比如screen,ubuntu/debian用apt安裝。apt-get install screen 用法:在terminal里打 screen然后運(yùn)行你的程序。再按 ctrl +a, ctrl +d.就脫鉤了。可以關(guān)terminal了。
2、nohup 命令 nohup命令的功能就和它的名字一樣,no hup,忽略hup信號(hào),不掛斷進(jìn)程,進(jìn)程仍然屬于當(dāng)前會(huì)話(終端關(guān)閉后,進(jìn)程會(huì)變成孤兒進(jìn)程,PPID變成1)。
3、這就帶來了很多不便,那么如何讓其在后臺(tái)持續(xù)運(yùn)行,退出運(yùn)行狀態(tài)和關(guān)閉終端標(biāo)簽頁也不影響呢?方法就是在該命令后面加 & 符號(hào),即可。
用nohup命令來執(zhí)行,如:nohup test.sh & nohup 命令 用途:不掛斷地運(yùn)行命令。
連接上相應(yīng)的linux主機(jī),進(jìn)入到等待輸入shell指令的linux命令行狀態(tài)下。其次,以重啟為例,在linux命令行中輸入:reboot。最后,按下回車鍵執(zhí)行shell指令,此時(shí)會(huì)看到linux主機(jī)成功重啟了。
不會(huì)繼續(xù)執(zhí)行。你可以使用screen工具來保證繼續(xù)執(zhí)行。
我的建議是用 screen 。這樣會(huì)啟動(dòng)一個(gè) shell “屏幕”可以隨時(shí)斷開后再另外一個(gè)地方重新恢復(fù)。另外還一個(gè)方法是用 fg bg nohup 這一套命令也可以。不過具體怎么用我沒研究,但控制不如 screen 方便。
1、ctrl + z :可以將一個(gè)正在前臺(tái)執(zhí)行的命令放到后臺(tái),并且處于暫停狀態(tài)。Ctrl+c :終止前臺(tái)命令。jobs: 查看當(dāng)前有多少在后臺(tái)運(yùn)行的命令。 jobs -l選項(xiàng)可顯示所有任務(wù)的PID,jobs的狀態(tài)可以是running, stopped, Terminated。
2、方法就是在該命令后面加 & 符號(hào),即可。示例 gocron的客戶端服務(wù)運(yùn)行命令,./gocron web 圖2退出和關(guān)閉標(biāo)簽頁后,圖三依然如此,服務(wù)也可以使用。
3、可以將一個(gè)正在前臺(tái)執(zhí)行的命令放到后臺(tái),并且處于暫停狀態(tài)。jobs 查看當(dāng)前有多少在后臺(tái)運(yùn)行的命令 jobs -l選項(xiàng)可顯示所有任務(wù)的PID,jobs的狀態(tài)可以是running, stopped, Terminated。
4、在應(yīng)用Unix/Linux時(shí),我們一般想讓某個(gè)程序在后臺(tái)運(yùn)行,于是我們將常會(huì)用 & 在程序結(jié)尾來讓程序自動(dòng)運(yùn)行。
5、就可以使該命令在后臺(tái)進(jìn)行工作,而且不怕被ctrl+c這個(gè)中斷指令所中斷 具體命令格式是:[命令]空格[&]例如:find / -name xml & 這樣,這個(gè)查找程序就會(huì)在后臺(tái)運(yùn)行。它運(yùn)行的同時(shí)不影響你干別的事情。
6、編寫一個(gè)shell腳本,在腳本中編寫循環(huán)執(zhí)行的代碼(可以是死循環(huán)),然后在linux上運(yùn)行這個(gè)腳本即可??梢园堰@個(gè)腳本在當(dāng)前運(yùn)行,也可以讓這個(gè)腳本在后臺(tái)運(yùn)行。