Bug 1054

Summary: Оптимизация init скриптов
Product: LINUX@Etersoft Reporter: Александр Пликус <pav>
Component: ОбщееAssignee: Евгений Синельников <sin>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P5 CC: lav, rlz
Version: не указана   
Target Milestone: выпуск 1.0   
Hardware: PC   
OS: Linux   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 1135    
Attachments: Проблема с NetworkManager и systemd на Сизифе

Description Александр Пликус 2008-01-09 12:43:20 MSK
Оптимизация с целью ускорения загрузки.
Comment 1 Александр Пликус 2008-02-19 20:37:27 MSK
речь идет про initng. 
В итоге он должен быть в виде пакета для ALT Linux. 
Comment 2 Евгений Синельников 2008-03-01 07:23:54 MSK
Задача решена в смысле создания соответствуюущего пакета:
http://git.etersoft.ru/people/rlz/packages/initng.git

Сейчас производится создание утилит для работы с initng в рамках дистрибутива.

Текущее положение дел по этому вопросы в ALT Linux Devel:
http://lists.altlinux.org/pipermail/devel/2008-February/070385.html

На текущий момент сформировалось три (на самом деле два) основных варианта замены SysVinit:
1) InitNG - http://www.initng.org/
2) UpStart - http://upstart.ubuntu.com/
Это два основных соперника на замену. Тем не менее не совсем понятна разница между ними. Здесь она показана достаточно вразумительно:
http://www.netsplit.com/category/upstart/
Тем не менее эта разница далека от тех проблем, которые нужно решать сейчас (в плане скорости загрузки). Поэтому Initng, в ряде случаев предпочтительней. С другой стороны не стоит забывать судьбу EVMS vs LVM. Если мы не расчитываем вести проект самостоятельно:
http://www.linux.org.ru/view-message.jsp?msgid=2274622
3) LSBinit - http://www.linux-foundation.org/spec/booksets/LSB-Core-generic/LSB-Core-generic/tocsysinit.html
На самом деле, это новый стандарт, а не реализация. Поддержка этих скриптов может рассматриваться в рамках любой системы инициализации. Особенности поддержки этого стандарта в Fedora частично показаны здесь:
http://fedoraproject.org/wiki/FCNewInit
При этом они выбрали UpStart...

Подытоживая, хочу заметить. Что наша реализация уже подготовлена к работе может работать совместно с исходной пакетной базой. Думаю, что стоит вынести вопрос об  init-скриптах на публичное обсуждение в ALT Linux Devel. Думаю это можно начать как только Дима сможет туда писать... Как сегодня ночью заметил ldv@ на эту тему: "Я думаю, вопрос был не так прост, чтобы затевать неподготовленное обсуждение."

Может быть Дима напишет про это статью на FreeSource.info? Я могу и сам, но боюсь, что сейчас он лучше вовлечён в проблематику и технологии решения проблем.

По текущей задаче хочу добавить, что всё равно требуется пилотное решение. Я правильно полагаю что мы пустим его в production после тестирования? Боюсь это серьёзный шаг и требует серьёзного решения, поскольку проблемы, с случае плохого тестирования, тоже будут серъёными. Трудно сказать как могут повести себя те, или внутренние скриптовые компоненты, без полного тестирования, как бы мы не расчитывали...
Comment 3 Евгений Синельников 2008-03-01 08:09:29 MSK
Вероятно стоит заменить здесь:
http://www.initng.org/wiki/Documents_Distributions
Unknown на Work in progress и добиться Supported.
Comment 4 Dmitry M. Maslennikov 2008-03-28 12:46:43 MSK
В общем оптимизация к привнесению initng не сводится. Само по себе оно к взрывообразному ускорению загрузки не приводит к лавинообразному уменьшению скорости загрузки. Попытки профилирования показали, как и ожидалось, что больше всего времени уходит на большой скрипт rc.sysinit. Чтобы профилировать его необходимо было его разбить на части. Это полезно также, чтобы запускать части параллельно в initng или использовать upstart. В процессе этого в скрипте были найдены явно устаревшие части, которые давно уже не используются и прочее. Полученные части удалось запустить как последовательно, так и разобравшись с зависимостями параллельно, с помощью initng. Теперь интересно произвести замеры и оптимизацию полученных скриптов.
Comment 5 Евгений Синельников 2013-02-14 20:28:36 MSK
Created attachment 2792 [details]
Проблема с NetworkManager и systemd на Сизифе

Мир, под давлением Red Hat, переехал (мы ещё в процессе) на systemd. Для десктопных решений на базе на Сизифа это имеет свои проблемы. В частности, с мая 2012 года NetworkManager имеет проблему запуска в чистом systemd (ошибка "Not authorized", в xfce - (32) Not authorized to control networking.)

Предыдущее описание на этот счёт представлено на странице:
http://www.altlinux.org/Changes#.D0.9C.D0.B0.D0.B9

На свежеустановленной системе на базе сизифа мне удалось завести NetworkManager установкой пакета systemd-sysvinit. Без этого даже команда systemctl не отрабатывала - выпадал с ошибкой "D-Bus no connection to service manager".
Видимо, чего-то не хватает. Требуется более детальное изучение архитектуры systemd для исправления всех проблем на текущем сизифе.
Comment 6 Vitaly Lipatov 2014-09-11 18:39:38 MSK
Откладываем задачи, к которым не обращались более 100 дней.
Comment 7 Vitaly Lipatov 2016-02-01 11:56:21 MSK
Закрываю как неактуальные.
Comment 8 Vitaly Lipatov 2016-02-01 11:59:10 MSK
Закрываю.