可以先嚐試用
systemctl start gitlab-runsvdir.service
如果凍結不動的話,就需要檢視系統服務項了
systemctl -t target
如果系統正常的話,所有任務應該是loaded active active,如果存在inactive dead選型,意味著有些服務出錯了。
UNIT LOAD ACTIVE SUB DESCRIPTION basic.target loaded active active Basic System cloud-config.target loaded active active Cloud-config availability cloud-init.target loaded active active Cloud-init target cryptsetup.target loaded active active Encrypted Volumes getty.target loaded active active Login Prompts graphical.target loaded active active Graphical Interface local-fs-pre.target loaded active active Local File Systems (Pre) local-fs.target loaded active active Local File Systems multi-user.target loaded active active Multi-User System network-online.target loaded active active Network is Online network-pre.target loaded active active Network (Pre) network.target loaded active active Network nss-user-lookup.target loaded active active User and Group Name Lookups paths.target loaded active active Paths remote-fs-pre.target loaded active active Remote File Systems (Pre) remote-fs.target loaded active active Remote File Systems slices.target loaded active active Slices sockets.target loaded active active Sockets swap.target loaded active active Swap sysinit.target loaded active active System Initialization time-sync.target loaded active active System Time Synchronized timers.target loaded active active Timers LOAD = Reflects whether the unit definition was properly loaded. ACTIVE = The high-level unit activation state, i.e. generalization of SUB. SUB = The low-level unit activation state, values depend on unit type. 22 loaded units listed. Pass --all to see loaded but inactive units, too. To show all installed unit files use 'systemctl list-unit-files'.
multi-user.target loaded inactive dead start Multi-User System
這時候使用
systemctl list-jobs
如果存在某個任務是running,則是該任務堵塞了其他所有服務。
1 graphical.target start waiting 107 plymouth-quit-wait.service start running 2 multi-user.target start waiting 169 ureadahead-stop.timer start waiting 121 gitlab-runsvdir.service start waiting 151 system-getty.slice start waiting 31 setvtrgb.service start waiting 122 systemd-update-utmp-runlevel.service start waiting
此時就可以利用 systemctl stop plymouth-quit-wait.service結束該任務。
然後重啟gitlab即可。
https://docs.gitlab.com/omnibus/common_installation_problems/#gitlab-runsvdir-not-starting