LINUX.ORG.RU
решено ФорумAdmin

В чем отличие OpenRC от Systemd?

 , , ,


4

3

Я не причисляю себя к опытным, так называемым «тру» линуксоидам, хоть и использую ArchLinux в качестве десктопа. Захотелось «осилить» сборку Gentoo. В хендбуке говорилось о выборе между Systemd и OpenRC. Погуглив, почитав Вики.генту и всякие форумы, так и не понял в чем их принципиальное отличие, а также плюсы и минусы. Расскажите, в чем их достоинства и недостатки? Что лучше выбрать?


Ответ на: комментарий от anonymous

Вам уже N раз ответили, сравнивать «Бабеля со шнобелем» не корректно. Что бы было понятно, у меня сервер одна штука (это реальный сервак), на нем в виртуалках с одинаковыми конфигами(память кол-во процессоров и так далее) есть как деб9 так и копейка7. Деб грузиться гораздо быстрее чем копейка. И там и там systemd. Теперь вопрос к вам, почему по вашему мнению демьян грузиться быстрее копейки?

anc ★★★★★
()
Ответ на: комментарий от intelfx

По-ходу, это тот анонимус, который в одном из тредов топил за noexec, а когда ему показали, как легко и просто этот noexec обходится, обозвал себя Д’Артаньяном и гордо слился.

Короче, местный придурок.

anonymous
()
Ответ на: комментарий от anc

Вы же тут крутой админ с настоящим сервером. Вариантов множество. Начиная от оптимизаций кода и иных опций сборки программ, и заканчивая расположением на диске, если там не ssd. Кроме того в дебиане в стандартной поставке нет прошивок устройств. Плюс разные файловые системы имеют разную латентность на ssd. И XFS может значительно повлиять на скорость загрузки. Возможно системы разнятся чем-то еще. Ну и не забываем, что ядра могут быть очень разных версий и потому могут вести себя странно особенно с системд. У меня на всех компах войд стартует крайне быстро. На генту тоже жалоб нет. Вам ведь ничто не мешает поставить девуан. И еще можно аналог редхата погонять от оракла, там у них свое ядро есть. Может откопаете в чем дело.

anonymous
()
Ответ на: комментарий от anonymous

Вариантов множество...

Вот видите вы сами и ответили, что сравнивать не сравниваемое как-то глупо и система инициализации тут не причем.
ЗЫ В моем случае все банальнее. В копейке стартует убер дофига всего, а демьян почти голый.

anc ★★★★★
()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от AUX

найдется хоть один умный идиот, который четко и попунктно сравнит функции и возможности опенрц и системд, вместо того чтобы бегать с горящей жопой и испускать струи своей разумности…

pfg ★★★★★
()
Ответ на: комментарий от anc

Опять удалили сообщение. В нем было сказано, что вопрос некорректный был. Потому что надо указывать важные условия. А ваш случай говорит о том, что системд грузит систему с трудом. Проверить вы и сами можете за менее чем 5 минут установив тот же Void в виртуалку и сравнив скорость его загрузки с дебианом, а если этого будет недостаточно, то запустить все те же сервисы, что и на центосе.

anonymous
()

Я трэд не читал, как разработчик генты отвечал.

OpenRC == всего-лишь обёртка над sysVinit. Учти, что документации по OpenRC мало, пилят его полтора человека. C systemd ты с бОльшей вероятность решишь свои проблемы.

Zlogene
()

Основное отличие systemd от sysvinit и openrc в том, что там нет костыля с pid-файлами. Суть в чём: когда мы стартуем сервис, мы запускаем бэш-скрипт, который, в свою очередь стартует процесс в бэкграундном режиме, закрыв его stdin/err/out и выходит. Из системы инициализации при этом раскладе мы не можем вытащить PID демонизированного процесса, поэтому мы вынуждены придумывать костыли, допустим, сервис, должен писать в /var/run/apache2.pid свой PID и только тогда в /etc/init.d/apache2 status мы сможем получить этот PID и через ps вытащить, жив ли процесс. Если по какой-то причине есть проблемы с локфайлом, поведение sysvinit скриптов будет неопределённым. Или же разработчики сервиса должны сделать свою утилиту по типу apachectl, которая пишет в сокет для управления сервисом и получает оттуда статус. Абсолютно аналогичная ситуация с cron: если тебе нужно обеспечить, к примеру, запуск только одной задачи за раз (допустим, время выполнения может быть больше интервала, указанного в crontab), тебе придётся делать костыли с flock или реализовывать ненужную логику в коде. В systemd же мы можем в явном виде отследить все дочерние процессы и запускать второй инстанц только после завершения первого.

Второе отличие следует из первого: поскольку мы не закрываем дескрипторы запущенных сервисов, мы можем получить их логи в одном месте. То есть разработчику сервиса достаточно писать в stdout/err, вместо явной реализации логгирования в файл в коде процесса или сервиса.

Третье отличие (в большей степени от sysvinit): там меньше копипаста. Можно взять любой скрипт от sysv-сервиса и там обязательно будет что-то вроде: source /etc/default/servicename

[ -Z $PIDFILE ] && PIDFILE=/var/run/servicename.pid

start(){

/sbin/servicename –pidfile $PIDFILE –daemonize

}

case $1 in

start)

start

;;

stop)

stop

;;

esac

Ну и из минусов: был переходный период, когда было непонятно, какой системой запускается тот или иной сервис, итого утилиты от systemd использовали врапперы для sysvinit-сервисов и наоборот, что приводило к аду с точки зрения дебаггинга, когда что-то не работает или имеет неправильные зависимости. Сейчас это в принципе пофикшено и должно работать в современных дистрибутивах нормально.

Вторая проблема это то, что если для старта сервиса нужно реализовывать какую-то хитрую логику, начинается веселье. Допустим, есть сервис, у которого конфиг лежит в /etc/default/servicename и если конфига нет или пустой, сервис не должен стартовать, для этого делается отдельная опция из серии: AssertFileNotEmpty=/etc/default/servicename , или нужно удалить временные файлы перед стартом: ExecStartPre=/bin/rm -fr /blabla . И такая опция есть для каждого из 666 случаев.

siraenuhlaalu
()
Последнее исправление: siraenuhlaalu (всего исправлений: 2)
Ответ на: комментарий от intelfx

Нас, «адептов» технической корректности и грамотности, уровень ведения дискуссии волнует не меньше технических вопросов. А вот «адептов» других «систем» по-видимому волнует только срач и улюлюканье.

Разводя срач и улюлюканье адепты сюсямда всегда орут, что они за корректность и грамотность ;)

anonymous
()
Ответ на: комментарий от anonymous

Не говно, а норму. Системд - это НОРМАЛЬНО.

ага, … для педерастов в задницу долбиться - это нормально ;)

anonymous
()
Ответ на: комментарий от intelfx

Алё, гараж, тебе специально сказали, что т. к. опытный может и включить, и выключить, а неопытный не может ни того, ни другого, дефолт должен быть юзабельным.

дятел, как же это линукс до сюсямда жил без dns, dhcp, логирования, http-сервера и мегатоны прочего ненужного шлака в системе инициализации? совсем неюзабельный был без сюсямда.

… какую только бредятину не тянут за уши сюсямдфанбои, чтобы оправдать завоз этого дерьма в систему.

anonymous
()
Ответ на: комментарий от anonymous

– ретардно-старпёрская позиция человека, не желающего читать новую документацию. Адекваты читают маны и проблем нет, ретарды-старпёры боятся заглянуть в документацию и изящно решить то, что кажется проблемой.

дебилы в восхищении от возможности перманентно читать маны для решения перманентно искусственно создаваемых им проблем ;)

anonymous
()
Ответ на: комментарий от Oberstserj

И два - нахрена мне рыть монструозный комбайн, когда и лего из мелких кирпичиков выполняет все необходимое? Чтобы что?

… педерастам обидно, что кто-то не хочет сношаться в задницу … ведь такой путь им выбрали мэйнтенеры и они покорно стали раком, а кто-то не «зашкварился» … обидно же и досадно ;)

anonymous
()
Ответ на: комментарий от anonymous

Довольно авторитетная среди линуксоидов домохозяйка, Линус Торвальдс, тебе также передает привет со своей Федоры.

Торвальд зарплату получает под полмиллиона баксов от линуксфоундэйшен, платиновым членом которой является микрософт (это значит башляет полмиллиона баксов в год). Так что Торвальдс уже давно не независимый свободный разработчик, а обыкновенный наёмник корпораций … и не может свободно говорить что думает.

anonymous
()
Ответ на: комментарий от pfg

наличие множества дистрибутивов как раз и дает тебе право выбора. фундаментальные решения ментейнеров дистрибутива - это как раз их право устанавливать путь развития конкретного дистрибутива. не нравится - ставь другой

ты бредишь. Разумный человек легко поймёт, что единомоментный переход всех ведущих дистрибутивов на сюсямд это никакое не право выбора пути, а проталкиваемое свыше (корпорации, спецслужбы) направление, которого обязаны все придерживаться, если хотят иметь бабло и не повторить судьбу Мердока.

сюсямд - это перспективная разработка корпорастов-особистов для слежки и конроля пользователя, чтобы лишить его возможности самому настраивать компьютер. Выражаясь фигурально, это кампания по отъёму рута у пользователя. Админом будет только удалённый дядя - большой брат. Он будет решать что запускать, какие данные собирать и куда отправлять и т.д. Пользователь будет только пользователем, который должен надеть намордник и радоваться. Это главная цель внедрения сюсямда. После этого теряется смысл использовать линукс. На оффтопике локального админа фактически забрали с выходом висты. Главный смысл использовать линукс на декстопе был в отсутствии намордника - возможности контролировать происходящее в твоём компьтере. После сюсямда этот смысл теряется. «Стандартизация» не приведёт к росту популярности и конкуренции с оффтопиком. Напротив, это сегмент будет полностью потерян. Останется корпоративная рэдхат-сюсямд-ос, которая будет конкурировать с корпоративным солярисом. Как-то так.

Полезные идиоты (они же сюсямд-фанбои) этого не видят и не понимают.

anonymous
()
Ответ на: комментарий от anonymous

переход всех ведущих дистрибутивов на сюсямд это никакое не право выбора пути, а проталкиваемое свыше (корпорации, спецслужбы)

Сионистский заговор забыл! Жиды это все проталкивают.

Polugnom ★★★★★
()

Слушай ТС, ну ты генту хоть установил?

anonymous
()
Ответ на: комментарий от chenbr0

что в этом плохого? вчершний прыщавый арчевод сдает сертификат шапки и идет работать в офис и становится ценный кадром, в то время как свободный столман снимает угол в свои 70 лет, а где то далеко ухмыляется патрик гнилыми зубами.

не все прыщавые арчеводы, стремящиеся варить кофе в офисе с сертификатом шапки. Есть те, кто использует линукс как инструмент в своих делах. … процентов 80 демократических буржуинов снимают угол всю жизнь.

или тебе жалко, что теперь линукс мейнстрим, а не ос для гиков? хотели популярности - на те, распишитесь.

теперь линукс идет в комплекте с обязательным прыщавым шапочносертифицированным арчеводом, гордо именуемым сюсямдадмином ;)

anonymous
()
Ответ на: комментарий от Polugnom

Сионистский заговор забыл! Жиды это все проталкивают.

… ну все же и так поняли ;)

anonymous
()
Ответ на: комментарий от intelfx

Unix-принципы мертвы.

мозги у тебя мертвы

Тем не менее, systemd абсолютно соблюдает принцип «do one thing and do it well». Любой, кто утверждает обратное, просто демонстрирует свою некомпетентность, вот и всё.

… и уже разложились и воняют ;)

anonymous
()
Ответ на: комментарий от intelfx

К твоему счастью, пользоваться службой логирования из комплекта systemd совершенно необязательно. Ты абсолютно волен в том, чтобы поставить какой-нибудь rsyslog и использовать его, а не journald. Заодно и получается, что никакой systemd и не комбайн…

если в комбайне не включать молотилку, то это не комбайн, а трактор … жесть ты дятел ;)

anonymous
()
Ответ на: комментарий от intelfx

А давно ты видел БД, хранящую данные в текстовых файликах? И чтобы обязательно select, join и update были фильтрами.

а при чём БД к логам? Если хочешь select, то парсиш лог и грузишь в БД и там делаешь select. … уже реляционную СУБД в сюсямд завезли?

Соринка, глаз, бревно.

мозг - дерево.

anonymous
()
Ответ на: комментарий от Kroz

На десктопе и то и то не нужно. А когда это нужно, syslog-ng, rsyslog, ELK etc отлично с этим справлялись. Непонятно зачем нужно было в systemd придумывать велосипед.

Как раз таки понятно - чтобы прятать накапливаемые и передаваемые большому бруту данные от пользователя. Для начала логи бинарные, а потом их начнут шифровать. Это движение окна Овертона к системе «телеметрии», совершенно аналогичной десятому оффтопику. Просто нет никаких других вразумительных причин чтобы это делать.

anonymous
()
Ответ на: комментарий от intelfx

Это уже тема для другого разговора. Причину для того, чтобы не хранить логи в тексте, тебе назвали.

ничего ты, дятел, не назвал. Ненужен никакой отклик, чтобы добавлять записи в конец файла. Есть ротация логов, чтобы не было больших файлов. А если нужен какой-то сложный анализ, то всё равно нужно загружать в СУБД … или сюсямд уже SQL поддерживает? какую версию? уже может и оракл ненужен, когда есть сюсямд с маленьким … откликом ;)

anonymous
()
Ответ на: комментарий от anonymous

$ journalctl –disk-usage Archived and active journals take up 2.1G in the file system.

это всего лишь на моем локалхосте, где я периодически чищу логи. А теперь представим сервер с парой процессов, спамящих в логи 24/7. Объемы будут в десятки, а то и сотни раз больше. Удачно вам погрепать все это, а потом передать по сети с недешевым трафиком.

для того и сделано, чтобы сложно было выщемить кто и что о тебе собирает в системе. Свалить всё в здоровенную кучу, заглядывать в которую можно исключительно через сюсямдовское окошечко. Завтра, для безопасности и достоверности, начнут всё это шифровать каким-нибудь рэдхатовским сертификатом.

anonymous
()
Ответ на: комментарий от mxfm

Это стандартный template для всех подобных тредов. А тем временем 90% используют systemd и кладут болт на приведённые «доказательства».

серьёзно? 99% используют венду и кладут болт на тебя вместе с твоим сюсямдом. … о как повернулось, да? ;)

anonymous
()
Ответ на: комментарий от mxfm

Моя позиция проста - большинство уже сделало свой выбор, перейдя на systemd. Мнение когорты психопатов, которые узрели в этом захват мира с помощью корпораций их не интересует. Рассуждения типа «в systemd нет xxx, поэтому это отстой» тоже никому не интересно.

дятел, а чего ты говоришь за всех? только дебильные психопаты начинают говорить за всех ;)

Реальные факты показывают, что большинство сделало свой выбор.

в жопе глаз тебе показывают

Я лично сделал свой выбор в пользу systemd.

собственно, это единственная осмысленная фраза из потока твоего бреда ;)

Как говорил выше, эти рассуждения никого не интересуют.

опять шиза заставляет тебя воображать себя Людовиком 14-ым

anonymous
()
Ответ на: комментарий от siraenuhlaalu

Авторы Plan9 и не помышляли о таких сложностях и у них работали любые кластеры хоть с видеокартами на соседних компах. Там была реализована модель все есть файл и через файловую систему передавались данные. Собственно и сейчас идет развитие в лице Plan9front. Вот тут можете узреть списки изменений в релизах.

http://9front.org/releases/

И клали эти ребята на системду. Весь этот проприетарный подход далек от качественной реализации именно из-за тонны кода. Корпорациям проще нанять тысячи идиотов в программисты, чем париться о кардинальном переделывании многократно переусложненной архитектуры операционной системы с помощью пары гениев. Все работает, деньги идут, корпорациям хорошо.

anonymous
()
Ответ на: комментарий от intelfx

шаблонная конспирологическая шиза Уровень собравшихся мыслителей примерно понятен.

давно понятен уровень тупых дятлов (почему-то мнящих себя техническими спецами), которые объективную реальность называют шизой:

Linus Torvalds was approached by NSA for backdoor in Linux - Nils Torvalds (father of Linus)

https://www.youtube.com/watch?v=wwRYyWn7BEo

anonymous
()
Ответ на: комментарий от anonymous

А это и есть опенсорс: либо делай сам, либо жри что дают. Грубо, но правда. В чем проблема самому поддерживать совместимость с другими системами инициализации в необходимых тебе пакетах? Нет скиллов? Нет времени? Нет желания? Вот и заткнись.

любит же всякая вонючая пидаросня людям рот затыкать. Это никакой не оупэнсорц - это узурпация кучкой пидаров (под покровительством корпорастов) права решеать за всё сообщество. Сообщество проиграло последний раунд пидарасам, это факт. Но надо просто оставить заднеприводных в дебиане и уходить всем на девуан. Тогда пидарасы потеряют власть над сообществом.

anonymous
()
Ответ на: комментарий от anonymous

ты бредишь. Разумный человек легко поймёт, что единомоментный переход всех ведущих дистрибутивов на сюсямд это никакое не право выбора пути, а проталкиваемое свыше (корпорации, спецслужбы) направление, которого обязаны все придерживаться, если хотят иметь бабло и не повторить судьбу Мердока.

полноценно можно сказать что бредишь ты :) к примеру возьмем «единомоментный» переход с ламповой на транзисторную технику. думаю в момент перехода обязательно была (да и в принципе и сейчас хватает) кучка поклонников «теплого лампового», мнение которых не спросили.

а просто взяли и перешли при том, что лампы имели огромное многообразие конструкций и функциональность, нередко заменяющую большую транзисторную схему, а иногда и не заменимую в принципе - к примеру, в каждой микроволновке, которая сейчас стоит у каждого на кухне, есть магнетрон - мощная, компактная и дешевая генераторная лампа, равноценно заменить которую на твердотельную электронику физически не получится.

но как-то вот перешли окончательно и безповоротно и как-то всем нормасик. я думаю что вот и тебе, разумно покумекав над плюсами и минусами, не захочется вернутся на ламповую электронику.
так же, предположу, было и с системд. имелись неоспоримые плюсы, тебе, простой анонимус не доступные… почитай соответствующие ветки обсуждений для дистров и проникнись мнением людей, не первый год занимающиеся выпусков операционок.

п.с. спец.службам и зеленым человечкам с марса до звезды на системы в операционках - зонды вставляются в любую и совершенно через другие методы.

сюсямд - это перспективная разработка корпорастов-особистов для слежки и конроля пользователя, чтобы лишить его возможности самому настраивать компьютер. Выражаясь фигурально, это кампания по отъёму рута у пользователя. Админом будет только удалённый дядя - большой брат. Он будет решать что запускать, какие данные собирать и куда отправлять и т.д. Пользователь будет только пользователем, который должен надеть намордник и радоваться. Это главная цель внедрения сюсямда. После этого теряется смысл использовать линукс. На оффтопике локального админа фактически забрали с выходом висты. Главный смысл использовать линукс на декстопе был в отсутствии намордника - возможности контролировать происходящее в твоём компьтере. После сюсямда этот смысл теряется. «Стандартизация» не приведёт к росту популярности и конкуренции с оффтопиком. Напротив, это сегмент будет полностью потерян. Останется корпоративная рэдхат-сюсямд-ос, которая будет конкурировать с корпоративным солярисом. Как-то так.

данным высером, о мой прекрасный анонимус, ты только доказываешь что тебе надобно бы не системой рулить или выпуском дистра, а к специалистам соотвествующего мед.профиля обратится.

и уж главный отросток, которым пингвин держится на плаву и даже потихоньку на удивление поджимает под себя вовседырошную винду, явно находится не в районе рут-доступа к устройству, а гораздо глубже, как минимум, в районе опенсорса :) пока будет опенсорс, вопросы по анальным зондам будут иметь абсолютное решение, даже при отсутствии рут-доступа на конечных операционках :)

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 1)
Ответ на: комментарий от anonymous

Авторы Plan9 и не помышляли о таких сложностях и у них работали любые кластеры хоть с видеокартами на соседних компах. Там была реализована модель все есть файл и через файловую систему передавались данные

Ты путаешь тёплое с мягким. Я не говорю, что файлы это плохо (посмотри на ту же procfs, где всё логично: есть папочка с процессом, есть вся его информация, ты, как разработчик программы не заморачиваешься для того, чтобы обновить там информацию, всё делает ядро!). А теперь другой пример: (это кусок инитскрипта постгреса 9.2), тут мы определяем то, что сервис стартовал:

$SU -s /bin/sh -l postgres -c "$PGENGINE/postmaster -p '$PGPORT' -D '$PGDATA' ${PGOPTS} &" >> "$PGLOG" 2>&1 < /dev/null
sleep 2 # вот тут мы не можем отследить статус сервиса, поэтому просто поспим 2 секунды, в надежде, что этого будет достаточно
pid=`pidof -s "$PGENGINE/postmaster"` # поищем PID процесса по регэкспу названия процесса
if [ $pid ] && [ -f "$PGDATA/postmaster.pid" ]
then
 success "$PSQL_START" # тут дальше несколько строчек debian-specific, я их убрал 
 head -n 1 "$PGDATA/postmaster.pid" > "/var/run/postmaster.${PGPORT}.pid" # создадим pid-файл с PID мастер-процесса. Да, полагаем, что он идёт первым в списке
else
 failure
 script_result=1
fi

Вот ещё хороший пример (инитскрипт опача, я удалил лишние выводы строк):


stop_wait()
{
        for (( i=$1; $i>0; i=(($i-1)) )); do
                "$APACHECTL" stop >/dev/null 2>&1
                RETVAL=$?
                if [ $RETVAL -ne 255 ]; then
                        return $RETVAL
                fi
                sleep 1
        done
        "$APACHECTL" stop >/dev/null 2>&1 # контрольный выстрел в голову, а вдруг предыдущие 300 (по дефолту) итераций не прокатят?
        RETVAL=$?
        return $RETVAL
}
stop()
{
        msg_stopping $name
        stop_wait $WAITSTOP 
        RETVAL=$?
        return $RETVAL
}
siraenuhlaalu
()
Ответ на: комментарий от Meyer

Плюс в Gentoo можно избавиться от OpenSSL в пользу LibreSSL.

И патчить вручную некоторые пакеты (как я однажды делал, пока до меня не дошло - а зачем?).

УМВР безо всякого патчанья, ЧЯДНТ?

dimgel ★★★★★
()
Ответ на: комментарий от dimgel

УМВР безо всякого патчанья, ЧЯДНТ?

Раньше, например, qtnetwork не собирался. Сейчас, возможно уже пофиксили.

Meyer ★★★★★
()
Ответ на: комментарий от Meyer
# eix --installed-from-overlay libressl
[I] app-crypt/qca
...
[I] dev-qt/qtnetwork
...
[I] net-libs/nodejs
...
[I] net-libs/serf
...

Found 4 matches
dimgel ★★★★★
()
Последнее исправление: dimgel (всего исправлений: 1)
Ответ на: комментарий от siraenuhlaalu

Я не путаю. Просто сама идея в Linux недостаточно реализована, чтобы был единый механизм работы через ядро и файловую систему. Просто procfs отдельно от ядра живет. В этом и разница между линукс и Plan9 где реализованы все необходимые для работы механизмы. Ведь очевидно, что реализовывать сложную систему загрузки с логами в бинарном виде и прочее - излишняя трата ресурсов. Дело не в сложности скриптов, а в том, что для реализации одного и того же люди создают свои велосипеды по сто раз. Для сравнения в 2020-ом году plan9front будет шикарно работать хоть на пеньке 4-ом с одним ядром. Дай ему нормальный браузер и аппаратное декодирование видео в 4К, офисный пакет и привычный рабочий стол и 80% людей пользовались бы Plan9 на «старых» компьютерах и ноутбуках. А дешевых ноутбуков у людей очень и очень много. И никаких сложностей не нужно было бы с системд. Вот для примера 9term (терминал из plan9port) в линуксе отдельно стартует два процесса и при этом жрет 2,2 и 1,1 мб памяти. В линуксе ничего даже близко нет к этому. Simpleterm жрет 11,9 мегабайт. Там даже иксов нет и вейланд ненужен.

anonymous
()
Ответ на: комментарий от anonymous

Ведь очевидно, что реализовывать сложную систему загрузки с логами в бинарном виде и прочее - излишняя трата ресурсов.

Она не сложная, в том-то и дело. Логи у тебя получаются «по дефолту», потому что systemd не закрывает дескрипторы stdout/err запускаемых процессов. Это делается «по умолчанию», вместо того, чтобы реализовывать это в коде сервиса или делать перенаправление в скрипте. При этом, никто не мешает писать отдельные логи в файлы или syslog. Абсолютно так же у тебя «по дефолту» получается отслеживание статуса запускаемых процессов.

Если же сравнивать с sysvinit, то сам по себе бинарник init сделан относительно нормально для того времени, когда его разрабатывали: логика «прочитай конфиг из /etc/inittab, запусти параллельно то, что описано для данного ранлевела» вполне себе нормальная. Собственно, ничего не мешает запускать сервисы прямо из /etc/inittab, кроме того, что у них могут быть зависимости друг от друга, что ставит крест на этом подходе на современных системах. Поэтому из inittab сейчас запускаются только getty, что, в том числе, позволяет отследить статус процесса и перезапускать их в случае необходимости. Для всего остального используется один дочерный процесс /etc/rc.d/rc, который запускает сервисы последовательно, при этом, не трэкая их состояние никоим образом. А вот потом, чтобы трэкать состояние сервиса, придумывается ещё больше костылей: кто-то делает unix-сокет для управление через *ctl, кто-то пишет в pid-файл из сервиса, кто-то вообще по регэкспу ищет в выводе ps.

id:3:initdefault: 

si::sysinit:/etc/rc.d/rc.sysinit # запустим это в самом начале (это обычный скрипт, исполняемый последовательно, пусть будет, жрать не просит)

~~:S:wait:/sbin/sulogin # у нас что-то сломалось? запустим sulogin (отличное решение, почему бы и нет?)

1:2345:respawn:/sbin/mingetty --noclear tty1 # запускаем mingetty на каждый терминал, запуск происходит параллельно (отличное решение, почему бы и нет?)  
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4


l0:0:wait:/etc/rc.d/rc 0 # а вот здесь начинаются костыли 
...
l3:3:wait:/etc/rc.d/rc 3
...

Понятное дело, что этот ахтунг рано или поздно должны были зарефакторить. Лично я бы скорее всего начал с того, чтобы заставить init применять ранлевелы последовательно, используя ранлевел как индикатор того, что сервис A должен быть запущен до сервиса Б, затем добавил возможность включать куски конфига из других файлов и мне скорее всего этого бы хватило. в systemd же пошли несколько дальше, переименовав ранлевелы в таргеты и добавив возможность указывать зависимости не от ранлевела, а от конкретного юнита.

siraenuhlaalu
()
Последнее исправление: siraenuhlaalu (всего исправлений: 1)
Ответ на: комментарий от pfg

полноценно можно сказать что бредишь ты :) к примеру возьмем «единомоментный» переход с ламповой на транзисторную технику. думаю в момент перехода обязательно была (да и в принципе и сейчас хватает) кучка поклонников «теплого лампового», мнение которых не спросили.

ты всё перепутал, дятел. Переход с обычного инита на сюсямд - это как раз и есть переход с транзистора на многофункцианальную лампу размером с микроволновку ;)

anonymous
()
Ответ на: комментарий от pfg

почитай соответствующие ветки обсуждений для дистров и проникнись мнением людей, не первый год занимающиеся выпусков операционок.

дожили, дятел советует мелкософтовские форумы читать ;)

п.с. спец.службам и зеленым человечкам с марса до звезды на системы в операционках - зонды вставляются в любую и совершенно через другие методы.

так до звезды, или зонды вставляются? Ты, дятел, определился бы ;) Да и откуда ты знаешь про спецслужбы, ты сексот? … или тебе рябинович по телефону на пел?

выше была ссылка на ролик на ютубе, где рассказывается как АНБ заставляло Линуса встроить бэкдор в ядро. Этот ролик - это показания на заседании европарламента. … но дебильные дятлы любят рассказывать, вопреки фактам, как много они знают о работе спецслужб ;) Ну дурни, что с них всять.

Вот есть явная закономерность - чем человек тупее, тем более рьяно он поддерживает сюсямд.

anonymous
()

Пока здесь меряются, я спокойно читаю тред… И удивляюсь чем же systemd так не угодила кому-то. Вроде все работает, не тормозит, внимания к себе не привлекает… Так что вам надо, хроняки?

anonymous
()
Ответ на: комментарий от siraenuhlaalu

Параллельный запуск сервисов в скриптах тоже включается. Для этого OpenRC и надстраивали над sysvinit. Там тоже можно задать, что вот это запустить после вот этого. Единственная разница, которую можно выделить это скорость работы сишного кода против скриптов. Когда не надо это отправлять на обработку куда-то в шелл. Но это же миллисекунды разницы. Системд по сути пытается зарулить свой второй подход в дополнение к старту системы разбитой на разные уровни. Запустить основные компоненты, загрузить ядро, а вот третья часть пока что системд в основном. Уровни запуска целями не становятся если их переименовать. Тут важна именно реализация. Если в Plan9 реализовали работу через файловую систему по одному протоколу 9p передавая данные, то системд пытается делать примерно то же самое, но через свои кривые костыли несовместимые с остальной системой, то есть с ядром. Для этого наклепали тучу сервисов вместо интеграции с ядром и вынесли все это куда подальше, сделав по сути вторую библиотеку Си недосягаемую для программ, которые не умеют работать без системды. Елогиндэ это лазейка чтобы все же запускать хоть что-то. Но это не решение проблемы самого существования системдэ. Без системды часть программ нельзя запустить нормально. И в генту нельзя было нормально запускать плазму в вейланде именно потому что она без елогинд не заводилась. Обертка на обертке это оверхед. Код должен быть прямее и проще и связан с системой чтобы программы этим могли пользоваться. Но корпорациям проще набрать много типовых программистов и клепать свою реализацию, которая в конечном итоге ставит своей целью захватить все программы в пространстве пользователя, а ядро довести до состояния обеспечения работы себя и не более того. Это то что творится в андроиде и то где системд наиболее используема. Ради эксперимента запустите план9 и поглядите лагает там что при запуске или нет. Нужны ли все эти костыли со своим особым синтаксисом несовместимым со всей системой. Использование файловой системы просто аналогично использованию базы данных, вот только опять без оверхеда в лице самой базы данных. Структура уже есть в файловой системе. Это просто корпорации, которые имеют тысячи программистов и деньги решили всем навязать свои условия жизни в экосистеме линукса. Но такими темпами они только вгоняют всех в зависимость от себя. Независимые разработчики получается используются для извлечения выгоды корпорациями. А это неправильно и противоречит цели создания линукса. Так что я скорее пойду использовать FreeBSD, OpenIndiana, Plan9front, чем буду пользоваться системдой. Стрелять себе в ногу, продвигая вендорозависимые решения, это занятие для слабоумных. Главное тут в том, что толпы проприетарщиков не заинтересованы в легкой согласованной работе системы в которой им нет места как админам чего-то супер сложного.

anonymous
()
Ответ на: комментарий от anonymous

Вот смотри если ты лох, то будешь как раб пользоваться тем что дают. Если ты хозяин своей жизни, тогда ты будешь использовать что угодно, но не корпоративные решения. Все корпоративные решения для того чтобы стадом лохов управлять. На галеры их загнать и ограничить доступ к сайтам, чтобы работали.

anonymous
()
Ответ на: комментарий от anonymous

Намекну тебе, удодышу: хозяева жизни не страдают криптошизофренической паранойей на предмет систем инициализации.

anonymous
()
Ответ на: комментарий от anonymous

Им надо без интернета пожить лет пять где-нибудь в лесу. Авось людьми станут.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.