Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.LINUX
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.LINUX с датами от 24 Jan 02 06:01:34 до 23 Aug 24 12:51:58, всего сообщений: 8555
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 1816 из 8555 ========================================= RU.LINUX =
От   : Serguei E. Leontiev              2:5020/400         04 Jan 15 20:10:04
Кому : Alexey Vissarionov                                  04 Jan 15 20:10:04
Тема : Re: init
FGHI : area://RU.LINUX?msgid=<1187498587@ddt.demos.su>+74b8b89a
На   : area://RU.LINUX?msgid=2:5020/545+54a7c287
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.LINUX?msgid=2:5020/545+54aaad09
==============================================================================
From: "Serguei E. Leontiev" <leo@sai.msu.ru>

Привет Алексей,

От 3 января 2015 г., 12:34:56 в fido7.ru.linux ты писал:
SL>> Hе то что бы мне нравился бы systemd, лично мне кажется,
SL>> что лучше бы авторы сделали бы GPL клон SMF Solaris или
SL>> launchctl Mac OSX. А не "самопальную" эклектику развели бы
SL>> на 333 страницы одной только документации.
AV> Думается мне, что если за много лет так и не сделали - значит,
AV> не было необходимости.

Как видим сделали systemd, стало быть необходимость была. Могли бы
сделать нормально, но что вышло, то вышло - эклектичный стиль GNU/Linux
во всей красе, тем не менее "последняя" резервация SVR4 init.d начала
исчезать.

RS>>>> Я как страшный сон вспоминаю сопли /etc/rc.d/init.d
AV>>> Сопли вылезают только там, где эта технология
AV>>> используется не по назначению: например, network - это
AV>>> не демон, поэтому команда `service start network` не
AV>>> имеет смысла и, что вполне закономерно, работает через
AV>>> жопу.
SL>> А её в XXI веке вообще возможно использовать по назначению?
SL>> Hа мой взгляд, SVR4 init.d не предназначена:
SL>> - для современных "модульных" ОС с пакетами (нет
SL>> зависимостей);
AV> Зависимости - забота пакетной системы.

Вот антиресно, как пакетная система должна выбирать номер nn в
"SnnMyDaemon"? Как она узнает, что моему демону нужен syslog, portmap,
pcscd или что-то ещё этакое, и какие у них были номера (в современных
BSD есть хотя бы rcorder, а в SVR4 и этого нет)?

В принципе, наверное, можно было бы вести в Linux Standard Base реестр
номеров, но в том бардаке, что мы называем Linux это ж не реально.

AV> Или ты про "нефиг запускать httpd, пока сеть не настроена"? Дык
AV> я чуть выше именно про это и написал, начиная со слов "network
AV> - это не демон".

Честно говоря, я уж и не помню что там было в оригинальных SVR4 (увы нет
уже у меня старых добрых Solaris 8/9 и AIX 4/5, в современных остался
только режим совместимости), а у Linux там же почти половина не является
запуском демонов (микрокоды, МЭ, случайные числа и т.п.).

SL>> - для современных "демонов", которые падали, падают и будут
SL>> падать;
AV> Это забота демонописателей. И они про это знают - думаю, тот же
AV> mysqld_safe известен всем здешним подписчикам.

Ой, жить то как-то было надо, вот понаделали этих костылей целый вагон и
маленькую тележку.

SL>> - для машин у которых управление питанием, хотя бы, немного
SL>> сложнее, чем просто включить и выключить;
AV> Переключение между аккумулятором и БП, а когда аккумулятор сдох
AV> - выключение? Это забота отдельного демона (который, кстати,
AV> при загрузке запускается из собственного init-скрипта, а в
AV> процессе работы вполне может вызвать `init 0`).

Hапример, когда просыпаемся один образом, то надо повторить
S00microcode_ctl, а другим образом то нет. А вот S20random нужно делать
всегда, что бы лохи, которые ему верят, не волновались попусту.

SL>> - для машин у которых сетевые интерфейсы и устройства могут
SL>> подключаться и отключаться;
AV> Могут. Только к init это не имеет никакого отношения.
AV>
AV> Вот у меня тут прямо на столе лежит хороший пример - жопорезный
AV> свисток. Я его втыкаю в УПШ, ядро его опознает и дергает
AV> /sbin/hotplug (или у кого что там указано в качестве
AV> CONFIG_UEVENT_HELPER_PATH). Что прописано USB-устройству
AV> 12d1:1446? Ага, запуск usb_modeswitch. Запускаем - устройство
AV> исчезло, вместо него появилось новое: 12d1:1001. Опять смотрим,
AV> что ему прописано. Ага, запуск `pppd call gprs`. Запустили. О!
AV> Появился сетевой интерфейс ppp1. Что по такому случаю надо
AV> сделать? Разумеется, запустить /etc/ppp/ip-up.d/ppp1  Что

Разумно, и если этот подход комплексно реализовать, то SVR4 init.d
станет не нужным, делаем все командные файлы с именами P00AnyService и
забываем хитрости SVR4 init.d, как страшный сон.

AV> примечательно, бегемоты наподобие udev для этого не нужны -
AV> достаточно минимального скриптового обвеса, а основную работу
AV> выполняет ядро.

Как это сделано в Windows, почему бы и нет? У API, приход которого на
замену SVR4 init.d давно уже перезрел, могло бы быть и такое устройство.

Однако, в процессе отрезания хвоста по частям, сначала от X11 пришёл
hal, потом udev, потом systemd пожаловал - этот изумительный эклектичный
стиль GNU/Linux :)

--
Успехов, Сергей Леонтьев. E-mail: lse@CryptoPro.ru  
--- ifmail v.2.15dev5.4
* Origin: ГАИШ МГУ (2:5020/400)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.064658 секунды