The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Анонсирован Devuan, форк Debian GNU/Linux без systemd"
Отправлено Mihail Zenkov, 02-Дек-14 16:26 
> Только зачастую оказывается что детали друг к другу не подходят. Скрипты -
> у всех разные. И не больно скрипт из альтлинукса например впихнешь
> в другой дистр.

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

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

> А кто вам сказал что я хочу писать 15 строк для абсолютно
> типовой задачи? К тому же окажется что оно не умеет и
> 10% того что в каком-нибудь системд,

ИМХО часто проще написать свои понятные 15 строк, чем изучать чужие 150 строк, среди которых 90% не нужны.

> и придется постоянно что-то донапиливать,
> "по мере".

Это придется и так и так если что-то не устраивает. ИМХО 15 строк проще допилить чем 150.

> В месте где вообще типовые задачи должны не требовать
> внимания.

Они требуют решения один раз, ну пусть раз в год придется что-то изменить. ИМХО вероятность того что, какой нибудь Поттеринг, внесет изменения которые вам не понравятся, гораздо выше. И прядется искать способ вернуть как было, либо плюнуть и успокаивать себя: так и надо, ему виднее, он же думал что делал.

> А в нормальных десктопных дистрах - out of the box, работает сразу.

Откуда он знает, что нужно мне? Примеры будут ниже.

> и вообще - другие это сделают лучше меня.

Но далеко не факт что так, как нужно вам.

> Ок, допустим я пришел с ноутом в кафешку. Покажите мне что вы
> сделаете для конекта к сети и сколько это действий потребует? Мне
> - выбрать точку из списка. Ну может еще пароль ввести, если
> он там есть. По сути 1 жест мышом + 1-2 клика.

Запустить wpa_gui :)

> Допустим мы знаем только SSID (и пароль, если есть) - написаны
> у входа (или совпадают с названием заведения). Нет, там конечно нет
> ракетных наук, но в нормальном виде когда это удобно использовать -
> довольно много логики.

cat wifiName
killall -w wpa_supplicant
wpa_supplicant -Dwext -iwlan0 -c/etc/wpaName.conf
dhcpcd wlan0

cat wpaName.conf
ap_scan=1
autoscan=exponential:3:300
network={
    scan_ssid=1
    ssid="NAME"
    psk="xxxxxxxxxxxxxxxxxx"
    proto=WPA2
    key_mgmt=WPA-PSK
    pairwise=CCMP
    group=CCMP
}


> А потом еще окажется что там где-нибудь хитрым
> параметром shellshock случается. И если в массовых решениях такие ляпы толпой
> вытопчут, сколько такого счастья будет в самопальном кастоме - очень отдельный
> вопрос.

Угу, знакомые жаловались, что периодически нет интернета через wifi, баг не стабильный (то есть, то нет). Дистрибутив - mint. Позвонили, когда баг опять проявился, посмотрел - нет dns. Открыл /etc/resolv.conf, он там линк на файл поглубже, там что-то типа "warning: file generate automatically, don't change, it rocket science". Снес линк, создал файл, прописал dns. Проблема больше не возникла. Сколько времени мне понадобилось бы решить эту проблему "правильным" путем или если бы я не знал зачем нужен /etc/resolv.conf?

>> 4. Запуск демонов - 1 строка (еще два запускаются по событиям в hotplug).
> Ну-ну, покажите мне запуск демона 1 строкой.

nc -ll -p 7777 -e /usr/libexec/sftp-server &

> Чтоб еще приоритет ему выставить,

nice -n 5 nc -ll -p 7777 -e /usr/libexec/sftp-server &

> под нужным юзером пнуть

На личной машине это ненужно, сходу не вспомню, но не сильно сложнее, чем с nice.

> и рестартануть если упал.

В моем примере уже заложено в конструкцию - параметр -ll.
Если не предусмотрено:

(while true; do demon-name; done) &

Сообщение в логи/на email/sms добавить по вкусу :)

> А вот httpd.
> Он должен запуститься лишь после появления сети. Сколько там уже строк?

Смотря, что понимать под появлением сети - у меня в hotplug стоит скрипт исполняемый при появлении eth1 (3g модем), для запуска pdnsd там одна строка.

Встречный вопрос, даже два. Есть одна сеть и два интерфейса для доступа к ней wi-fi (wlan0) и eth0.
Задача первая: поднимать wi-fi только при обращении к сети и отсутствующем (link down) eth0.
Задача вторая: при появлении (link up) eth0 перенаправлять все пакеты на него, при link down на eth0 перенаправлять все на wlan0. Сточки зрения пользователя все должно быть прозрачно - если в момент подключения/отключения льется большой файл, то он должен продолжать литься по новому интерфейсу.

> Не говоря о том чтобы в чрут, а лучше контейнер отрезать,
> все дела. И да, сборку контейнера и т.п. хотелось бы видеть
> стандартной услугой системы.
> А поттер даже допер до регистрации/дерегистрации вм/контейнеров. Это и локальному админу
> позволит нормально понимать что работает, и хороший задел под управляторы в
> большой инфраструктуре. Несомненно, если переть на принцип - можно и самому
> написать. Только время на это уйдет и не факт что получится
> лучше.

Не могу оценить сложность - не сталкивался.

>> 5. Запуск Xorg и начальных приложений (15 строк).
> Там тоже все сильно зависит от. У типовых DE их дефолтные скрипты
> обычно гораздо разлапистее.

Bloatware. И этим все сказано :)

> И да, нормальную настройку например вон тех мультимедийных
> кнопок на клавиатуре

Если вопрос о распознавании мультимедиа клавиш, то это делает сам Xorg. Если вопрос о запуске чего либо при нажатии на эти клавиши, то в каждом DE/WM это индивидуально. У меня в dwm:
{ 0, XF86XK_AudioLowerVolume, spawn, SHCMD("amixer set Master 2-") },
{ 0, XF86XK_AudioRaiseVolume, spawn, SHCMD("amixer set Master 2+") },


Как кстати с переназначением клавиш у типовых DE?
Приведите эквивалент: xmodmap -e "keysym Scroll_Lock = XF86AudioRaiseVolume"

> или вон тех кнопок регулировки яркости на ноуте

Обычно они работают даже при запуске ядра с параметром init=/bin/sh :)

> я тоже сам должен везде занапилить? Очень десктопный дистр - LFS
> :).

Под что заточишь то и будет. Как на вашем дистрибутиве решается следующая задача: изменить яркость монитора при переходе плеера в полноэкранный режим? Яркость естественно настоящую на самом мониторе.

> Мир стал сложнее.

Скажем так - появилось больше возможностей, а насколько они будут сложными или не понятными зависит от реализации.

> Вон беспроводная сеть. Там куча настроек на самом деле.
> И сертификаты, и пароли, и несколько алгоритмов на выбор, а за
> одним SSID может быть куча BSSID.

Тут как и во всем - нужен хотя бы минимальный набор знаний. ИМХО не так и сложно. Да первый раз понадобилось посидеть почитать, какое шифрование лучше и почему мегабиты wi-fi так сильно отличаются от мегабитов ethernet :)

> А вон GPU. Со спеками
> на 900 страниц. А вон USB. Я прочитал только спеки на
> 1.1 и половину на 2.0. А 3.х даже пока не рискнул
> :).

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

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

Правильно, но это должно быть в специализированных дистрибутивах, зачем это на дектопе?

>> При попытке сделать все-в-одном на shell мы видим десятки нетривиальных скриптов.
> По поводу чего я и предочел бы видеть многое из как стандартные
> фичи системы инициализации + некие средства для дерга этого из скриптов
> и программ + некий RPC-интерфейс под большой управлятор, делающий все это
> сетевым. Если, конечно, это нужно. Это даже в openwrt понимают -
> у них свой интерес: подвинуть проприетарщиков с рынка группового администрирования точек
> доступа, где нынче царят проприетарные самопалы с закрытым софтом и черти-каким
> оборудованием с пробэкдореной фирмварой. Это что, так и оставить предлагается? Фигвам!

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

> Но знание скриптиков на одном локалхосте -
> это знание скриптиков на 1 локалхосте. Очень нишевое и неуниверсальное знание.

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

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

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

>> ИМХО не стоит объединять молоток с микроскопом. Для каждой задачи нужен свой
>> инструмент - лучше изучить два-три простых инструмента, которые тебе нужны,
> В вашем случае - вы предложили мне пойти и сделать микроскоп и
> молоток лично. Вместо того чтобы взять ящик с типовыми инструментами от
> поттера и просто забить гвоздь, если задача - забить гвоздь.

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

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

Инструмент выбирается один раз (если он действительно хорош), а используется постоянно. Да в наше время (слава потребительскому обществу и маркетологам) принято использовать модный сырой ширпотреб с очень коротким периодом службы, вместо качественных индивидуально подогнанных вещей.

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

При этом согнул гвоздь и оставил вмятины на штукатурке ...

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

Такой образ системы пропагандирует Поттеринг. Я же, как думаю и прочие из недовольные systemd, сделала бы маленькую программу которая позволяет выбрать снапшот и дальше передаст управление системе инициализации (какой бы она там не была).

>> Полностью согласен. Рассмотрим дальше: systemd заменяет собой ряд стандартных компонентов,
> Для начала - не стандартных. На них нет никаких стандартов

Я о другом - о замене логов/консоли/etc.

> Вон с DRM/KMS как вышло?

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

>Мне вон тут амдшники дали мини-лекцию
> про render nodes, или как считать на их видеокарточках не запуская
> иксы вообще.

Отлично! Удачи с открытым OpenCL! Это задолбало драйвера менять (в открытом все отлично, но нет OpenCL для luxrender, а закрытом глючит просмотр видео и dpms, да и памяти в два раза больше жрет).

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

То есть предлагаете впихнуть костыли во все системы инициализации?

> Потому что они просто не смели ничего сильно менять.

Моя система написана с нуля, меняю что хочу и когда хочу. Почему воплей по всему интернету нету какой я плохой? Потому, что я понимаю что это решение хорошо для меня и не пытаюсь его пропихнуть как единственно правильное, поломав при этом все существующие решения.

> Да вот знаете, я не считаю прекрасным невозможность даже просто список сервисов
> в системе ОДНОЙ командой получить. В системе с апстартом смотреть надо
> минимум в два закоулка - инит и апстарт. Как видите, это
> вам, кто не пользовался чем-то отличным то инита казалось что все
> ок. А мне вот так не кажется, например.

Это не доработка архитектуры upstart. Если это исправить, будут вопли негодования по всему интернету?

> И я совсем не против если Поттеринг и его шайка-лейка свалят на
> себя проблемы с фичастым инициализатором. Меня это более чем устраивает, чтобы
> проблемы были у них а не у меня.

Проблема в том, что systemd это уже не система инициализации, а половина системы.

>> Поттеринг не признает этой основы - пытается подмять все под
>> себя. Отсюда и весь негатив против него в сообществе.
> Он по факту просто сделал как проще и логичнее. Чтобы удобно было
> тем кто системд пользуется а не кому-нибудь еще. Что логично.

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

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

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

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

Это ваш личный выбор. Мой выбор простые свои скрипты.

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

Это не отменяет того факта, что на роутере будет openwrt, а на телефоне android, а systemd там не будет.

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

Заметьте очень простых и специализированных. Для бытовых 220в, для повышенной нагрузки 380в, соединение подстанций - киловольты. Были попытки слепить все-в-одном и совместить силовую и сигнальную линию, но вовремя одумались.

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

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

>> Наворотить не пойми чего можно где угодно, не думаю что юниты будут исключением.
> Юниты - это просто текстовые конфиги. Поэтому вбить туда три страницы навороченной
> кастомной логики будет не очень простым начинанием.

Тогда вообще не понимаю как можно будет решить более-менее не стандартную ситуацию.

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

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

> Но как я уже сказал - мне надоели многие другие
> костыли. И нужда напилить самые простые типовые задачи. И я склонен
> полагать что эти факторы - перевешивают.

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

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру