この質問 質問:「systemctlからすべての有効なサービスを一覧表示する方法?」そのページの回答は次のとおりです。
systemctl list-unit-files | grep enabled
systemctl list-unit-files --state=enabled
少なくともsystemdバージョン229(Ubuntu 16.04)では、systemctl list-unit-files
には、レガシーinitスクリプトを介して起動される「LSB」サービスは含まれません。
したがって、元の質問は未回答のままのようです:systemdは、レガシーサービスを含め、ブート時に開始しようとするすべてのサービス(および他のユニットタイプ)のリストを表示できますか?
考慮してください:
$ systemctl list-units | grep LSB | grep grub
grub-common.service loaded active exited LSB: Record successful boot for GRUB
$ systemctl list-unit-files | grep enabled | grep grub || echo 'nothing found'
nothing found
$ systemctl is-enabled grub-common
grub-common.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install is-enabled grub-common
enabled
systemctl
はgrub-common
を知っており、明示的に尋ねるとsystemctl
はそれが有効であることを通知します。
それで... systemdに、レガシースクリプトを含め、起動時に実行しようとするすべてのサービスのリストを表示させる方法はありますか?
あなたが望むコマンドは次のとおりです:
systemctl list-units --type service --all
これは私のテストの結果であり、レガシーブートサービスのサービスも含めてすべてのサービスをリストしています。
ソース: