🐧 Как вывести список служб, которые запускаются при загрузке на Linux

Мануал
По умолчанию некоторые важные системные службы запускаются автоматически при загрузке системы.
Например, службы NetworkManager и Firewalld будут автоматически запускаться при загрузке системы.
Службы startup также известны как демоны в Linux и Unix-подобных операционных системах.
Они будут продолжать работать в фоновом режиме и выполнять свою работу без вмешательства пользователя.
В дополнение к системным службам в автозагрузку добавятся и некоторые другие сторонние приложения.
В этом кратком руководстве давайте посмотрим, как найти и составить список служб startup во время загрузки в Linux и Unix-подобных системах.

Список служб автозапуска при загрузке в Linux

Список служб запуска зависит от системы init.

Systemd – это система init по умолчанию для основных новых версий дистрибутивов Linux.

Если ваши системы работают с системным менеджером systemd, вы можете перечислить все службы с помощью следующей команды:

$ sudo systemctl list-unit-files --type=service

Пример вывода:

UNIT FILE                                  STATE           VENDOR PRESET
accounts-daemon.service                    enabled         enabled      
acpid.service                              disabled        enabled      
alsa-restore.service                       static          enabled      
alsa-state.service                         static          enabled      
alsa-utils.service                         masked          enabled      
anacron.service                            enabled         enabled      
apparmor.service                           enabled         enabled      
apport-autoreport.service                  static          enabled      
apport-forward@.service                    static          enabled      
apport.service                             generated       enabled      
.
.
.
wacom-inputattach@.service                 static          enabled      
whoopsie.service                           disabled        enabled      
wpa_supplicant-nl80211@.service            disabled        enabled      
wpa_supplicant-wired@.service              disabled        enabled      
wpa_supplicant.service                     enabled         enabled      
wpa_supplicant@.service                    disabled        enabled      
x11-common.service                         masked          enabled      
xfs_scrub@.service                         static          enabled      
xfs_scrub_all.service                      static          enabled      
xfs_scrub_fail@.service                    static          enabled      

265 unit files listed.

Как указано выше, эта команда показывает список всех служб (как включенных, так и отключенных при загрузке системы) в вашей системе Linux.

Вы можете проверить это, посмотрев в разделе STATE в приведенном выше выводе.

Службы, запускаемые при загрузке, помечаются как enabled, а службы, которые не запускаются, отмечаются как disabled.

Чтобы вывести список только включенных служб при загрузке системы, запустите:

$ sudo systemctl list-unit-files --type=service --state=enabled --all

Пример вывода:

UNIT FILE                                  STATE   VENDOR PRESET
accounts-daemon.service                    enabled enabled      
anacron.service                            enabled enabled      
apparmor.service                           enabled enabled      
autovt@.service                            enabled enabled      
avahi-daemon.service                       enabled enabled      
.
.
.
udisks2.service                            enabled enabled      
ufw.service                                enabled enabled      
unattended-upgrades.service                enabled enabled      
vboxweb.service                            enabled enabled      
wpa_supplicant.service                     enabled enabled      

74 unit files listed.

Чтобы вывести список всех отключенных служб при загрузке системы, выполните:

$ sudo systemctl list-unit-files --type=service --state=disabled --all
Как я уже сказал, некоторые старые дистрибутивы Linux могут использовать SysV или Upstart в качестве системы инициализации по умолчанию.
Если ваша система использует sysv, выполните следующую команду, чтобы вывести список всех служб:
$ sudo service --status-all

Пример вывода:

[ + ]  acpid
 [ - ]  alsa-utils
 [ - ]  anacron
 [ + ]  apparmor
 [ + ]  apport
 [ + ]  avahi-daemon
 [ + ]  bluetooth
 [ - ]  console-setup.sh
 [ + ]  cron
 [ - ]  cryptdisks
 [ - ]  cryptdisks-early
 [ + ]  cups
 [ + ]  cups-browsed
 [ + ]  dbus
 [ - ]  dns-clean
 [ + ]  dnsmasq
 [ + ]  exim4
 [ + ]  gdm3
 [ + ]  grub-common
 [ + ]  hddtemp
 [ - ]  hwclock.sh
 [ + ]  irqbalance
 [ + ]  kerneloops
 [ - ]  keyboard-setup.sh
 [ + ]  kmod
 [ + ]  lm-sensors
 [ - ]  lvm2
 [ - ]  lvm2-lvmpolld
 [ + ]  network-manager
 [ + ]  networking
 [ + ]  openvpn
 [ - ]  plymouth
 [ - ]  plymouth-log
 [ - ]  pppd-dns
 [ + ]  procps
 [ - ]  pulseaudio-enable-autospawn
 [ - ]  rsync
 [ + ]  rsyslog
 [ - ]  saned
 [ - ]  screen-cleanup
 [ + ]  smartmontools
 [ - ]  speech-dispatcher
 [ - ]  spice-vdagent
 [ + ]  sysstat
 [ + ]  udev
 [ + ]  ufw
 [ + ]  unattended-upgrades
 [ - ]  uuidd
 [ + ]  virtualbox
 [ - ]  whoopsie
 [ - ]  x11-common
Здесь + указывает на то, что служба запущена, а – указывает на остановленную службу.
Чтобы вывести список всех служб, которые включены при загрузке, выполните:
$ sudo chkconfig --list

Эта команда отобразить статус каждой службы на каждом уровне выполнения.

Пример вывода приведенной выше команды будет таким:

acpid           0:off   1:off   2:on    3:on    4:on    5:on    6:off
anamon          0:off   1:off   2:off   3:off   4:off   5:off   6:off
atd             0:off   1:off   2:off   3:on    4:on    5:on    6:off
[...]

В приведенной выше команде «on» означает, что служба запускается при загрузке.

Вы также можете просмотреть статус конкретной службы на разных уровнях выполнения, как показано ниже:

$ sudo chkconfig --list httpd
Если в вашей системе Linux используется upstart, запустите эту команду, чтобы вывести список всех служб запуска:
$ sudo initctl list

Приведенная выше команда покажет все задания Session

Если вы хотите показать все  System задания, запустите:

$ sudo initctl --system list

Чтобы перечислить все службы и показать их статусы на каждом уровне запуска, запустите:

$ sudo initctl list | awk '{ print $1 }' | xargs -n1 initctl show-config

Чтобы показать состояние конкретной службы, выполните эту команду:

$ initctl show-config <service_name>

Отключение служб при запуске системы

Чем больше приложений вы установите на свой компьютер, тем больше времени потребуется для загрузки вашей системы.

Чтобы уменьшить время загрузки вашей системы Linux, вам нужно найти ненужные службы и отключить их.

Скажем, например, если вы не хотите, чтобы служба unattended-upgradedes.service загружалась при запуске ОС, вы можете отключить ее с помощью команды:

$ sudo systemctl disable --now unattended-upgrades.service

Чтобы узнать, включена ли служба во время загрузки, запустите:

$ sudo systemctl is-enabled <service-name>

 

Добавить комментарий