回答
以安全的方式關閉系統。系統正在關閉所有登錄用戶,並且登錄(1)被阻止。可以立即關閉系統或在指定的延遲後關閉系統。首先通知所有進程系統正在通過SIGTERM信號關閉。 它通過發信號通知init進程來完成它的工作,並要求它改變運行級別。運行級別0用於暫停系統,運行級別6用於重新啓動系統,運行級別1用於將系統置於可執行管理任務的狀態; 所以基本上重啓調用「關機」。
快速回答是執行/etc/rc6.d中的所有腳本。
使用「stop」參數執行以「K」開頭的腳本。使用「start」參數執行以「S」開頭的腳本 。
欲瞭解更多,你可以從這裏開始閱讀有關運行級別:http://en.wikipedia.org/wiki/Runlevel
Linux上有不同的init系統,他們也控制在重新啓動/關機發生了什麼。請參閱https://unix.stackexchange.com/questions/18209/detect-init-system-using-the-shell以瞭解您正在使用的內容。
如果您使用的是SysVinit,則會有一個與整個系統狀態相關的runlevel。 init系統將首先運行與當前運行級別相關的所有終止腳本,然後運行與運行級別6相關的啓動腳本。如果當前運行級別爲5,它將運行/etc/rc5.d/K*,然後運行/ etc/rc6 .D/S *。它們可能位於另一個目錄中,如/etc/init.d/rc5.d/k*,具體取決於您的Linux發行版。
如果您使用的是systemd,那麼將不會有一個全面的「運行級別」,而會有一個定義的目標和服務的列表。目標列表本質上是一個運行級別。這些在/ etc/systemd下的.service和.target文件中定義。在那裏可能會定義一個「reboot.target」,其他服務依賴於該服務將在重新啓動時運行。以the systemd homepage或stackexchange question爲例。
一些Ubuntu版本也使用暴發戶,但我認爲它已被更新版本中的systemd所取代。如果您使用新貴,請參閱this guide或this askubuntu question。
需要注意的一件事是,無論您使用的是哪個init系統,都可能使用通常與另一個init腳本關聯的init腳本。所以你可能會使用sysVinit,但是一些rc * .d腳本可能是調用systemd腳本的東西的鏈接。或相反亦然。
- 1. Pl-sql打印表格詳細信息的步驟
- 2. 如何生成TFS 2010的詳細構建步驟報告
- 3. 上傳文件的詳細信息在下一步的多步驟形式
- 4. 隱藏AWS步驟函數的執行細節和步驟細節控制檯
- 5. 給出詳細的步驟安裝漂亮的蟒蛇使用記事本++
- 6. JUnit記者沒有顯示JBehave每個步驟的詳細報告
- 7. 主詳細界面中詳細信息的多重視圖
- 8. 啓用Groovy的AntBuilder的詳細輸出
- 9. 轉儲C,Linux中的調試步驟
- 10. 號碼:步驟,但開啓所有點擊步驟
- 11. ASP - > ASP.Net:重構步驟
- 12. 你小步驟重構嗎?
- 13. 在specflow中重複步驟
- 14. 從Hudson/jenkins上的失敗點重新啓動構建步驟
- 15. 彈簧啓動異常詳細信息
- 16. Android主詳細信息詳細信息
- 17. Crystal Reports詳細信息詳細信息
- 18. 黃瓜步驟上錯誤的步驟
- 19. ISampleGrabberFilter一次一個步驟的步驟
- 20. db2 V10.5啓用並行處理步驟
- 21. 步驟
- 22. 不尊重步驟的Scipy盆地?
- 23. 是否jmeter重複記錄的步驟
- 24. Cmdlet詳細流
- 25. 異常詳細
- 26. 詳細講解
- 27. 獲取詳細
- 28. JAXB unmarshalling詳細
- 29. 擦除詳細?
- 30. 如何獲取有關正在運行的工作中的DTS步驟的詳細信息?