Только не alsa, a pulseaudio, судя по контексту
![[User Picture]](http://lj.rossia.org/userpic/142041/1337) | From: | sashnik |
Date: | December 14th, 2013 - 01:14 pm |
---|
| | | (Link) |
|
да ну говно этот системд!
бинарные логи, бинарные конфиги, непортабельность на нелинукцы, мудовый подход "всё в одном", и самое главное -- sysvinit не сломан, и нехуй его чинить.
системды, конечно, бутится ок, чоб ему не бутиться, но случись глюк -- искать и фиксить посинеешь. убунтов апстарт -- и то лучше.
Ну какие в жопу бинарные конфиги, ну что вы все блядь несёте? Запускалки - да, бинарные, и хуй бы с ними.
Что забавно, все боялись pulseaudio из-за того что в Убунте он "шипел" и "падал". Потом пофиксили (даже убунтовцы) но старожилы всё пугали всех сказками о "глюках" и "не unix-way"
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 14th, 2013 - 05:29 pm |
---|
| | | (Link) |
|
отучаемся, блядь, говорить за всю сеть.
Дедушка-пидараааааааасы, слушайте свои валенки
а как узнать, у меня systemd или нет ? у меня убунта 13.10
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 14th, 2013 - 05:41 pm |
---|
| | | (Link) |
|
за то, что это уёбищное недокументированое монолитное уебанство. с изначально отсутствующей архитектурой и совершенно неоднозначными ключами. например, runafter (если верно помню) — это «какой сервис запустить после нас», или «запустить нас после этого сервиса»? неизвестно, и догадаться невозможно (потому что «консистентности» в именованиях нет вообще). можно только зубрить документацию.
ну и да: «separate usr considered broken». спасибо, чуваки. почему-то мой инит не диктует мне, как строить систему, а подстраивается под подстроеную. идите нахуй. и системды с собой возьмите.
а, да: как оторвать udev от вашего говноинита? чо? наложить вот эти кривопатчи, не обращать внимания на сообщения об ошибках при сборке и руками потом вот это скопировать вот туда? вы ещё не пошли нахуй, нет? а почему? идите-идите. (авторы udev тоже те ещё уебаны, но это другая сказка)
алё, чуваки, ваш говноинит тупо завис при загрузке и ни на что не реагирует, как его реанимировать хотя бы до состояния, когда можно какие-то логи глянуть? что-что? нигде, а загружаться с liveusb? чуваки, я не понял, почему вы всё ещё тут, а не в нахуе? (трабл реальный, говноды запуталось в дисках и намертво зависло, ничего вообще не сообщив о проблемах).
а уж вот
это вообще охуительно. чо? сислог? нахуй кому нужен этот сислог? подумаешь, потеряли записи… да лично я и мои друзья вообще их никогда не читаем!
короче. когда мне понадобится винда — я знаю, где её купить. а косоуёбищная недовинда в пингвинусе мне нахуй не нужна.
и нет, системды — не kiss, системды — это pita.
Проблема с /usr решается на раз статической сборкой systmd с libdbus (в Gentoo - соотв. USE-флаг в package.use).
Монолитность - это скорее хорошо, чем плохо. И если такую небольшую цену я плачу за принципиальное отсутствие зомбей, то я согласен.
Консистентность есть, если хоть немного знать английский. runafter - это то, что за чем я буду запускаться. Там принцип очень простой, если я правильно всё понял: systemd смотрит иерархию запуска сервисов, и создаёт на месте тех, которые прописаны в runafter сокеты, как будто они уже запустились, а потом стартует все сервисы одновременно. Это охуенно вообще на самом деле.
Про сислог - сами себе злобные буратины. Кстати, ничего не мешает его использовать вместе с systemd. Я например так и сделал.
В общем я в системд пока особого криминала не вижу. Если бы в винде было что-то хотя бы минимально похожее - цены бы ей не было.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 15th, 2013 - 10:34 am |
---|
| | | (Link) |
|
>а принципиальное отсутствие зомбей
полное непонимание того, что есть «зомби» детектед.
>Консистентность есть, если хоть немного знать английский
нет, нет. поковыряйся — поймёшь.
>Если бы в винде было что-то хотя бы минимально похожее
прикинь, есть. сама винда. точнее, её service manager — точно такая же поеботина.
>статической сборкой systmd с libdbus
дбас. в ините. ну, охуеть теперь.
я тебе искренне желаю — честно — никогда-никогда не хотеть того, о чём лёня сотовариши не подумали. и никогда-никогда не наступить на баг. потому что шаг влево-вправо — это пиздец. просто пиздец.
а лучше — если уж так охота — пойти на upstart. потому что в системды единственный ответ, который ты получишь на вопрос «я хочу странного. как?» будет: «тебе это не надо, иди нахуй».
> полное непонимание того, что есть «зомби» детектед.
Системд следит за сервисами, в общем, я хотел сказать.
> нет, нет. поковыряйся — поймёшь.
Поковырялся. Продолжает нравиться. Наверное у меня мозг неправильно работает.
> прикинь, есть. сама винда. точнее, её service manager — точно такая же поеботина.
Ну я бы не сказал. В винде всё совсем плохо.
> дбас. в ините. ну, охуеть теперь.
Не весь дбас, а одна либа, именно её ему и не хватает, если /usr монтируется с отдельного тома. Зато можно запускаться вообще без initrd, и монтировать свой /usr хоть к марсианской треноге.
> шаг влево-вправо — это пиздец. просто пиздец.
Ну ты странный. ты ругаешься на ламеров, у которых из-за кривых рук init виснет, и предостерегаешь меня подходить к systemd только с прямыми руками (потому что всё, о чём не подумал Леннарт, находится за рамками документации). Так мы кривые руки прощаем, или всё-таки пытаемся их последствия ограничить?
> пойти на upstart
Убунту не люблю. Ну вот не лежит душа. Вообще к дебианообразному не лежит, а тут ещё и как-то по-особенному.
Я Gentoo люблю, но мне работать надо, а не мир пересобирать сутками. Поэтому Arch или Слака. На работе - слака (исторически сложилось, ещё с 1996 года у меня везде на рабочих компах слака). Дома сейчас Арч. Устраивает полностью. Я ещё не придумал, как мне это всё сломать. Ну просто не придумал, если специально не делать sudo rm -rf...
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 15th, 2013 - 11:25 am |
---|
| | | (Link) |
|
>Системд следит за сервисами, в общем, я хотел сказать.
и делает это — как и всё остальное — очень хуёво.
>Наверное у меня мозг неправильно работает.
нет, ты просто «поковырялся». «делориан» тоже красиво выглядит. и даже приколен. пока не захочешь его использовать каждый день.
>В винде всё совсем плохо.
ровно так же, как и в системды. системды — это калька с scm и event log.
>Зато можно запускаться вообще без initrd
как я и делаю всегда. и без системды. охуеть, для нормального процесса, который у меня работал десяток лет, теперь надо заниматься анальной акробатикой. всю жизнь мечтал.
>и предостерегаешь меня подходить к systemd только с прямыми руками
прямота рук не имеет никакого отношения к тому, что системды недиагностируем. вообще. никак.
>Убунту не люблю.
ты удивишься, наверное, но апстарт вовсе не завязан на убунту. совсем. я ради интереса его себе в слаку затаскивал — получилось. причём без проблем: собрал, прописал строку в grub, добавил несколько тасков, ребутнулся. всё. мне он просто не нужен, иначе бы оставил. (ну ладно, «несколько тасков» — это barely working system. но тем не менее)
кстати, апстарт можно использовать и не как инит, а как просто service manager. он — в отличие от системды — не хочет быть Самым Крутым Парнем На Селе.
А как ты init собрался каждый день использовать? Настроил один раз, и всё. Или ты постоянно серыисы дёргаешь?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 15th, 2013 - 01:54 pm |
---|
| | | (Link) |
|
>А как ты init собрался каждый день использовать?
ровно так, как и использую: он живёт.
и да: управление сервисами — не задача инита. от слов «нихуя ваще». инит должен быть маленьким, неубиваемым и молча поедать сирот. всё. а, ещё запускать один стартовый скрипт. любой, кто пытается запихать в инит что-то ещё, должен быть нахуй распилен. ржавой тупой ножовкой. на 100500 кусочков. его семья, родственники, дети и внуки тоже — чтобы не размножились случайно.
Тогда единственно верный выбор - это CRUX. Там init вообще охуенный.
А ещё я знаю пару ребят, которые на фре сидят до сих пор. Потому что гладиолус.
Я считаю, что если init не может поднимать и убивать сервисы on-demand (т.е. когда я вставляю и вынимаю устройства на ходу) без всяких костылей типа hotplug, то это не init, а жопа.
Вот тебе пример. Только что. У меня всю дорогу была проблема с JACK, который зависит от кучи аудиосервисов, и стоит оторвать от компа какой-нибудь Еdirol или присобачить лишний Protools, как что-то обязательно не поднимется, и JACK отваливается. С systemd он прекрасно запускается и перенаправляет данные в нужную дудку сам, без моих пинков и танцев с бубном, которые особенно прикольно исполнять на студии, когда у тебя время - деньги, и оно ограничено.
Вот и докажи мне теперь, что Systemd - говно. Вот это я и называю "жить каждый день". С init жить было невозможно. Сис5 хороша для серверов, которые чем меньше трогают - темс лучше. Да и хуй с ним, с музыкальным оборудованием, это редкий случай, и в общем-то действительно сложный. Но если инит не может без костылей поднять net и dhcpcd при подключении usb-сетевухи или wifi-свистка - я вообще извиняюсь. А hotplug - это костыль, как pnpISA в 4-й NT.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 16th, 2013 - 12:08 pm |
---|
| | | (Link) |
|
(пожимает плечами) а ещё мопеды хуёво летают. monit или upstart в режиме service manager — и пусть себе знимаются сервисами. это не работа инита, как я уже говорил. я же описал зачачи инита в прошлом каменте. все.
Ну если инит должен висеть в памяти и пожирать трупики, то чего бы ему заодно не заняться подъёмом сервисов по указке девайсменеджера? А дальше логично - сливаем их в один демон и получаем системд ;)
Не, я всё понимаю, но вот в этом честно говоря криминала не вижу. Нафиг плодить 100500 демонов, которые ещё и не всегда знают, как у них оцессы форкаются?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 16th, 2013 - 01:21 pm |
---|
| | | (Link) |
|
>Ну если инит должен висеть в памяти и пожирать трупики, то чего бы ему заодно не
>заняться подъёмом сервисов по указке девайсменеджера?
потому что инит — важнейший системный процесс. если он ёбнется — всей системе пизда. сразу. поэтому в ините кода должно быть как можно меньше, по очевидным причинам.
если у меня рухнет system manager — да и хуй с ним: систему это не убъёт, у меня всегда останется vt, где я смогу разобраться с катастрофой. а вот если рухнет init — то похуй, сколько остальных процессов отлично работали.
>которые ещё и не всегда знают, как у них оцессы форкаются?
уже давно для этого есть апи. почему-то у netfilter. не спрашивай, почему именно там. но апи есть, апи работает, извраты с ptrace() больше не нужны.
>Нафиг плодить 100500 демонов
на тот фиг, что падение одного демона позволяет его перезапустить без ребута. а падение инита — это автоматический kenel panic или ребут.
Количество кода с вероятностью глобального отказа связано опосредованно. В отдельных случаях до 3/4 кода - это обработка исключений и валидация входных данных.
А если ёбнется, например, udev, то мало тоже не покажется. Как ты собрался его рестартить, если у тебя все устройства поотвалились? Так не лучше ли иметь одну точку отказа вместо целой кучи?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 17th, 2013 - 04:33 pm |
---|
| | | (Link) |
|
>Количество кода с вероятностью глобального отказа связано опосредованно.
чисто статистически же. чем больше кода — тем больше вероятность появления ошибки в нём. и — что ещё важней — тем сложнее такой код проверять. проверить монолитного демона, который делает 100500 вещей, практически невозможно.
>А если ёбнется, например, udev, то мало тоже не покажется
и это прискорбно, да. но тут такая штука, что удев — тоже говнище. однажды я таки соберусь с силами, преодолею лень и мигрирую нахуй на mdev, жестоко выдрав его из бизибокса.
>Так не лучше ли иметь одну точку отказа вместо целой кучи?
нет. пизданувшийся монолитный демон — это срака-срака-срака. потому что его код ОГРОМЕН, непроверяем, и выяснить, что именно там пизданулось — та ещё задача. например, дурацкий демон в коде перезапуска сервиса промазал указателем и попортил структуры udev. а udev в один прекрасный момент от этого ебанулся. кто виноват? где ошибку искать? правильный ответ — ВО ВСЕЙ КОДОБАЗЕ. нахуй-нахуй. искать ошибку в изолированном демоне проще: тут ясно, что именно этот демон и виноват.
> однажды я таки соберусь с силами, преодолею лень и мигрирую нахуй на mdev, жестоко выдрав его из бизибокса
И получишь принчипиально необновляемую систему.
Проще уже тогда свой дистрибутив сделать со своим репозиторием на гите например.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 18th, 2013 - 01:48 pm |
---|
| | | (Link) |
|
>И получишь принчипиально необновляемую систему.
ты знаешь, я udev перестал обновлять где-то на 12-й слаке, если не раньше. а зачем? что, появились Принципиально Новые Марсианские Устройства с соединением напрямую через астрал?
Распознаванием железа ядро занимается. задача devfs сообщить системе о том, что ядро чего-то там увидело. Теоретически, если ты не меняешь железно в машине, то ядро и devfs обновлять незачем, особенно если всё работает. Разницу между ядром 3.10 и 3.12 заметит разве что сам Торвальдс.
> чисто статистически же. чем больше кода
Нет.
a = 100 / b;
Мало кода, но если b = 0 всё упадёт.
try {
a = 100 / b;
} catch {
throw "Warning! Division by zero in @".
}
Кода больше, зато если b = 0, то ничего не упадёт, исключение будет обработано и записано в лог.
В итоге второй код более устойчив.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 19th, 2013 - 02:37 am |
---|
| | | (Link) |
|
>В итоге второй код более устойчив.
нихера подобного, точно так же падает. но зато вместо красивого сегфолта с кородампом, где можно сразу на месте всё посмотреть, имеем «развинченый» стек и хуй чего посмотришь.
но суть же не в этом, ты отлично понял, о чём я. натурально, имелся в виду код, реализующий всякие новые функции, а не boilerplate. неужто надо было это отдельно пояснять?
Собственно, в SysV init тожэ был функцыонал по автоперезапуску всякой шняги.
Правда, лучшэ было всё-таки писать вещи в стиле safe_mysqld -- самому, поскольку всё равно этот функцыонал был херовый.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 18th, 2013 - 05:46 pm |
---|
| | | (Link) |
|
ну дык люди давно написали тот же monit, например. и как-то умудрились не превратить его в init.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 19th, 2013 - 02:42 am |
---|
| | | (Link) |
|
не, саклесы, конечно, хорошие, но вот пайковская нелюбовь к shared libraries подзаебала уже. статика хуячит память направо и налево — именно потому, что нет shared objects.
и с чего они взяли, что статика быстрее стартует? бенефиты от отсутствия необходимости в линковке после старта вполне себе съедаются тем, что бинари становятся сильно больше и дольше читаются с диска.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 14th, 2013 - 05:45 pm |
---|
| | | (Link) |
|
и да, кстати: upstart существует уже много лет. и на фоне системды выглядит королевой красоты и изящества. но у красношапки как всегда в жопе NIH заиграл.
Да, upstart хорош. Но слишком уж проприетарен, как и все поделки космонавта.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 15th, 2013 - 10:30 am |
---|
| | | (Link) |
|
э… ЧЕГО в апстарте «проприетарного»? O_O
CLA каноникаловское надо подписывать чтобы патч приняли. Убунточка до сих пор патч для SELinux таскает в пакете отдельно из-за этого
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 15th, 2013 - 01:20 pm |
---|
| | | (Link) |
|
внизапна! я тоже твои говнопатчи в свои проекты брать не буду. как это мешает форкануть и делать всё, что захочется?
>я тоже твои говнопатчи в свои проекты брать не буду
Ты CLA-то почитай - Каноникал получает право менять лицензию тебя не спросив. Потому-то парень и не подписал, а Канокал теперь в апстрим их принять не может, вынуждены таскать рядышком.
>как это мешает форкануть и делать всё, что захочется?
Очевидно, апстарт никому не нужен.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | December 15th, 2013 - 04:16 pm |
---|
| | | (Link) |
|
>Ты CLA-то почитай
я-то читал. а вот ты — нихуя не понял, о чём я писал.
>Очевидно, апстарт никому не нужен.
очевидно, что человек с опенидом лаунчпада — дегенерат.
From: | 666 |
Date: | December 15th, 2013 - 04:00 am |
---|
| | | (Link) |
|
в винде такой хуйни нет