Леннарт Поттеринг (Lennart Poettering), создатель звукового сервера PulseAudio, работающий в компании Red Hat, при участии разработчиков из компаний Novell, IBM, Intel и Nokia, подготовл (http://0pointer.de/blog/projects/systemd.html) прототип принципиальной новой системы инициализации для Linux - systemd (http://git.0pointer.de/?p=systemd.git), нацеленной на более интенсивную параллелизацию выполнения сервисов на этапе загрузки.
Работа systemd разделена на два основных этапа. На первом этапе осуществляется анализ init-скриптов и построение плана выполнения инициализации, в котором учитываются не только вызываемые из скриптов программы, но и открываемые файлы, создаваемые сетевые сокеты и обращения к устройствам. Иными словами, если системы инициализации подобные Upstart как правило оперируют зависимостью между сервисами, то systemd в качестве параметров взаимодействия учитывает такие дополнительные сущности, как сокеты и готовность устройств. После построения плана выбирается наи...URL: http://lwn.net/Articles/385536/rss
Новость: http://www.opennet.me/opennews/art.shtml?num=26447
Хорошо, "мейнстрим" может предложить реально продвинутные вещи, в отличие от других, которые только пытаются собирать готовое. RedHat в очередной раз выступает в роли "паровоза".
порули вначале этим паровозом, а потом выводы делай.
искусственно выдуманные сущности создают искусственно выдуманные, но реальные проблемы.
Вообще-то, до редхата уже был upstart который немало где юзается. Редхата видимо стукнул синдром not invented here и вместо того чтобы доделать upstasrt до умения того что им надо они решили велосипед изобрести. Может и не хуже других, но, блин, Init - он был один. А тут нате вам - init-ng, upstart, systemd, ... короче появляется ЗООПАРК! А это фигово. Каждый тягает одеялу на себя. Не есть гут. Редхат выступил не локомотивом а велосипедистами которые усилили и без того намечающийся бардак, блин.ЗЫ также страшно то что автор тот же что и у пульсаудио. Пульсаудио заманало эксплойтами. Надеюсь что systemd не будет столь же горбатым и дырявым.
Честно говоря, идея вызывает опасения: не знаю как остальные, а я часто пишу SystemV сценарии, и даже с UpStart уже слегка наелась граблей...Какая-то схема, на первый взгляд, непрозрачная для тех, кто пишет стартовые сценарии и соотвествующее ПО к ним.
Не понимаю я этих оптимизаций: лучше бы для ноутов suspend допилили а для серверов, которые, конечно, при падении и/или ребуте после апдейта хочется поднять быстрее, все-таки важнее прозрачность, стабильность, и предсказуемость.
Как работает System V, кристально понятно, и запутаться в нем нельзя, а тут не будешь знать, что там за тебя нагрепают, надеюсь, будет или очень хорошая документация, или таки оно не будет по-дефольту в "серверных" установках, как уже запихивают NetworkManager
Кошк, согласись что тупо когда загрузка встает в позу на хренадцать секунд, ожидая пока там сетевка раздуплится и прочая? А в мобильных девайсах это критично. Представляешь себе если у тебя ТЕЛЕФОН, PDA, умный пульт управления или хотя-бы банальный ноут будет грузиться 5 минут? И кому это будет нужно в таком виде?Да, System-V простой. На этом его достоинства заканчиваются и начинаются недостатки. Оно ничерта не умеет. Даже демон грохнувшийся рестартануть и то не может, вынуждая авторов городить костыли лично. Оно тормозное и тупит при загрузке. Оно на уровне семидесятых-восьмидесятых, блин. Там же где и биосы детектившие железо по 2 минуты вместо старта за 5 секунд.
ЗЫ кстати upstart предоставляет совместимость с Init, посему если лень его осваивать, в системах с оным можно обойтись и классикой, хоть это и будет неоптимально. А редхат что скажет?
> Даже демон грохнувшийся рестартануть и то не может, вынуждая авторов городить костыли лично.Умение хорошо грохнутся --- это неотемлемое свойство демона и без него его доже демоном-то настоящим назвать нельзя? А умение восстановиться после аварии-чего-угодно наводит на мысль о недюжинном искусственном интеллекте.
> это неотемлемое свойство демона и без него его доже демоном-то настоящим назвать нельзя?Толсто, сэр. Мало ли, например память кончилась и кто-то осыпался. Да, это не есть штатная ситуация, но сказать что она невозможна - это покривить душой. Баги - бывают, да. И гораздо лучше если софт отскребется от асфальта сам. Потому как караулить каждый драндулет лично - ну совершенно не прикольно. А если угораздило оказаться за тридевять земель - и подавно. Вообще, что за идиотское и нереалистичное допущение что ошибок не бывает?
> А умение восстановиться после аварии-чего-угодно наводит на мысль о недюжинном
> искусственном интеллекте.Знаете, а вот как показала практика - линух надежнее например винды. В случае, допустим, глюков контроллера диска - линух вправляет ему мозг ресетом и ... система продолжает работать. Примерно то же самое случается с глючащими девайсами на юсб и так далее. В итоге пингвин отлично себя чувствует в батч режимах. А винды - "о, ошибка!". Все. Звиздец до ребута. Какой вариант лучше? Да, разумеется, в идеальном мире где софт и железо без багов - все это излишне. А в реальном мире - ошибки были, есть и будут есть. И с этим придется жить, да.
>Знаете, а вот как показала практика - линух надежнее например винды. В случае, допустим, глюков контроллера диска - линух вправляет ему мозг ресетом и ... система продолжает работать.В Linux нет дампа ядра? Оно сразу перезагружается? В Windows хотя бы Blue Screen Of Death есть — хоть что-то, что заставит посмотреть на экран и физически передёрнуть (humanable) "ручник".
>Примерно то же самое случается с глючащими девайсами на юсб и так далее. В итоге пингвин отлично себя чувствует в батч режимах. А винды - "о, ошибка!". Все. Звиздец до ребута.
Ага: "Программа выполнила недопостимую операцию и будет закрыто. Память не может быть Read." :)) Такое вот понятное каждому хомячку сообщеньице.
>Какой вариант лучше? Да, разумеется, в идеальном мире где софт и железо без багов - все это излишне. А в реальном мире - ошибки были, есть и будут есть. И с этим придется жить, да.
Вон, даже в Java есть два вида "вылетов", приводящие к исключениям (в этом случае вылет может обработать сама среда исполнения, вернув или не вернув управление самой программе) или необрабатываемым ошибкам (тут уж за дело берётся ОС).
А вот для приложений C/C++ ничего "ниже" не существует — только Segmentation Fault.
> хоть что-то, что заставит посмотреть на экран и физически передёрнуть (humanable) «ручник».«заставлять» должен начальник. Компьютер или ОС заставлять не имеет права — нет у них прав. Надо человеку — он заглянет. А дураков лечить тоже не компьютер должен.
>В Linux нет дампа ядра? Оно сразу перезагружается?Хм... я видел реально серьезные сбои ядра всего несколько раз в жизни. И то - или в проприетарных драйверах или в экспериментальном коде. Что до сразу перезагружается - у нормального железа опять же есть (аппаратный и только так!) Watchdog Timer который вообще независимо от ОС вправит мозг системе аппаратным ресетом. Вообще невзирая ни на что если система перестала отвечать, например (и да, в линухе поддерживается целый выводок вачдогов). И это как раз тоже инструмент крашрекавери в батч-режимах, когда ресет нажать или девайс передернуть чисто физически некому.
>В Windows хотя бы Blue Screen Of Death есть — хоть что-то, что заставит посмотреть
>на экран и физически передёрнуть (humanable) "ручник".Есть только одна проблема: если девайс стоит в датацентре за тридевять земель или в удаленном уголке планеты - передернуть девайс/питание/ресет может быть... НЕКОМУ. Или это может стоить нехилых баблосов или вести к большим потерям.
>Ага: "Программа выполнила недопостимую операцию и будет закрыто. Память не может быть
>Read." :)) Такое вот понятное каждому хомячку сообщеньице.В винде кстати, особенно 9х оно требовало реакции юзера, что делало систему тотально не пригодной для работы в беспилотных режимах. Ну напримр если какая-то дрянь будет часто крешиться - в гуе возможно конечное число окон (9х выдерживает порядка 1-3 тысяч окон).В итоге система может сама себя ф#к%пнуть.
>вернув управление самой программе) или необрабатываемым ошибкам (тут уж за дело
>берётся ОС).И что дальше? Если прога не обработала исключение и не ожидала подляну - дальнейшее уже ей не подконтрольно и о контролируемом крашрекавери спич уже не идет. Будет применен какой-то дефолтовый обработчик, со всеми вытекающими (как то потеря программой контроля над происходящим и какие-то дефолтовые действия по этому поводу, корректное выполнение программы будет нарушено). И, кстати, если память в системе закончилась - ява тоже не сможет ее родить, и посему любое действо ведущее к нужде выделить память завалится с исключением. Которое 99% прог сами не ожидают словить вообще, посему им тоже неизбежно настанет кирдык. Особенно если какойнить OOM killer не озаботится вопросом за чей счет освободить память.
>А вот для приложений C/C++ ничего "ниже" не существует — только Segmentation Fault.
Сложно быть тупым, да. Ващет это тоже дефолтовый обработчик. А если прога хочет - она может и сама проверить что *alloc вернул NULL и дальше что-то по этому поводу делать.
Но это фигня. На сях можно еще и вот так:
1) Заранее выделяем себе всю нужную нам память. Ну и как бы у нас ее уже не отберут и упасть при неудачной попытке выделения ессно не получится. Т.к. нет выделений памяти в рантайме. Вообще. Хоть это и несколько геморный вариант, он широко практикуется в эмбеддед, особенно в фирмварях работающих "без ОС" т.к. аллокаторов памяти там тупо нет никаких вообще. Си и это позволяет. И для критичных сервисов, фирмварей и прочая - оно очень даже. Поскольку подконтрольность выделения памяти - на высоте. А вот на яве так - слабо?
2) Я видел кастомные аллокаторы памяти которые не валятся сразу по поводу эпикфэйла при выделении памяти а ждут некоторое время и повторяют попытку выделить запрошенную прогрммой память несколько раз в надежде что проблемные условия пропадут и можно будет продолжить работу, что при штуках типа OOM Killer или каком-то мониторинге системы отстреливающем особо-жирные процессы вполне себе катит (прикольно, да?). В итоге прога притормозится в месте где пытались выделить память а когда память появится, прога дальше продолжит. Ну или если за разумное время памяти не появилось - объявить юзеру о том что у него говно в системе - гудбай, дескать. А на яве так слабо? :)
> И гораздо лучше если софт отскребется от асфальта сам.Ну да, кривой демон раздуется в памяти, будет убит по oom, ваша умная система его перезапустит, он опять раздуется. Так и будет ворочать свопом, заDOSив все остальное что на машине крутится. Без карауленья нихрена не обойдетесь, а эти ваши перезапускалки демонов доведут до того, что залогиниться на машину не сможете.
>> И гораздо лучше если софт отскребется от асфальта сам.
>Ну да, кривой демон раздуется в памяти, будет убит по oom, ваша
>умная система его перезапустит, он опять раздуется. Так и будет ворочать
>свопом, заDOSив все остальное что на машине крутится.Ну если раз в полгода - да и болт с ним. Ну будет запись два кило в сутки в своп. Не больно какая дос-атака на диск :). Тем более что если время отклика роляет, своп можно совсем вырубить или не делать его большим, лимитировав вред. Хотя нормальное решение - подрезать крылья чем-то типа ulimit, но как бы на все места где можно упасть - соломы не напасешься.
>Без карауленья нихрена не обойдетесь,
Предоставим это роботам^W вачдогам, опять же. Отловив лично "быстро вылезающие" проблемы и предоставив автоматике душить медленно вылезающие (когда, и если они вылезут). А то лично переться в датацентр в буево-тутуево или тем паче ребутить какую-то железку на северном полюсе, ухлопав на визит к оной несколько дней - не прикольно ни разу. Сие касается и сбоев оборудования и сбоев софта. Хорошая система должна сделать несколько потуг исправить ситуацию до того как устроить эпик фэйл который потребует участия человека.
>а эти ваши перезапускалки демонов доведут до того, что залогиниться
>на машину не сможете.Выводы будут такие:
- SSH достаточно криво написан. В идеале должен преаллокейтить себе всю память чтобы такого не было и не уповать на внешние команды, отделываясь системными вызовами. Ну, в идеальном мире - и идеальные программы :). В реальном мире - реальный ssh. Достаточно горбатый в этом плане, увы. Он не больно то дуракоустойчив.
- Если вы боитесь активноти свопа и того что это создаст проблемы - надо принять меры по борьбе с оной, ага? Да, для этого потребуется понимание как и что работает, кто и что блочит и прочая.
- ООМ киллера можно настраивать. Что хорошо и правильно. И ulimit в помощь. Посему заведомо подозрительных демонов можно урезонить (про то что стоит выбирать демонов которые не текут я молчу - это очевидно). Правда на все случаи жизни соломки все-таки не напасешься а шЫт все-равно может изредка случиться.
- Хорошо если система в случае единичных редких глюков не обсирается совсем с ног до головы, уделав все, а рекаверится с уведомлением "тут у нас была проблема с вон той железкой/софтиной, мы сие пролечили, но при возможности дескать гляньте что там такое случилось". Дело в том что редкие глюки которые случаются раз в год - отловить крайне проблематично. И в железе и в софте. Посему некий крашрекавери должен быть предусмотрен там где нет вахтера в будке, который ресет нажмет - раз в год и незаряженное ружье стреляет!
грохаются всё. всё без исключения.
и если какой-то чудик пишет демон, который будет рестартовываться сам, без моего участия - ему надо бить морду.пример. субд (например оракл), жрёт озу мама не горюй. далее, начинает сбоить память. всё что мне нужно - пусть падает с вменяемой ошибкой и возможностью консистентного восстановления до этой ошибки.
если он будет рестартовываться сам (потом падать, например 1 раз в сутки. и так каждый день) то отследить ошибку будет ой как не просто. а если ошибка серьезная и он его будет поднимать, а он постоянно валиться, то в результате можешь получить базу, которую штатно восстановить вообще не получиться.
один хрен, следить за состояниями одного по будет другое по. будь то мой собственный демон/скрипт или системный. и то, и другое тоже может сбоить.
>если он будет рестартовываться сам (потом падать, например 1 раз в сутки. и так каждый день) то отследить ошибку будет ой как не простоа логи для кого придуманы ? Для Пушкина?
не, для поцанчика, чтобы он понял, что логи не имеют отношения к перестартовываниям вообще.
иначе они так распухнут, то Пушкин позавидует.
>не, для поцанчика, чтобы он понял, что логи не имеют отношения к
>перестартовываниям вообще.
>иначе они так распухнут, то Пушкин позавидует.А вам здесь никто и не говорил что логи имеют отношение к перерестартовываниям.
серьёзно?:D
Ну не надо путать теплое с мягким. Понятно, что приложения типа СУБД, могущие напихать в базу хлама вместо достоверных данных это серьезно.
Но если проблема в ftp сервере на публичной файлопомойке - че париться-то?
типа разработчики должны сразу писать в анотаци - фтп для файлопомоек.
зы:
если не хочешь париться, то либо погугли, либо сам подумай, как написать 2-а скрипта, где первый запускает второй и если второй падает, то перезапускает.
чесслово, в коментах больше расписывать приходится, чем реализовать.
> Как работает System V, кристально понятно, и запутаться в нем нельзя, а тут не будешь знать, что там за тебя нагрепают, надеюсь, будет или очень хорошая документация, или таки оно не будет по-дефольту в "серверных" установках, как уже запихивают NetworkManagerLinux - это bleeding edge. Привыкайте.
За понятным, прозрачным и стабильным - назад в семидесятые-восьмидесятые.
>> Как работает System V, кристально понятно, и запутаться в нем нельзя, а тут не будешь знать, что там за тебя нагрепают, надеюсь, будет или очень хорошая документация, или таки оно не будет по-дефольту в "серверных" установках, как уже запихивают NetworkManager
>
>Linux - это bleeding edge. Привыкайте.
>За понятным, прозрачным и стабильным - назад в семидесятые-восьмидесятые.Только мне кажется, что Вы ворчите совсем по-стариковски :(?
Нет ничего идеального в этом мире, и лишенного проблем (имхо)
>За понятным, прозрачным и стабильным - назад в семидесятые-восьмидесятые.Угу, давайте запускать CP/M на i8080. Правда вот кому кроме нас самих это будет надо? :)
>Честно говоря, идея вызывает опасения: не знаю как остальные, а я часто
>пишу SystemV сценарии, и даже с UpStart уже слегка наелась граблей...
>
>Какая-то схема, на первый взгляд, непрозрачная для тех, кто пишет стартовые сценарии
>и соотвествующее ПО к ним.По поводу простоты, прозрачности и "кристальной понятности"
систем инициализации.
google://The Design and Implementation of the NetBSD rc.d systemВот это точно образец простоты и понятности,
как для писателя старапскриптов, так и для пользователя.Документу 10 лет, но основные принципы и сейчас такие же.
К тому же система эпоху назад перенесена и на FreeBSD.
Что-то так и не понял чем оно лучше апстарта. Чем хуже - понял, чем лучше - нет.
Лучше по двум пунктам.Первое - улучшеная параллелизация. Вместо цепочки "сервис A требует сервиса B для запуска, а B требует C, и все требуют сислог", вынуждающей апстарт запускать эту цепочку линейно, новая система оперирует понятиями "сервис A может захотеть отправить сообщение сервису B через пайп, который создает сервис B, поэтому давайте создаим пайп и запустим одновременно A и B". В общем она запускает очередной сервис не когда все зависимости в виде сервисов будут запущены, а когда все ресурсы, предоставляемые другими сервисами, которые требует данный сервис будут готовы в системе - что происходит раньше.
Второе - upstart работает совсем не так, как должен работать современный init-сервис, ориентированный на быструю загрузку. Init-сервис должен запускать сервис, когда он _нужен_, и при этом запускать минимум зависимостей, которые нужны для запуска данного сервиса. Upstart же при запуске сервиса тупо запускает все в принципе возможные зависимости, т.е. вместо того, чтобы запускать только то, что необходимо, он старается всегда запускать все, что только можно. С концепциями, которые предлагает systemd можно быть гараздо экономичнее и выйграть время.
>Лучше по двум пунктам.Если на это все будет хорошая документация, и внятная система конфигурирования, хорошо, пока же мне больше нравится SystemV (а Upstart кажется какой-то мутью)
В общем то +1 к мнению кошки, апстарт достаточно мутный, НО зато шустрее стартует. Редхат кажется хочет сделать еще более мутную систему. И, что хуже, РАЗНЫХ велосипедиков теперь станет больше. Что совсем не доставляет.
>>Лучше по двум пунктам.
>
>Если на это все будет хорошая документация, и внятная система конфигурирования, хорошо,
>пока же мне больше нравится SystemV (а Upstart кажется какой-то мутью)
>судя по обилию документации на их сайте http://www.redhat.com/docs/, а так-же о обилию переводов на русский можно с полной уверенностью полагать, что документация будет.
Осталось только понять почему эти два пункта нельзя было внедрить в апстарт. Смысл писать dependency-based init-демоны, когда есть event-based по-моему нет.
Я тут почитал про systemd у леннарда в блоге, похоже это не dependency-based решение, как я предполагал, а event-based и кроме этого очень интересная идея.
Такое ощущение, что человек сидел, ковырял в носу и думал, что бы такое выдумать, чтобы объяснить начальству, что это не еще один Upstart, а что-то совершенно иное.Когда читал последний абзац и список, не покидало ощущение, как будто MSDN читаешь и тебя специально запутать хотят.
>Не понимаю я этих оптимизаций:
Чего они хотят как раз понятно - ускорение загрузки, пусть даже в ущерб простоте, элегантности и всему остальному. Так что моду все-таки Убунту теперь задает, а разработчикам Red Hat и Сузи дали наказ догнать и перегнать. =)
>Чего они хотят как раз понятно - ускорение загрузки, пусть даже в ущерб простоте,
>элегантности и всему остальному. Так что моду все-таки Убунту теперь задает, а
>разработчикам Red Hat и Сузи дали наказ догнать и перегнать. =)В десктопных вопросах? Конечно, да! Но появление десктопа на сервере, не знаю как остальные, я боюсь практически панически.
Имхо, лучше бы оставили SystemV, он гораздо _прозрачнее_ и ему куча лет (под него куча софта, документации, и десятилетия опыта у тех, кто стоял у истоках, и еще иногда помогает в рассылках)
Но он умретeт как когда-то /etc/rc и rc.local, это судьба. Вопрос придет ли на замену что-то адекватное, или вот такое мелкософтообразное недоразумение.
>Но он умретeт как когда-то /etc/rc и rc.local, это судьба.А что с rc.local случилось?
Он не нужен.
Ааа!!! А я-то его конфигуряю... Видимо я сам древний...
А если серьезно - не стоит говорить за всех. Если Вы чего-то не используете, это не значит, что оно не нужно.
Если так рассуждать, никто не труп и Ленин живее всех живых и 2.4 ядро в моем маршрутизаторе прекрасно себя чувствует и есть не просит и NT 3.51 в промышленном оборудовании безотказно работает и не так давно я без проблем настроил им печать на новенькие современные принтеры через сеть. А rc.local наверно даже в последних версиях каких-нибудь BSD присутствует как дефолтный способ запуска демонов.Но если говорить про современные дистрибутивы Линукса, он в лучшем случае запускается через SysV скрипты ради совместимости или по привычке и по сути давно не нужен.
>Он не нужен.Офигительный аргумент.
Я не возражаю, если кто-то пользуется ненужными вещами, и признаю право каждого использовать архаичные технологии, или как вы выражаетесь окаменелые какашки мамонта.
>Так что моду все-таки Убунту теперь задает, а разработчикам Red Hat и Сузи дали наказ догнать и перегнать.И много "мод" насоздавали в убунту ? Кроме тыреного из Fedora ессно.
Кнопочки на окнах слева, и килобайты вместо кибибайтов, лол:)Прошу не считать за троллинг, пользователь Fedora, но "начинающим" советую именно Ubuntu
>Кнопочки на окнах слева, и килобайты вместо кибибайтов, лол:)Вы еще upstart забыли. Который у убунтуйцев много лет а редхат только в 2010 году снялся таки с ручника.
>Вы еще upstart забыли. Который у убунтуйцев много лет а редхат только
>в 2010 году снялся таки с ручника.Upstart в Fedora с 9-ой версии
>Upstart в Fedora с 9-ой версииТогда в чем проблема? Синдром Not Invented Here задолбал? Или была железная уверенность что апстарт совсем никак нельзя допилить до желаемых Goals и проще будет с нуля все зафигачить?
А в Убунту с 6.10
всё просто - берёшь машину времени и воруешь у федоры.зы:
вот только федора почему-то раза в 2-а дольше грузится. но это не столь важно.
ззы:
http://ru.wikipedia.org/wiki/Upstart
> Прошу не считать за троллинг, пользователь Fedora, но "начинающим" советую именно UbuntuКогда меня утомило емержить ебилды, убунту оказалась наиболее вменяемым дистрибутивом.
Ты бы не могла черкнуть письмишко на aqZyrkcGRX(at)demonet.ru, потерял контакты твои.
Обратно пришлю с реального адреса.
>> Прошу не считать за троллинг, пользователь Fedora, но "начинающим" советую именно Ubuntu
>
>Когда меня утомило емержить ебилды, убунту оказалась наиболее вменяемым дистрибутивом.
>
>Ты бы не могла черкнуть письмишко на aqZyrkcGRX(at)demonet.ru, потерял контакты твои.
>Обратно пришлю с реального адреса.Написала
>Так что моду все-таки Убунту теперь задает, а разработчикам Red Hat и Сузи дали наказ догнать и перегнать. =)В данном случае, видимо, моду задает Солярис, а разработчики Убунты догоняют.
>В данном случае, видимо, моду задает Солярис, а разработчики Убунты догоняют.Солярис уж несколько лет как полудохлый и давно ничего не задает.
А в связи с активным развалом ораклом сановских проектов, солярис можно вычеркивать.
> Солярис уж несколько лет как полудохлый и давно ничего не задает.Параллельный запуск сервисов появился в Solaris 10 пять лет назад: http://www.sun.com/bigadmin/content/selfheal/smf-quickstart.jsp
а Upstart впервые зарелизели в 2006, эка невидаль
>Параллельный запуск сервисов появился в Solaris 10 пять лет назад:Радости то с этого. Солярис живет себе один. Ни с чем толком не совместимый, особенно по таким вещам и самобытный. А теперь еще и с жадным вендором который похоже решил придушить его открытое направление. Закладываться на такое будет только отчаянный мазохист который мечтает влопаться в 100% зависимость от оракля. А оно, простите, надо? Алсо, апстарт не сильно то моложе.
smf?
угу. править xml-конфиги в vi - то ещё удовольствие.
хорошо хоть legacy от систем5 оставили. так и живём.зы:
когда в системные утили они стали пихать жабу, а за ней и xml, то сразу так жалко становится неандертальцев и прочих хомоэректусов - у них тоже в своё время появились "эволюционные преимущества", которые оказались тупиком и позволили им вымереть.
ззы:
стандартные вещи нужны. если zfs - это фича, т.к. прячется за посикс полностью, то smf - это какой-то суррогат.
>когда в системные утили они стали пихать жабу, а за ней и
>xml, то сразу так жалко становится неандертальцев и прочих хомоэректусов -жаль становится тех, кто не может понять что xml лучше всего xml-редактором правится... или хотя бы редактором с подсветкой синтаксиса xml.
жаль становится тех, кто предлагает такое проделывать на серверах, где даже нет видиокарт.
собственно именно это и было преимуществом никс-вей. а теперь предлагается недовинда. в сад.
а нафига вам видео-карта для изменения конфига? или вы тупо идете в серверную чтобы один конфиг поправить?тогда уж действительно Ф сад такой никс-вей )))
а нафига мне xml редактор с подсветкой синтаксиса?
это блин жаба-вей, а нифига не никс.
зы:
мне бы чтоб просто, чтоб через жпрс, любой ком-порт и любой терминал.
ну и без понтов супер-админов сидящих за виндой, не знающих что-такое юниксвей и с идиотскими советами.
ззы:
кроме как к видео-карте аргументов нет и прицепится не к чему?
>жаль становится тех, кто не может понять что xml лучше всего xml-редактором
>правится... или хотя бы редактором с подсветкой синтаксиса xml.Жаль становится тех, кто считает наличие специализированного редактора самим сабой разумеющимся там, где редактирование должно заключаться в echo >>
>>Так что моду все-таки Убунту теперь задает, а разработчикам Red Hat и Сузи дали наказ догнать и перегнать. =)
>
>В данном случае, видимо, моду задает Солярис, а разработчики Убунты догоняют.Солярис имеет dependency-based init, upstart - event-based. Кажется launchd эппловский тоже event-based, так что моду он задал.
А что есть грамотного кроме busybox init для embedded систем?
Нокия в данный момент юзает upstart в их девайсах :). Embedded бывает разного калибра и с разными требованиями.
Какой Ubuntu? Какой Solaris? Кто там "моду" задает? LOL
Слепцы - они и днем слепцы.
И только один аноним - в белом и со шпагой, ага :)
Имеются в виду некоторые господа, оставившие свои комментарии на эту тему.
ой нет. ни саспенд в редхате толком не работает, ни хибернейт. а мы вместо этого загрузку ускоряем.
> ни саспенд в редхате толком не работает, ни хибернейт. а мы вместо этого загрузку ускоряем.А это обходной маневр такой -- типа не работает хибернейт и саспенд, ну и фиг с ними, зато грузиться за секунду будем!
А если серьезно, то какие проблемы с хибернатом и сном? У меня и под Шлакой на ноуте никаких проблем, вот, аптайм смотрю -- 34 дня 0 часов 18 мин. Усыпляю по нескольку раз в день...
У меня убунту намертво виснет при просыпании на Fujitsu-Siemens S7110.
>У меня убунту намертво виснет при просыпании на Fujitsu-Siemens S7110.Эм-м-м-м... Я ванильное ядро собираю, заточенное под _свою_ систему и видяха у меня GeForce M8400 G, дрова, соответственно, от производителя использую, может в этом дело? Раза 3-и (за пару лет) были проблемы с просыпанием (подвисал ноут), но в целом все функциклирует отлично.
RedHat нацелен на рынок серверов, их руководитель четко заявил что им десктоп системы до фени. А ты видел сервер в гибернейте? или в слипе? Очень нужен такой сервер.А вот быстрый старт интересно. ситуации бывают разные. И тут очень хорошо бы что б сервер быстро поднимался, а не простой полтора часа из-за того что куча сервисов грузиться и поднимается.
ну так если у меня подавляющая часть линя в продакшне - редхат, что я себе на рабочий десктоп поставлю? я пару раз его пробовал усыплять, словил кору и махнул рукой - не критично, времени больше уйдет на выяснение что и к чему.и это, мне не нужен быстро поднимающийся сервер - мне нужен корректно поднимающийся сервер. критичные сервисы на момент запуска упавшего сервера уже и так на стендбаях подняты. а если я гашу сервер раз в месяц на обслуживание, мне, в общем-то, пофигу, будет система запускаться за пять минут или за две. особенно если сама железка до запуска ОС десять минут стартует.
быстрый старт - не вижу я, где он полезен, кроме десктопов. но на десктопе - еще полезнее засыпание без сбоев. я на нетбуке из-за этого доси winxp home держу. перегружается, только если подзарядить не успел.
>[оверквотинг удален]
>поднимающийся сервер. критичные сервисы на момент запуска упавшего сервера уже и
>так на стендбаях подняты. а если я гашу сервер раз в
>месяц на обслуживание, мне, в общем-то, пофигу, будет система запускаться за
>пять минут или за две. особенно если сама железка до запуска
>ОС десять минут стартует.
>
>быстрый старт - не вижу я, где он полезен, кроме десктопов. но
>на десктопе - еще полезнее засыпание без сбоев. я на нетбуке
>из-за этого доси winxp home держу. перегружается, только если подзарядить не
>успел.+1 во всем, особенно если вспомнить про обычно долгую инициализацию hw raid-контроллеров
вот сейчас к убунте в этом плане претензий нет.
просыпается секунды за 3.
может на моих ноутах (а я на них багрепортил с бет), хз.
>вот сейчас к убунте в этом плане претензий нет.
>просыпается секунды за 3.
>может на моих ноутах (а я на них багрепортил с бет), хз.Я про серверы
а серверам вроде и так хорошо.
луше б софт развивали. вот захреначили б замену ад из_каропки - от ы было хорошо.
у меня CentOS 5.4, родное ядро. Все что нужно єто установить пакетик hibernate-suspend2 кажеться из atrpm и по команде hibernate в консоли он засыпает и просыпаеться. Не забудте только настроить /etc/hibernate/blacklisted-modulesУ меня штук двадцать центосов десктопов, мне времени на разбор проблемы было не жалко. Кстати говоря на некоторых материнках нормально работает и родной спящий режим.
У вас один сервер на критически важных участках??
У меня не один сервер, да и то когда перегружаю персонал нервничает, а в результате нервничаю я.
А вот в знакомой конторе все яйца в одну коробку положили. Когда лег сервер встала работа у очень большого числа людей. Обьяснить тому человеку, что так не делают, я не могу. Зато если перезагрузка той машини не будет длиться 1 час, то єто хоть както поможет. Там поклонники красной шапки, по подписке, а сервер перегружают стабильно раз в пару месяцев.
>У меня не один сервер, да и то когда перегружаю персонал нервничает,
>а в результате нервничаю я.Как может нервничать персонал при работающем резервном сервере?
>А вот в знакомой конторе все яйца в одну коробку положили. Когда
>лег сервер встала работа у очень большого числа людей. Обьяснить тому
>человеку, что так не делают, я не могу. Зато если перезагрузка
>той машини не будет длиться 1 час, то єто хоть както
>поможет. Там поклонники красной шапки, по подписке, а сервер перегружают стабильно
>раз в пару месяцев.Настроить перезагрузку на послерабочее время.
грамотная система инита нужна. systemv стар, хотя и не так плох, в принципе.
нужно нечто новое, удовлетворяющее как можно большим критериям. как пример - чтобы загрузка проходила посредством запуска бинарника (не закрытого блоба), который предварительно собирается, исходя из присутствующих сервисов в системе. на этапе инсталляции системы, например. и при появлении \ удалении новых сервисов этот бинарник пересобирался бы. вот тогда мы увидим настоящую загрузку системы за считанные секунды. возможно, даже за пару секунд. различные лиз адресов по dhcp и резолвинги по dns должны уходить в фон параллельно, не меная стартовать звуковым подсистемам, графическим мордам и прочее.
при условии грамотного написания и гибкого конфигурирования это может быть очень хорошая система инита. в свете различных мобильных девайсов и технологий это было бы, и даже должно быть, актуально. а пока у нас такой инит, который смотрит на сервис, что ему надо, что надо зависимостям сервиса и т.д., проходит время.
наконец то взялись за нужное дело. а то у меня винда семера быстрее стартует чем стандартная 11 федора, прям стыдно. оптимизация и отложенная загрузка сервисов это хорошо, но и до запуска сервисов тоже тормоза разрулить надо
>наконец то взялись за нужное дело. а то у меня винда семера
>быстрее стартует чем стандартная 11 федора, прям стыдно. оптимизация и отложенная
>загрузка сервисов это хорошо, но и до запуска сервисов тоже тормоза
>разрулить надоСтавь убунту - будет 18 секунда загрузка. Винде даже не снилось.
подтверждаю.
даже на еееписи 701.
>>наконец то взялись за нужное дело. а то у меня винда семера
>>быстрее стартует чем стандартная 11 федора, прям стыдно. оптимизация и отложенная
>>загрузка сервисов это хорошо, но и до запуска сервисов тоже тормоза
>>разрулить надо
>
>Ставь убунту - будет 18 секунда загрузка. Винде даже не снилось.Чем вы замеряете? У User294 вообще 10 секунд. Может это SDD?
http://habrahabr.ru/blogs/ubuntu/74035/
Я с секундомером проверял. Даже близко не 18 секунд.
Хм... Мне одному кажется, что Linux все больше и больше становится похожим на небезызвестную ОС небезызвестной конторы. Кому какое дело сколько раз при запуске системы вызвается grep и awk - они за тем и написаны, чтоб работать. Это тот самый UNIX-вэй.
Посмотрите на, допустим, солярис - там попытались сделать SMF - в итоге вместо вменяемого процесса загрузки мы имеем нечто среднее между классическими демонами и виндовыми службами. Неужели это действительно так хорошо, что хотим подобное в Linux?
Ладно, есть области, где время загрузки может быть весьма критичным. Но что в мобилах, что в промышленных решениях есть законченная железка. А значит самый быстрый способ включиться - это просто проснуться. Вот в эту сторону и работать надо, а не изобретать очередную "службу управления службой управления загрузкой демонов".
В этом что-то есть, согласен, но...>Посмотрите на, допустим, солярис - там попытались сделать SMF - в итоге
>вместо вменяемого процесса загрузки мы имеем нечто среднее между классическими демонами
>и виндовыми службами. Неужели это действительно так хорошо, что хотим подобное
>в Linux?... Linux не солярка, здесь свободы больше и, как следствие, больше дистрибутивов. На RedHat'овских дистрибах свет клином не сошелся, не нравиться -- выберите другой. Или, вообще, соберите свой, напиример, на основе LFS! ;-)
Тогда у Вас будет полная свобода выбирать вариант Init'иализации системы по вкусу. Вон, Патрик в Шлаке так и сделал, замутив BSD-style инициализацию.
>там попытались сделать SMF - в итоге вместо вменяемого процесса загрузки мы имеем нечто среднее между классическими демонами и виндовыми службами.ну до виндовых они всё же не опустились. тут вы клевещите.
пробовали когда-нибудь сервис написать? нет? а ведь только тогда понимаешь какая это ж..
>>там попытались сделать SMF - в итоге вместо вменяемого процесса загрузки мы имеем нечто среднее между классическими демонами и виндовыми службами.
>
>ну до виндовых они всё же не опустились. тут вы клевещите.
>пробовали когда-нибудь сервис написать? нет? а ведь только тогда понимаешь какая это
>ж..System V-сервис рисуется за одну минуту :(
то есть ты типа постфикс за минуту пишешь? или скриптег его запускающий? гг
>то есть ты типа постфикс за минуту пишешь? или скриптег его запускающий?
>ггПростейшего демона не так уж и долго писать -- форкаеш процесс, потомок закрывает stdin, stdout и stderr и входит в бесконечный цикл, а предок -- завершает работу. В результате получаешь демона, который нифига не делает, только в памяти висит, тем не менее демон...
>System V-сервис рисуется за одну минуту :(Может, всеж, не сам демон, а скрипт запуска?
В винде-то это тоже не сложно -- "Управление запуском служб при старте Windows" (http://ru.wikipedia.org/wiki/%D0%A1%D0%B...) -- ветка реестра HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services.
>>System V-сервис рисуется за одну минуту :(
>
>Может, всеж, не сам демон, а скрипт запуска?
>
>В винде-то это тоже не сложно -- "Управление запуском служб при старте
>Windows" (http://ru.wikipedia.org/wiki/%D0%A1%D0%B...) -- ветка реестра HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \
>Services.Конечно, скрипт, извиняюсь :)
ветка реестра скрипт запуска не напишет. и в логи не сбросит.
если есть уже написанная служба - живём. нет - сосём. или ищем кто уже написал. часто из *никс (например вгет, срон, грип, аук,..).
ну а если самому на сях приспичело написать, да чтоб и с логами,... - туши свет и делай проект с бюджетом.
>если есть уже написанная служба - живём. нет - сосём.Это не совсем так. Там есть специально обученная служба srvany.exe, которая запускает любой экзешник, переданный ей в виде параметра, а соответственно любую программу и скрипт можно запустить демоном.
а вы пробовали её использовать?
половины возможностей нет. и в частности никаких логов.
а вы сможете также запустить например ие с выходом на опеннет и сбросом новостей? да без графики?
в никс с фф - это легко.
>а вы пробовали её использовать?Использовал на продакшне. С ней еще можно всякие трики проделывать, например компенсировать отсутствие setuid в форточках.
У вас какое-то холиварное представление о форточках. Думаю слишком много вы общались с троллями и сертифицированными MCSE имбецилами.
Там есть и централизованная система логов (в которую в том числе и менеджер служб пишет) и фф и множество скриптовых языков и свой крон и свой курл и даже свой кастрированный греп.
вот не надо про холивары и прочие удары ниже ватерлинии.
для того, чтобы сервис писал в логи винды, он должен быть соответствующим образом разработан. и если фф туда пишет, то это ещё не значит, что ты из него сможешь сделать сервис.
а если какую-либо прогу (чаще всего консольную) и можно таким образом загнать в сервис, это не значит что в логи она будет что-то вменяемое писать, если до этого не умела.
>ветка реестра скрипт запуска не напишет. и в логи не сбросит.В данном случае мой ответ касался только запуска службы. Накатать reg файл и импортнуть содержимое в реестр не сверх проблема. По мне аналогично написанию стартового скрипта, не сложнее.
Касательно написания самих сервисов, демонов писать приходилось, виндовые сервисы -- нет, так что не компетентен в данном вопросе. Хотя, обзорные статьи по написанию листал -- как-то погрустнело сразу.
Чем то мне это master sheduler-а из IBM OS напоминает. Где то рубежа 83-85гг. Когда стало возможно инициализировать подсистемы как задания, через запись на JCL пакетов, пусть и оформленных в виде загрузочного модуля.
интересно!смотрю щаз это модно стало...
...может тоже написать очередной свой скрипт для инициализации :-D :-D
>смотрю щаз это модно стало...
>
>...может тоже написать очередной свой скрипт для инициализации :-D :-DНе-а, скрипты уже не модно писать! Модно Init переписывать... Т.ч. вливайтесь и перепиливайте Init! ;-)
Если руки чешутся, помогли бы проекту Gobo-linux? Тоже хорошая, перспективная идея.
>Если руки чешутся, помогли бы проекту Gobo-linux? Тоже хорошая, перспективная идея.а на сколько он жив и имеет ли русскоязычное комунити ?
>создатель звукового сервера PulseAudioДостаточно, юзаю runit и в ус не дую, всё руками настраивается.
На десктопе пусть как хотят изголяются - system V, Upstart, systemd. Но только руку прочь от серверных дистров!!!
эта новость сделала мой день , всегда хотел
быструю загрузку . А тут еще от такого близкого
сердцу RedHat'а.
в новой системе я хочу
on_crash="restart(default)|exec|migrate|donothing"
и чтобы exec и migrate были темплейтезироваными хукамиP.S. ребята, если реализация будет удачной - это ж половина работы по настройке кластера и крепкий сон по ночам, когда любят падать сервисы на забугорно стоящих аппаратах
>P.S. ребята, если реализация будет удачной - это ж половина работы по
>настройке кластера и крепкий сон по ночам, когда любят падать сервисы
>на забугорно стоящих аппаратахДада, рестарты ваши машины целиком будут вслез за упавшими сервисами отправлять. Крепкий сон гарантирован - как уволят, о кластерах больше думать не надо будет :))
>Дада, рестарты ваши машины целиком будут вслез за упавшими сервисами отправлять.почему? %-[ ] про рестарты вы смешно придумали.
UPD: а! вас смущает "restart(default)" ? ну нельзя же так топорно все понимать. конечно я имел ввиду просто рестарт сервиса. для reboot должен быть отдельно лежащий темплейтизированный exec
А напомните пжста, эта уродская система запуска в линуксах с уже 10 лет неактуальными ранлевелями и симлинками на скрипты - это что, SystemV?
>А напомните пжста, эта уродская система запуска в линуксах с уже 10
>лет неактуальными ранлевелями и симлинками на скрипты - это что, SystemV?
>Она самая.
уродская? не, не она.
а вот отличная и актуальная система с ранлевелями и симлинками на скрипты - это она.
Ну что сказать.. Не тем они занимаются. Такое ощущение, что все присутствующие здесь только и делают что бутят сервера и мобильные устройства. Да какая нафиг разница сколько оно будет грузиться, 10 секунд или 30 ???Это моя десктопная машина.
% uptime
8:43 up 67 days, 21:41, 6 users, load averages: 0,43 0,11 0,07Один из серверов:
% uptime
08:47:18 up 126 days, 23:22, 1 user, load average: 0.00, 0.00, 0.00Согласен, инициализация аля SysV уныла. Но чем не устаривал Upstart? Лучше бы его докрутили если уж так хочется приложить переизбыток свободного времени и сил. Как дети малые, чесслово.
> Ну что сказать.. Не тем они занимаются. Такое
>ощущение, что все присутствующие здесь только и делают что бутят сервера
>и мобильные устройства.они латентные оффтопики, им компы не для работы :)
собрал тут gentoo+openrc (будет carpc) на Via c7 1Ghz 1Gb RAM, от момента включения питания до старта X проходит 15 сек
ура, ребята повторно изобрели rc-ng
Мдя, новость кончно интересная, но каменты ещё интереснее :). Такое ощущение, что все вышеотписавшиеся таки целый день что-то ребутят, причём с секундомером :). Господа, секунды вам погоды не сделают (ну разве что с друзьями виндузятниками пиписьками померяться), а на сервере после того как он упал, хз что может навернуться и всё равно ручками придёться прикручивать обратно. Так как вам upstart или systemd помогут? :)
systemd не совместима с отдельно монтируемым /usr. А значит initrd будет на 4 гига больше.
Пруф
http://freedesktop.org/wiki/Software/systemd/separate-usr-is...
Это, кстати, следствие четверорукости тех разработчиков Red Hat, у которых криво собранные пакеты с бинарниками из /, слинкованными с библиотеками из /usr -- оказались достаточно критичны для того, чтобы соответствующий баг в анаконде полечили гильотином (запретом создания отдельного /usr) плюс руганью в системде.