Почему это предпочтительнее?
Причина использования этого типа программного обеспечения заключается в оптимизации. Вы начинаете только с самых основных функций и добавляете все, что хотите. Поскольку вы начинаете с почти бесплодия, в конечном итоге вы получите только те функции, которые вам нужны. Это более эффективно по сравнению с удалением ненужных функций. Возможно, вы поймете, что в конечном итоге вам придется потратить много времени на настройку, и вы должны знать достаточно программирования, чтобы добавлять исправления в существующий код и устранять проблемы на C.
Что ты можешь контролировать?
В большинстве систем, из которых наиболее распространена systemd, у вас есть один пакет, который заботится о запуске, остановке и управлении демоном. Если вы хотите свести к минимуму и ускорить процесс, вы можете выбрать sinit и выбор контроллера демона в соответствии с вашими потребностями. Для этого вы должны достаточно знать о системе Linux. Если у вас есть демон, который вы можете настроить, вам просто нужно знать части вашей системы. Поскольку вы не можете управлять ничем, кроме запуска и остановки, вам нужно запустить один демон или выбрать контроллер демона.
Какой демон?
Сайт suckless предлагает вам использовать инструменты демона от Untroubled.org. Это программное обеспечение написано для любой системы * Nix, поэтому вы можете использовать полученные знания даже за пределами Linux. Использование daemontools-encore - это отдельная глава, но, проще говоря, пакет превратит любой скрипт в службу. Вы можете разместить файлы где угодно, но каталоги должны быть доступны при запуске daemontools. Поэтому любые файловые системы, в которых он находится, должны быть смонтированы раньше другими скриптами. Чтобы скомпилировать этот пакет, вам нужно создать новый make-файл. В противном случае этот пакет является стандартным способом компиляции кода C. Если вы не компилируете код C на регулярной основе, вы должны использовать это в качестве практики. Не пробуйте свою живую систему.
Безопасный способ проверить это.
Один из безопасных способов проверить это - загрузить минимальную систему Linux и запустить ее на виртуальной машине. Если вы это сделаете, создайте исходный каталог и добавьте sinit, sbase и daemontools-encore. С помощью этих трех бинарных пакетов вы можете построить всю систему управления загрузкой и демонами. Текущие системы запускаются с помощью systemd. Когда вы начинаете создавать новую систему, вам необходимо перенести любые нужные вам демоны и запустить их как простой скрипт. Поскольку systemd уже запускает скрипты, это будут в основном те же скрипты. Что вам нужно добавить вручную, так это зависимости между процессами. Если вы действительно хотите создать минимальную систему, вы можете.
Быстро образует пузыри, почему не используется в большинстве машин?
Как только система запускается с использованием sinit, она будет быстро разворачиваться. Причина в том, что у вас будет только та система, которая вам нужна, и ничего больше. Вы можете задаться вопросом, почему он не используется повсеместно. Причин множество, одна из них заключается в том, что systemd уже завершен и отслеживает сложные взаимодействия между процессами. Если вы используете sinit, вам придется строить больше логики вокруг этих зависимостей. Логика, которая уже есть в systemd. Также существует очень тесная интеграция между GNOME и systemd, поэтому эти системы поддерживают друг друга. Большинство ситуаций рассматриваются просто потому, что они разрабатывались параллельно.
Заключение
Используя sinit, вы можете создать очень быструю загрузочную систему. У вас будет много вариантов того, как поддерживать сбалансированность вашей системы, а также все процессы активными и контролируемыми. Однако вам придется проделать большую работу, чтобы полноценная система работала со всеми прибамбасами. Для большинства из нас это может быть захватывающий проект, чтобы узнать, как работают Linux и другие системы * Nix, но нам понадобится стандартный дистрибутив для наших «производственных систем»