Опубликован релиз классической системы инициализации SysVinit 3.12, которая широко применялась в дистрибутивах Linux во времена до systemd и upstart, а теперь продолжает использоваться в таких дистрибутивах, как Devuan, Slackware, Debian GNU/Hurd и antiX. Код написан на языке Си и распространяется под лицензией GPLv2.
В новой версии SysVinit предложены изменения, добавленные по запросу разработчиков дистрибутива GoboLinux, использующего стековую модель формирования дерева каталогов (каждая программа устанавливается в отдельный каталог). В src/Makefile предоставлена возможность переопределения пути к каталогам /usr и /etc, используя переменные usrdir и sysconfdir. Добавлена проверка включения заголовочных файлов pty.h и sys/sysmacros.h при сборке bootlogd на системах с glibc.
Добавлены проверки размера и типа значений, возвращаемых при вызове функции ctime() в коде программ bootlogd, dowall, last, logsave и shutdown. Ранее в коде отмеченных программ не производилась проверка на возврат указателя NULL, а под возвращаемую строку выделялся 16-байтовый фиксированный буфер, в который данные помещались без проверки размера возвращённых данных.
Одновременно до версии 1.26 обновлена утилита insserv, применяемая в связке с sysvinit для организации процесса загрузки с учётом зависимостей между init-скриптами. В новой версии утилиты insserv 1.26 предложены только исправления в документации. Версия утилиты startpar, используемой для параллельного запуска нескольких скриптов в процессе загрузки системы, не изменилась.
Источник: https://www.opennet.ru/opennews/art.shtml?num=62453