Неделю назад в GitHub проекта systemd стало известно о проблеме #6237, которая приводила к неожиданному поведению этой init-системы для Linux, если имя системного пользователя начинается с цифры.

При конфигурации сервиса в systemd таким образом, чтобы он запускался из-под пользователя «0day» (или любого другого, имеющего цифру в начале имени, но не являющегося полностью числом), init-система вела себя некорректно, подменяя пользователя на администратора (root). По утверждению Леннарта Поттеринга (Lennart Poettering), автора systemd, такое поведение является правильным, поскольку подобные имена пользователей в Linux формально недопустимы и systemd отклоняет их, но продолжает запуск сервиса «для совместимости».

Впрочем, многие из Linux-сообщества не смогли согласиться с разработчиком, считая, что более правильным результатом «валидации» (как называет это сам Леннарт) такой конфигурации должна стать ошибка при запуске сервиса (как случается, например, в случае отсутствия указанного системного пользователя), а не его запуск из-под другого пользователя (и особенно — root). Леннарт, закрывший тикет с примечанием «not-a-bug», таких взглядов не разделяет.

Своеобразной кульминацией этого спора стала реакция в сообществе другой свободной операционной системы — OpenBSD. В почтовую рассылку openbsd-tech был отправлен патч для «совместимости doas с systemd» с примечанием: «Если имя пользователя начинается с цифры, но не является числом, считать его root».