Linux麒麟系統(tǒng)(V10)rc.local文件延時啟動
此問題有很多原因,文章描述的只是其中一個,分享出來參考一下:
結(jié)論:
有兩個服務(wù)一直運行卡著,導致rc.local依賴服務(wù)一直沒有啟動運行,當那兩個服務(wù)運行結(jié)束后,rc.local開始執(zhí)行,可能是啟動優(yōu)先級引起。
問題分析:(PS:我使用的機器是沒有聯(lián)網(wǎng)的)
使用命令 “systemctl list-jobs” 可以看到系統(tǒng)運行的一些服務(wù),其中包括如下三條:
① systemd-time-wait-sync.service?? ?# 是延遲啟動的系統(tǒng)服務(wù),也用來等待內(nèi)核完成時間同步,但此種檢測方法不可靠;參考資料:https://www.man7.org/linux/man-pages/man8/systemd-time-wait-sync.service.8.html
② ifupdown-wait-online.service?? ?# 具體原因不知道,但通過online可以看出應(yīng)該是需要在線同步什么東西; 參考資料:https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=943934
③ rc-local.service?? ?# rc.local開機自啟所依賴的服務(wù)
當①或服務(wù)處于running狀態(tài)時,②③服務(wù)處于waiting狀態(tài)。使用 “systemctl stop ① ”停掉服務(wù)后,②服務(wù)狀態(tài)立即變?yōu)閞unning,此時③依舊是waiting。使用“systemctl stop ②”停掉服務(wù)后,③服務(wù)狀態(tài)變?yōu)閞unning,rc.local里面的配置命令得以執(zhí)行;
解決辦法:
禁用掉①②服務(wù)的開機自啟,這樣③服務(wù)在開機后就會變?yōu)閞unning狀態(tài);
sudo systemctl disable ①
sudo systemctl disable ②