Я использую команду service --status-all
oot@frank-Jai:~# service --status-all
[ ? ] acpi-support
[ ? ] acpid
[ ? ] alsa-restore
[ ? ] alsa-store
[ ? ] anacron
[ + ] apache2
[ + ] apparmor
[ ? ] apport
[ ? ] avahi-cups-reload
[ ? ] avahi-daemon
[ ? ] binfmt-support
[ ? ] bluetooth
[ - ] bootlogd
[ - ] brltty
[ ? ] console-font
[ ? ] console-setup
[ ? ] cron
[ ? ] cups
[ ? ] cups-browsed
[ ? ] dbus
[ ? ] dmesg
[ ? ] dns-clean
[ - ] dnsmasq
[ ? ] failsafe-x
[ ? ] friendly-recovery
[ - ] grub-common
[ - ] hostapd
[ ? ] hostname
[ ? ] hwclock
[ ? ] hwclock-save
[ ? ] irqbalance
[ ? ] kdm
[ - ] kerneloops
[ ? ] killprocs
[ ? ] kmod
[ ? ] lightdm
[ ? ] modemmanager
[ ? ] mysql
[ ? ] network-interface
[ ? ] network-interface-container
[ ? ] network-interface-security
[ ? ] network-manager
[ ? ] networking
[ ? ] networking.dpkg-new
[ ? ] ondemand
[ ? ] plymouth
[ ? ] plymouth-log
[ ? ] plymouth-ready
[ ? ] plymouth-splash
[ ? ] plymouth-stop
[ ? ] plymouth-upstart-bridge
[ ? ] powernap
[ ? ] pppd-dns
[ ? ] procps
[ ? ] pulseaudio
[ ? ] rc.local
[ ? ] resolvconf
[ ? ] rfkill-restore
[ ? ] rfkill-store
[ - ] rsync
[ ? ] rsyslog
[ + ] saned
[ ? ] sendsigs
[ ? ] setvtrgb
[ ? ] speech-dispatcher
[ - ] stop-bootlogd
[ - ] stop-bootlogd-single
[ - ] sudo
[ ? ] udev
[ ? ] udev-fallback-graphics
[ ? ] udev-finish
[ ? ] udevmonitor
[ ? ] udevtrigger
[ ? ] ufw
[ ? ] umountfs
[ ? ] umountnfs.sh
[ ? ] umountroot
[ - ] unattended-upgrades
[ - ] urandom
[ ? ] vboxautostart-service
[ ? ] vboxballoonctrl-service
[ ? ] vboxdrv
[ ? ] vboxweb-service
[ + ] vmware
[ ? ] vmware-USBArbitrator
[ + ] vmware-workstation-server
[ ? ] whoopsie
[ - ] x11-common
root@frank-Jai:~#
, что именно они пытаются передать из этих ?
, +
, -
?
Посмотрите, что на самом деле представляет собой service
:
user@box:~$ sudo file $(which service)
/usr/sbin/service: POSIX shell script, ASCII text executable
Это сценарий оболочки, так что вы можете проверить его.
service --status-all
проверяет каждый скрипт инициализации в /etc/init.d
, поддерживает ли он параметр status
. Если это так, он снова вызывает скрипт init, на этот раз с параметром status
и проверяет, запущена ли служба.
Таким образом, это означает:
[ + ] Service running
[ - ] Service not running
и
[ ? ] Service might or might not be running, the script seemingly does not support a status parameter
Насколько я знаю,
[ + ] means the service is running
[ - ] means the service is stopped
[ ? ] means the status of the service cannot be determined
Я не знаю точно, при каких обстоятельствах невозможно определить статус службы, но в в некоторых случаях это происходит потому, что контроль службы был перемещен из традиционного сценария инициализации в выскочившее задание - в этом случае вы можете увидеть его состояние, используя вместо этого initctl
, например,
$ service --status-all 2>&1 | grep mysql
[ ? ] mysql
$ initctl status mysql
mysql start/running, process 1182
Эквивалент service --status-all
для выскочки - initctl list