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


Присутствуют сообщения из эхоконференции RU.LINUX с датами от 24 Jan 02 06:01:34 до 23 Aug 24 12:51:58, всего сообщений: 8555
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 1817 из 8555 ========================================= RU.LINUX =
От   : Alexey Vissarionov               2:5020/545         05 Jan 15 18:26:00
Кому : Serguei E. Leontiev                                 05 Jan 15 18:26:00
Тема : init
FGHI : area://RU.LINUX?msgid=2:5020/545+54aaad09
На   : area://RU.LINUX?msgid=<1187498587@ddt.demos.su>+74b8b89a
= Кодировка сообщения определена как: CP866 ==================================
Ответ: area://RU.LINUX?msgid=<1187498601@ddt.demos.su>+7e92400d
==============================================================================
Доброго времени суток, Serguei!
04 Jan 2015 20:10:04, ты -> мне:

SL>>> что лучше бы авторы сделали бы GPL клон SMF Solaris или
SL>>> launchctl Mac OSX. А не "самопальную" эклектику
AV>> Думается мне, что если за много лет так и не сделали - значит,
AV>> не было необходимости.
SL> Как видим сделали systemd, стало быть необходимость была.

Если бы необходимость... так, шило.

SL> Могли бы сделать нормально, но что вышло, то вышло - эклектичный
SL> стиль GNU/Linux во всей красе,

Ааатучаемся говорить за все системы на базе GNU/Linux...

SL> тем не менее "последняя" резервация SVR4 init.d начала исчезать.

Очень надеюсь, что мода на systemd в скором времени пройдет.

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

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

SL> Как она узнает, что моему демону нужен syslog,

Он стартует одним из первых, так что достаточно не лезть в ^S[01][0-9]

SL> portmap,

Такому демону вообще место в /dev/null

SL> pcscd

А сделать эти SC полноценными HID-устройствами - аллах запрещает?

SL> или что-то ещё этакое, и какие у них были номера (в современных
SL> BSD есть хотя бы rcorder, а в SVR4 и этого нет)?
SL> В принципе, наверное, можно было бы вести в Linux Standard Base
SL> реестр номеров, но в том бардаке, что мы называем Linux это ж не
SL> реально.

И не нужно.

Вообще, грамотно написанный демон не отваливается. При запуске он читает собственный конфиг, и если там все хорошо - делает двойной fork() и все последующие события обрабатывает сам.

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

Примонтировался сетевой каталог? Запустили тред на его чтение и индексацию. Размонтировался? Выкинули соответствующую часть индекса и освободили память.

Понадобилось устройство, которое сейчас недоступно? Выругались в лог, ждем минуту. Если устройство не появляется - раз в 5...10 минут повторяем ругань.

Прилетел SIGTERM? Быстренько и аккуратненько завершаем работу, не дожидаясь последующего SIGKILL.

А если какому-то погромисту это неочевидно - пусть уеб-формочки на PHP рисует: не дорос он до демонописательства.

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

Это забота ядра.

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

Чем тебе /dev/random не нравится? У него есть замечательная функция add_device_randomness(), которая позволяет домешивать туда данные из дополнительных источников - например, аппаратного ГСЧ наподобие http://pics.rsh.ru/img/usb_device_ne6amlw7.jpg

(рисовал для http://www.openwall.com/lists/oss-security/2014/08/08/10 - соответственно, аналоговая его часть замазюкана, чтобы не провоцировать "железячный" флейм в листе; реально там сдвоенный операционник).

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

Насколько комплексно? Если я подключаю свисток - это еще не значит, что мне нужен именно жопорез: я могу его использовать для голосового звонка (E1550 весьма неплохо с этим справляется) или для отправки SMS-сообщений.

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

Спрашивать пользователя по каждому чиху и пуку?
Мало нам вантузоидов, которые жмут "Ok" не читая сообщение...

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

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

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

HAL был внутри, и поэтому особо не напрягал. Когда появился udev, его стали использовать далеко не все, а когда Поттеринг высрал systemd - проняло даже слоупоков-дебилианистов (во всяком случае, дебилиан без systemd существует и называется девиант)...


--
Alexey V. Vissarionov aka Gremlin from Kremlin
gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii

... GPG: 8832FE9FA791F7968AC96E4E909DAC45EF3B1FA8 @ hkp://keys.gnupg.net
--- /bin/vi
* Origin: http://openwall.com/Owl/ru (2:5020/545)

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