Некоторые современные UNIX-подобные системы (в частности, многие дистрибутивы Linux) предоставляют собственные схемы загрузки системы, сочетающие в себе достоинства обеих обозначенных выше схем.
Для примера можно рассмотреть схему, используемую в дистрибутивах Linux Debian и Gentoo. Вводится понятие программных уровней выполнения (software run levels) — которые могут создаваться и изменяться администратором системы.
Каждому уровню выполнения соответствует набор системных служб, которые будут запущены при переключении системы на этот уровень выполнения. По умолчанию используется один уровень исполнения — default.
Службы связаны между собой посредством зависимостей: к примеру, служба, монтирующая сетевые файловые системы, требует наличия настроенной сети, а значит зависит от службы конфигурации сети. Службы настройки сети, в свою очередь, зависят от службы, загружающей дополнительные модули ядра (например, драйвер сетевой карты). Следовательно, при загрузке системы сначала должна быть запущена служба, загружающая дополнительные модули ядра, затем настраивающая сеть и только затем — монтирующая сетевые файловые системы; при останове системы данные службы должны быть остановлены в обратном порядке.
Таким образом, можно построить дерево зависимостей служб друг от друга. При использовании такого дерева перезапуск системной службы будет приводить к перезапуску всех зависящих от нее служб.
Управление уровнями загрузки — какие программы необходимо запускать на кажом из них — производится аналогично System V-системам.