Вероятно, это не так часто, как представлено, но обычно случается, когда что-то внутренне неформальное требует гораздо более общего привилегированного системного вызова для достижения своего результата, например:
umount
- серьезная команда, так как с ее помощью можно размонтировать множество вещей. ifup
и т. Д.) Предназначена только для суперпользователя. Системы обычно развиваются, чтобы уменьшить количество таких случаев. USB-накопители теперь могут монтироваться пользователем, а сети могут быть подключены пользователем. Но так было не всегда.
На distrowatch.com вы можете искать дистрибутивы, используя систему инициализации в качестве критерия. Вы даже можете выбрать «не systemd».
Проверьте наличие характерных файлов конфигурации и инструментов администрирования каждой системы инициализации.
Если /etc/inittab
не существует, то система инициализации точно не SysVinit. Если он существует, но имеет только одну строку комментария, отличного от -, и в комментариях говорится, что «это используется только для указания уровня запуска по умолчанию, больше ничего не будет иметь никакого эффекта», система инициализации может быть upstart
.
Если /etc/init/
является каталогом, то в конфигурации системы по крайней мере предусмотрена возможность использования upstart
.
Если такие каталоги, как /usr/lib/systemd/system
, /lib/systemd/system
и/или /etc/systemd/system
, существуют, в системе есть как минимум файлы конфигурации для systemd
.
Если initctl list
от имени пользователя root выводит список процессов, контролируемых системой инициализации, upstart
определенно используется.
Если systemctl status
отображает список запущенных системных служб (, вам даже не нужно быть пользователем root, чтобы запустить его! ), systemd
определенно используется.
Если /etc/inittab
существует, но ни initctl list
, ни systemctl status
не работают, это похоже на SysVinit.
Если /etc/inittab
существует и имеет эту строку inittab is no longer used when using systemd.
, то это только systemd.