The OpenNET Project / Index page

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

Второй отчет о развитии системного менеджера systemd

20.11.2010 11:00

Леннарт Поттеринг, возглавляющий разработку перспективной системы инициализации systemd, представил очередной отчет о развитии проекта, приуроченный к его 13-му релизу.

Ключевые моменты:

  • Уже сейчас, в составе Fedora 15/Rawhide, systemd 13 способен обеспечить полноценную загрузку системы без использования shell-скриптов. Однако, все еще существуют отдельные ситуации, когда без скриптов обойтись невозможно, в частности:
    • Включен autoswapping (Леннарт отмечает, что это в любом случае не лучшая идея);
    • Требуется полная переустановка меток SELinux;
    • Выполняется первая загрузка после установки системы;
    • Производится загрузка модулей ядра, сконфигурированная без использования соответствующего штатного механизма systemd;
    • Производится загрузка с доступной только на чтение NFS;
    • Задействованы LVM/RAID/Multipath.

    Во всех остальных случаях, используя Fedora 15/Rawhide, вы уже сейчас можете полностью избавиться от скрипт-костылей и насладиться невероятно быстрой загрузкой. Что касается перечисленных ситуаций, то Леннарт и его коллеги интенсивно работают над расширением возможностей systemd, так что, вероятно, к выходу Fedora 15 список таких неудобных ситуаций будет сильно сокращен.

  • Подготовлен написанный на C инструмент, обеспечивающий корректную остановку системы, включая остановку всех процессов, отмонтирование всех файловых систем, отключение всех loopback-устройств и томов Device Mapper (LVM, Multipath, etc.). Все эти операции производятся по тщательно продуманному алгоритму, обеспечивающему их корректное выполнение практически в любой ситуации. Например, большинство современных скрипт-костылей оставляют смонтированной файловую систему, если на ней находится файл, подключенный к loopback-устройству, что приводит к необходимости запуска fsck для данной ФС при следующей загрузке. systemd в такой ситуации, выполнив отключение loopback-устройств, повторно попытается отмонтировать еще смонтированные ФС.

    Отметим, что данный модуль может быть использован как после полной остановки всех служб (обычное выключение/перезагрузка), так и без нее — в последнем случае он предоставляет корректную и безопасную замену действиям halt -f/reboot -f.

  • В systemd добавлена базовая реализация упреждающего чтения (read ahead) с HDD и SSD-накопителей, использующая новейшие возможности ядра Linux, такие, как fanotify(), fadvise() и mincore(). Леннарт отмечает, что полученное в результате ускорение процесса загрузки должно проявляться на любых компьютерах, однако оно будет особенно заметно на старых и медленных машинах.
  • Подготовлен, написанный на C модуль, выполняющий запуск fsck и активацию квот файловых систем с обеспечением максимально возможной степени параллелизации операций.
  • Каждая служба, каждый пользователь и каждый пользовательский сеанс выделяются в собственную контрольную группу по CPU-ресурсу, что позволит «из коробки» получить ту самую «killer feature» (высокую отзывчивость сильно нагруженной системы) без наложения дополнительных патчей на ядро или использования небезопасных и не вполне универсальных решений.
  • systemd предоставляет интерфейс протоколирования /dev/log, действующий с ранней стадии загрузки до момента полной остановки системы. В том случае, если демон системного лога не запущен, запись ведется в буфер ядра (kmsg). После запуска этого демона, накопленные лог-записи обрабатываются им согласно соответствующим настройкам. Таким образом, systemd позволяет обеспечить регистрацию событий в системе практически на все время ее функционирования. Подробнее о концепции этого механизма и его достоинствах можно почитать в прошлом отчете.
  • Добавлена команда «systemctl kill», обеспечивающая отправку заданного сигнала всем процессам определенной службы, таким образом, обеспечив ее корректную остановку. Этим systemd отличается от классических механизмов вроде «kill `cat /var/run/daemon.pid`», которые в некоторых случаях допускают возможность продолжения работы порожденных службой процессов (например, некорректно форкнувшегося и потерявшего связь с родителем CGI-процесса при остановке web-сервера). Подробнее об этих вопросах можно почитать в четвертой статье из цикла «systemd for Administrators».
  • В systemd реализована возможность загрузки правил SELinux. Таким образом, один и тот же бинарник systemd может использоваться при загрузке как с initrd, так и без него. К удивлению самих авторов, systemd оказался первой (и пока последней) системой инициализации Linux, поддерживающей такую возможность.
  • systemd обеспечивает настройку системной локали (соответствующих переменных окружения), которая автоматически наследуется всеми процессами в системе (и, разумеется, может быть перекрыта при необходимости).
  • Добавлена штатная поддержка работы с шифрованными LUKS/dm-crypt томами, включая чтение настроек из /etc/crypttab. Особенно интересна модульная структура реализации запроса пароля, работающая с самыми различными агентами. Например, при загрузке пароль может быть запрошен через Plymouth или непосредственно в консоли, а при горячем подключении — через графическую утилиту в составе GNOME или механизм wall. Также, при ручной активации юнита через команду «systemctl start», пароль может быть запрошен из той же консоли. Интерфейс взаимодействия агента запроса пароля с systemd очень прост, отмечает Леннарт, и предлагает разработчикам KDE лично убедиться в этом, создав собственную реализацию агента.

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

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

  • Механизм плагинов также используется в системе генераторов — специальных программ, динамически формирующих файлы конфигурации юнитов (units) systemd. Таким образом можно, например, упростить развертывание большого количества виртуальных окружений на базе LXC или KVM, с сохранением полного централизованного контроля над ними.
  • systemd берет на себя автоматическую очистку и формирование внутренней структуры «динамических» каталогов, таких, как /tmp, /var/run и /var/lock, что позволяет выносить их в tmpfs без дополнительных усилий.
  • Реализовано измерение и регистрация длительности всех операций, происходящих при загрузке, что упрощает процесс выявления «узких мест».
  • Обеспечивается корректное завершение сеансов пользователя. Раньше при остановке Linux отнюдь не редко встречалась ситуация, когда некоторые пользовательские процессы завершались позже всех демонов, просто потому, что они отделились от основного сеанса и не были завершены вместе с ним. С systemd такое исключено.
  • Добавлена поддержка маскирования — специального механизма, позволяющего полностью заблокировать запуск какой-либо службы. Обычный метод «systemctl disable», запрещая автоматический запуск службы, оставляет возможность для ручного запуска через «systemctl start». Маскирование, состоящее в создании в /etc/systemd/system символьной ссылки с именем соответствующей службы, указывающей на /dev/null, полностью блокирует как автоматический, так и ручной запуск службы.
  • В файлах описания юнитов теперь можно использовать проверку некоторых условий, в частности, существования заданных файлов или наличия каких-либо файлов в заданном каталоге (проверка на непустой каталог), присутствие определенных параметров в командной строке ядра.
  • В дополнение к классическим механизмам halt, reboot и poweroff, добавлена реализация перезагрузки через использование kexec, позволяющей избежать затрат времени на инициализацию BIOS, что особенно актуально для серверного оборудования, в котором этот период бывает достаточно длительным.
  • Реализовано «умное» (в стиле zsh) дополнение опций systemctl для bash (требуется версия bash >=4.0).
  • Andrew Edmunds добавил в systemd поддержку дистрибутива Ubuntu. Однако, пока что фирма Canonical не стремится интегрировать systemd в свой дистрибутив, предпочитая собственную разработку — upstart, которая, к сожалению, использует не столь эффективные методы параллелизации и значительно уступает systemd по возможностям.
  • Тем временем, разработчики Debian — Michael Biebl и Tollef Fog Heen — работают над полной интеграцией systemd в Debian, с возможностью загрузки системы без установленного пакета initscripts. Подробнее см. эту страницу в Debian Wiki.

    [Прим. перев.: заметим, что интеграцией systemd в Fedora и openSUSE занимаются его непосредственные разработчики — Леннарт Поттеринг, сотрудник Red Hat, и Кай Сиверс (Kay Sievers), сотрудник Novell.]



  1. Главная ссылка к новости (http://0pointer.de/blog/projec...)
  2. OpenNews: Отчет о развитии systemd
  3. OpenNews: Вышла первая версия системы инициализации systemd
  4. OpenNews: systemd - новая система инициализации от разработчиков Red Hat и Novell
  5. OpenNews: Проект Fedora мигрировал на Git, интегрировал systemd и перевел Fedora 14 в фазу заморозки
Автор новости: Sergey Ptashnick
Тип: Обобщение
Короткая ссылка: https://opennet.ru/28713-systemd
Ключевые слова: systemd, linux, init, boot
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (127) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, dimqua (ok), 14:08, 20/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +18 +/
    Одно слово. Впечетляет.
     
     
  • 2.30, User294 (ok), 17:47, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Действительно, список фич внушительный. И в эмбеддовке такой подход подойдет - там выполнение скриптов зачастую сильно сажает скорость загрузки.
     

  • 1.2, mrd_kaluga (?), 14:21, 20/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    А я почему-то всегда думал что скрипты - это преимущество. Всегда можно посмотреть как что сделано или поменять. А с systemd в купе с обычной бедностью man-ов в Линуксе вообще теперь сложно будет сказать где что и как работает. И без компилятора (который не ставится обычно на production машинах) ничего не поменяешь, я так понимаю.
    Хотя посмотрим, может действительно окажется удобнее..
     
     
  • 2.4, zerot (ok), 14:26, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +5 +/
    скрипты это большой плюс, если вы хотите иметь контроль над системой и вам некритично время загрузки - пять или сто секунд. На серверах и десктопах обычно так и есть - просто разводят очередную истерию. Берегите свою психику ...
     
     
  • 3.5, mrd_kaluga (?), 14:29, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, не знаю как в федоре, но в CentOS уже сеть запихали в NetworkManager (по-моему так называется), черную коробку. Наверное для desktop-ов хорошо, а на сервере уже страшновато становится немного: зачем статику через демона назначать?
     
     
  • 4.6, dalco (ok), 14:35, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Так вроде никто не мешает этот NetworkManager отключить и работать по старинке? В моих серваках (правда, там Fedora) он отключен, но жизнь продолжается :)
     
  • 4.8, анон (?), 14:53, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –6 +/
    >Кстати, не знаю как в федоре, но в CentOS уже сеть запихали в NetworkManager (по-моему так называется), черную коробку.

    Дайте угадаю. Вы - пользователь Ubuntu, редхатов никогда до этого не видели, поставили "крутой серверный дистрибутив" CentOS в виртуалку "на посмотреть". В инсталляторе, естественно, отметили установку "Графическое окружение GNOME" (включая NetworkManager). После установки полезли в /etc/network/interfaces... А его нет! Ужас-ужас-ужас! Предатели! Изменники! Весь сервер теперь только через NM настраивать!!!1

    Открою вам страшную тайну: в редхатовских дистрах сеть настраивается через /etc/sysconfig/network-scripts/ifcfg-*. И, разумеется, никакой NM этого не отменяет.
    Читайте документацию - классная штука! ;-)

     
     
  • 5.12, Egres (ok), 15:04, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    В CentOS 5.xx всё хорошо, а вот в 9-й (что ли) Федоре ставится этот самый network manager безо всяких иксов и именно он стартует по-умолчанию (сервис network отключён)
     
     
  • 6.43, Gular (ok), 08:46, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Да Fedora вообще плохой вариант для сервера. В пробовали устанавливать ее не в графике, а в текстовом режиме (установщик ncurses)? В RHEL/CentOS он работает адекватно, а у нее при тако варианте: а) не предлагается размечать диски _вообще_ (сетапится по дефолту, с LVM и ext4); б) не предлагается выбрать, что ставить, в результате потом тянется куча GUI. Это только в случае текстового режима; в графике все хорошо. Но сами понимаете, сетапить ОС, скажем, через IP-KVM в графике - неуважение самому к себе.
    Единственное, в чем лучше Fedora на сервере, это более новый софт. Правда не редко, когда в продакшн софт собирается в локальных репах, и все что надо, и как надо, есть и так. В этом случае Fedora нахрен не нужна.
     
     
  • 7.45, dalco (ok), 09:52, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Выбор того или иного дистрибутива для сервера - личное дело конкретного админа в... большой текст свёрнут, показать
     
  • 5.27, jbo (??), 17:23, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Открою вам страшную тайну: в редхатовских дистрах сеть настраивается через /etc/sysconfig/network-scripts/ifcfg-*. И, разумеется, никакой NM этого не отменяет.

    в убунте тоже есть 1 файлик /etc/network/interfaces

    человек говорил про CentOS а вы начали грязью поливать Ubuntu

     
     
  • 6.68, анон (?), 23:42, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > человек говорил про CentOS а вы начали грязью поливать Ubuntu

    Интересные у вас какие-то представления о жизни: "посоветовать читать документацию" по-вашему "полить грязью".

    Воистину, странные вы люди.

     
     
  • 7.84, Petja_s_upravdoma (ok), 08:26, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >> человек говорил про CentOS а вы начали грязью поливать Ubuntu
    > Интересные у вас какие-то представления о жизни: "посоветовать читать документацию" по-вашему "полить грязью".
    > Воистину, странные вы люди.

    Ну да, ну да ... не страннее некоторых ... угу ...

     
  • 5.34, stranger (??), 18:01, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я Вам сейчас открою страшную тайну - в RHEL 6 сеть иначе чем через NM не настраивается.
    system-config-network есть, но не работает.
     
     
  • 6.35, Stax (ok), 19:40, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Выключить сервис NetworkManager, включить network - и вуаля - пробовали ? :)
    Между прочим, вполне реальный совет из редхатовской багзиллы по поводу проблем с сетью (правда, как в итоге выяснилось, NM был не при чем и заработало и с ним)

    Кстати можно первый не выключать, если зачем-то требуется. Достаточно включить network и разрулить в файликах /etc/sysconfig/network-scripts: чему разрешено управляться через NM, чему нет. Сервис network "автомагически" будет рулить только теми интерфейсами, которые запрещено трогать NM'у.

     
     
  • 7.36, zerot (ok), 20:39, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    а не проще добавить в начало скрипта

    /etc/init.d/network_manager (или как он там называется)

    строчку

    exit 0 ;

    и настраивать всё без NetworkManager проверенными способами (через типовые конфиги) ?

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

     
     
  • 8.38, Stax (ok), 23:28, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нет, зачем хакать пакет к тому же при апдейте затрется , можно просто отключить... текст свёрнут, показать
     
     
  • 9.39, zerot (ok), 00:12, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    таким образом вы только запретите старт стоп при запуске соответствующего кольца... большой текст свёрнут, показать
     
     
  • 10.44, Gular (ok), 09:03, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И все же Собственно, это не единственный такой способ Но делать такое - это не... текст свёрнут, показать
     
     
  • 11.56, zerot (ok), 13:34, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    опять же неверно при попытке удалить NM пакетный менеджер предложит удалить и в... текст свёрнут, показать
     
     
  • 12.94, Gular (ok), 13:23, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Да, выше имел ввиду сервер Для десктопа конечно, да и лучше наверно будет на... текст свёрнут, показать
     
     
  • 13.113, Зилибоба (ok), 17:49, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Обожаю никсы именно за это 1000 1 способ некоршерного решения проблемы К сл... текст свёрнут, показать
     
  • 10.62, reminux (ok), 16:31, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    То есть месье таким образом гарантированно защитит этот скрипт от любых багфик... текст свёрнут, показать
     
     
  • 11.64, zerot (ok), 22:39, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    именно - задача малой кровью избавиться от запуска и от функциональности этого... текст свёрнут, показать
     
     
  • 12.67, анон (?), 23:40, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Эта задача решается двумя командами chkconfig NetworkManager off chkconfig netwo... текст свёрнут, показать
     
     
  • 13.86, zerot (ok), 10:11, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    это проговаривалось выше, вы невнимательны ... текст свёрнут, показать
     
     
  • 14.88, анон (?), 11:44, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Я внимателен, и поэтому заметил, что вы не привели никаких возражений, почему да... текст свёрнут, показать
     
  • 10.99, non anon (?), 14:36, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Может быть, вы таки почитаете man chkconfig Команда chkconfig NetworkManager o... текст свёрнут, показать
     
     
  • 11.104, zerot (ok), 14:54, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    мистер анон, гадить в разговоре, а дальше делать вид что не гадили и ждать продо... текст свёрнут, показать
     
     
  • 12.106, non anon (?), 15:06, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Т е вам нечего возразить по сути ... текст свёрнут, показать
     
  • 10.116, Michael Shigorin (ok), 09:42, 23/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Об это потом споткнётся обновление -- станет болтаться минимум один пакет, котор... текст свёрнут, показать
     
     
  • 11.120, zerot (ok), 06:27, 24/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ну, chattr приведён больше для примера кстати метод exit 0 впервые пришлось... текст свёрнут, показать
     
     
  • 12.121, aborland (?), 12:42, 24/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Да вы бредите w не пробовали его удалять, а я пробовал - NM отлично сносится и... текст свёрнут, показать
     
     
  • 13.122, zerot (ok), 13:24, 24/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    не брежу, но возможно путаю с убунтой Помню, что это было что то Debian based ... текст свёрнут, показать
     
  • 8.61, анон (?), 16:18, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    и при следующем апдейте все это будет перекрыто дефолтным скриптом, и при сл... текст свёрнут, показать
     
     
  • 9.65, zerot (ok), 22:48, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    эта адская картина не обязательно соответствует действительности, даже если гово... большой текст свёрнут, показать
     
  • 7.41, fa (??), 06:07, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Можно вопрос. Зачем NetworkManager так активно впихивают во все дистрибутивы?
     
     
  • 8.60, Аноним (-), 15:18, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ничего лучше нет для хомячков и не только для них Удобная штука ... текст свёрнут, показать
     
     
  • 9.123, Michael Shigorin (ok), 16:44, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Отучаемся говорить за всех, пушистый Вы наш ... текст свёрнут, показать
     
  • 6.58, prapor (??), 14:46, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В /etc/sysconfig/network-scripts/ifcfg-eth0 (для примера) пишем NM_CONTROLLED="no" и получаем всё по-старинке.
     
  • 5.119, mrd_kaluga (?), 02:12, 24/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ой как много уже определений для меня.
    Не знаю что такое Gnome, графикой в Линуксе не знаю как пользоваться. Нашел это в CentOS, другого вроде нет. Всего 100 серверов с "крутой серверной ОС". Извините если не слишком круто. И да, мы вообще ламеры по сравнению с Вами :)
     
     
  • 6.126, zerot (ok), 08:01, 26/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    не удержался
    знакомый таширский говорок :)
    а, кстати 100 серверов не всегда в плюс. На меньшем количестве почему не смогли сделать ? :)


     
  • 4.55, mirr0r (ok), 11:47, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Кстати, не знаю как в федоре, но в CentOS уже сеть запихали
    > в NetworkManager (по-моему так называется), черную коробку. Наверное для desktop-ов хорошо,
    > а на сервере уже страшновато становится немного: зачем статику через демона
    > назначать?

    Отключите и не парьтесь )

     
  • 4.90, TeXHaPb (ok), 11:55, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    В Debian Squeeze почему-то NM работает только с теми интерфейсами, что не перечислены в /etc/network/interfaces. ЧЯДНТ?
     
  • 3.7, Морозов Алексей (?), 14:49, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Есть одно место, где высокая скорость загрузки роляет - мобильные устройства. К сожалению, время работы от батарейки не так велико, как хотелось бы. Если загрузка быстрая, то можно не пользоваться хибернейтом (который всё равно выжирает батарейку), а делать честный шатдаун...
     
     
  • 4.14, zerot (ok), 15:30, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    согласен, поэтому и написал про сервера и десктопы
    у мобильных устройств своя специфика. там, например, предпочтительнее использовать скандально :) известный BusyBox. Но это специфика мобильных истройств, и тянуть её неудобные идеи на десктопы и сервера неверно ИМХО
     
  • 4.32, User294 (ok), 17:57, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Не оправдано, как минимум для устройств типа мобилок сам процесс загрузки очень... большой текст свёрнут, показать
     
     
  • 5.46, XoRe (ok), 10:39, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Думаю, человек имел в виду нетбуки и прочие айпады.
    Мобильные телефоны вообще не выключаются )
     
     
  • 6.112, User294 (ok), 17:19, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Даже на нетбуках и ипадах режим сна довольно экономный на лично моем девайсе - ... большой текст свёрнут, показать
     
     
  • 7.128, XoRe (ok), 02:50, 27/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >И тем не менее, а согласитесь что загружающийся 2 минуты телефон -
    > тоже не прикольно? :)

    Учитывая аппаратные характеристики телефонов и кучу явы в ПО, 2 минуты - это чудо =)

     
  • 3.9, анон (?), 14:57, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > скрипты это большой плюс, если вы хотите иметь контроль над системой

    Вы - пользователь LFS? Никто, кроме LFS'ников, не имеет морального права так говорить.

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

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

    Путание исполняемого кода и конфигурационного файла - старая болезнь разработчиков Unix, хотя этот принцип прямо противоречит модульной концепции разработки, исповедуемой в этом семействе ОС.

     
     
  • 4.10, анон (?), 15:00, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Путание исполняемого кода и конфигурационного файла - старая болезнь разработчиков Unix,
    > хотя этот принцип прямо противоречит модульной концепции разработки, исповедуемой в этом
    > семействе ОС.

    В результате и получаем справедливые насмешки: "Unix - это не куча костылей и подпорок, Unix - это тщательно продуманная система костылей и подпорок!"

     
     
  • 5.63, анонимус с опеннета (?), 22:05, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    1 Скрипты и конфигурационные файлы не путаются , а каждый выполняет свою задач... большой текст свёрнут, показать
     
     
  • 6.69, анон (?), 23:48, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > 2. Параллельное наличие и скриптов, и конфигов в полной мере соответствует модульной
    > концепции. Есть кошерное дистрибутивное решение - правим конфиги. Нет (случается и
    > такое) - приходится править скрипты.

    Почему же ещё никто не переписал на скриптах тот же apache?

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

    Именно по таким принципам строится systemd.

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

     
     
  • 7.70, анон (?), 23:51, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Когда людям нужно расширение функциональности бинарной программы, они пользуются механизмом плагинов.

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

    Например, исполнение некой команды в /etc/rc.local. У юзера Васи там прописан запуск сервера counter-strike, а у юзера Пети, например, смена мак-адреса (ну не осилил он штатные средства дистрибутива).

     
     
  • 8.81, kshetragia (ok), 06:52, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Это проблемы Васи Почему я как разработчик должен учитывать таких дол ов Г... текст свёрнут, показать
     
     
  • 9.85, Petja_s_upravdoma (ok), 08:31, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Праильна, лучше ходить под себя чем в отхожее место ... текст свёрнут, показать
     
     
  • 10.92, kshetragia (ok), 12:40, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Скажите, а по улице вы тоже с горшком ходите для страждущих Или все-таки указыв... текст свёрнут, показать
     
     
  • 11.115, mr_gfd (?), 01:18, 23/11/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Видел я конторы таких разработчиков На 4 этажа - 1 отхожее место, 2 писсуара и ... текст свёрнут, показать
     
     
  • 12.117, kshetragia (ok), 10:35, 23/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Хм в Линуксе уже появились архитекторы ... текст свёрнут, показать
     
  • 9.89, анон (?), 11:48, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    От созерцания долго и неторопливо грузящейся системы мои волосы становятся жестк... текст свёрнут, показать
     
     
  • 10.91, kshetragia (ok), 12:36, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ох тельно Зачем приписывать мне то, чего я не говорил ... текст свёрнут, показать
     
     
  • 11.96, non anon (?), 14:20, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Какая разница, что кричит неадекват ... текст свёрнут, показать
     
  • 10.93, kshetragia (ok), 12:43, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Уже обсасывали эту тему как ни странно на лоре иногда бывают адекватные люди О... текст свёрнут, показать
     
     
  • 11.95, non anon (?), 14:19, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Убунта с апстартом и дашем грузится так мучительно медленно, что любой кофе пять... текст свёрнут, показать
     
  • 4.18, zerot (ok), 15:39, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    очередной иудо - христианин с можно и нельзя Захочется - будем использовать ми... большой текст свёрнут, показать
     
     
  • 5.22, анон (?), 15:49, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Идейный противник молотков И правда, сибирский админ, отвергающий конфиги и нас... большой текст свёрнут, показать
     
     
  • 6.24, zerot (ok), 16:19, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    сторонник принятия адекватных решений попутали, про компилятор писал не я Впроч... большой текст свёрнут, показать
     
     
  • 7.59, reminux (ok), 15:11, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вы в курсе, что у дистрибутивов redhat-ветки в /etc/sysconfig есть конфиги для многих init-скриптов, специально для того, чтобы не надо было руками в эти init-скрипты лезть?
     
     
  • 8.66, zerot (ok), 22:50, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    не сомневайтесь Даже знаю где лежат маны по этой надстройке, ибо регулярно забы... текст свёрнут, показать
     
     
  • 9.72, анон (?), 23:53, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ага Полный список файлов из etc sysconfig с припиской Эти файлы НЕ РЕДАКТИРОВ... текст свёрнут, показать
     
  • 7.76, анон (?), 00:19, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    По-моему, с ваших адекватных решений все местные читатели уже под стол сползли ... большой текст свёрнут, показать
     
     
  • 8.82, zerot (ok), 07:35, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    отметим, что у скриптов тоже могут быть конфиги, странно, что вы до этого не дод... текст свёрнут, показать
     
     
  • 9.101, non anon (?), 14:39, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Судя по вашим репликам выше, вы должны рассматривать такой подход как порочный ... текст свёрнут, показать
     
  • 4.40, Пользователь Debian (?), 03:36, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    В дебиане не затрутся. Перейдите на нормальный дистрибутив и всё будет хорошо.
     
     
  • 5.73, анон (?), 23:55, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > В дебиане не затрутся. Перейдите на нормальный дистрибутив и всё будет хорошо.

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

    Все остальные файлы, включая init-скрипты, большинство пакетных менеджеров перезаписывает без вопросов.

     
     
  • 6.80, Аноним (-), 01:40, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > init-скрипты, большинство пакетных менеджеров перезаписывает без вопросов.

    В дебиане не перезаписывает.

     
     
  • 7.103, non anon (?), 14:50, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > В дебиане не перезаписывает.

    Во-во

    dpkg: не удалось обработать параметр /var/cache/apt/archives/ia32-libs_20101117_amd64.deb (--unpack):
    попытка перезаписать /usr/lib32/libcurl.so.4.2.0, который уже имеется в пакете ia32-libs-workaround-499043 0.0.1+squeeze1
    configured to not write apport reports
                                          dpkg-deb: подпроцесс вставка завершён по сигналу (Обрыв канала)
    При обработке следующих пакетов произошли ошибки:
    /var/cache/apt/archives/ia32-libs_20101117_amd64.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    Поубивал бы за такие пакетные менеджеры.

     
     
  • 8.124, Олег (??), 21:15, 25/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Наткнулся на ту же ошибку при обновлении Лечению поддается ... текст свёрнут, показать
     
     
  • 9.127, non anon (?), 16:34, 26/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    dpkg -r ia32-libs-workaround-499043 apt-get -f install Флеш на amd64 продолжа... текст свёрнут, показать
     
  • 4.47, XoRe (ok), 10:51, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Если у вас нормальный дистрибутив, то, как бы вы ни правили ваши
    > скрипты, при следующем обновлении они всё равно заменятся на дефолтные, и
    > ваша система начнёт вести себя совсем по-другому.

    Иногда нужно не править, а посмотреть.
    Лично у меня привычка делать "ps ax | grep <name>" после "/etc/init.d/<name> restart" иногда оказывалась очень полезной.
    Чтобы понять, почему процесс не стартует, нужно знать, как он вызывается.
    Тут хорошо помогает добавить "-x" в первую строчку скрипта (#!/bin/sh).
    И то - может понадобиться ещё покопаться, чтобы найти строчку запуска.
    И только тогда вы увидите искомое сообщение об ошибке.
    А с бинарными скриптами остается только надеяться и верить)

     
  • 4.71, ZloySergant (ok), 23:52, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >> скрипты это большой плюс, если вы хотите иметь контроль над системой
    > Вы - пользователь LFS? Никто, кроме LFS'ников, не имеет морального права так
    > говорить.
    > Если у вас нормальный дистрибутив, то, как бы вы ни правили ваши
    > скрипты, при следующем обновлении они всё равно заменятся на дефолтные, и
    > ваша система начнёт вести себя совсем по-другому.

    Ты, Зин, на грубость нарываисси. Все, Зин, обидеть норовишь  

    Многие пакетные менеджеры позволяют не переписывать файлы в каталогах,
    а  оставлять   бэкап;  диффы   показывают,  спрашивая  что   делать  с
    изменениями.  К примеру,  slackpkg. В  данном случае  все  упирается в
    используемый инструмент, а не дистрибутив.

     
     
  • 5.78, анон (?), 00:29, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Многие пакетные менеджеры позволяют не переписывать файлы в каталогах,

    а  оставлять   бэкап;  диффы   показывают,  спрашивая  что   делать  с
    изменениями.  К примеру,  slackpkg. В  данном случае  все  упирается в
    используемый инструмент, а не дистрибутив.

    Вы думаете, это касается всех файлов в пакете, включая исполняемый код, а не только конфигов?

    Интересно было бы посмотреть, как ваш slackpkg показыват diff бинарника :-)

     
     
  • 6.79, ZloySergant (ok), 01:25, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Вы думаете, это касается всех файлов в пакете, включая исполняемый код, а
    > не только конфигов?

    Можно и так. Благо, скрипты *pkg позволяют такой функционал реализовать. При желании, можно и аналог blacklist'a для отдельных файлов привинтить.


    > Интересно было бы посмотреть, как ваш slackpkg показыват diff бинарника :-)

    Молча :)

     
  • 4.87, reinhard (ok), 11:35, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Поттеринг предлагает совершенно другой путь - вместо ковыряния в потрохах скриптов, использовать продуманные программы с гибкими настройками на все случаи жизни.

    Т.е. как в Windows™?
    Умный Баллмер^WПоттеринг лучше знает, что нужно пользователю.

     
     
  • 5.97, non anon (?), 14:29, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Т.е. как в Windows™?

    Как в Windows™ - это сейчас. Собрались в одном месте толпа индусов и грузовик портвейна, накодили такого, что внутрь глянуть страшно и стыдно, а толпа хомячков подвывает "Rulezzz!".

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

     
     
  • 6.98, develop7 (ok), 14:34, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>Т.е. как в Windows™?
    > Как в Windows™ - это сейчас. Собрались в одном месте толпа индусов и грузовик портвейна, накодили такого, что внутрь глянуть страшно и стыдно, а толпа хомячков подвывает "Rulezzz!".

    полуграмотных хомячков. А в остальном — всё так.

     
  • 6.107, reinhard (ok), 16:58, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    В Windows™ загрузка организована шелл-скриптами?
    Я что-то пропустил?
    Мне всегда казалось, что там некий бинарный менеджер служб.

    Насчет прозрачности: что может быть прозрачней, чем Шелл-скрипты? А вот будет ли systemd прозрачным? Мне сомнительно.

     
     
  • 7.111, develop7 (ok), 17:09, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > В Windows™ загрузка организована шелл-скриптами? Я что-то пропустил?
    > Мне всегда казалось, что там некий бинарный менеджер служб.

    В общем, да — имена служб, «что запускать» и зависимости хранятся в реестре в условно читабельном виде.

    > Насчет прозрачности: что может быть прозрачней, чем Шелл-скрипты? А вот будет ли systemd прозрачным? Мне сомнительно.

    Шеллскрипт ещё нужно разобрать. А вот чтобы почитать systemd --dump, не нужно вообще никаких навыков. Ну может немного знать устройство ОС, но это же не проблема, не так ли?

     
  • 5.100, develop7 (ok), 14:38, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >> Поттеринг предлагает совершенно другой путь - вместо ковыряния в потрохах скриптов, использовать продуманные программы с гибкими настройками на все случаи жизни.
    > Умный Баллмер^WПоттеринг лучше знает, что нужно пользователю.

    Вот именно — пользователю, а не полуграмотному быдлану с админозом головного мозга (взять всё и поделить^W пирисабрать из исходнекаф!11), ниасилившему хотя бы два языка программирования и хотя бы один менеджер пакетов.

     
     
  • 6.102, non anon (?), 14:48, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Вообще, использование скриптов в качестве ключевых компонентов софта очень сильно провоцирует администратора на неправильные решения.

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

     
     
  • 7.108, reinhard (ok), 17:00, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Как минимум скрипты полезны для изучения того, как оно на самом деле запускается. Корежить скрипты - крайняя мера, я сам этого не люблю, но иногда это оправдано.
     
     
  • 8.109, develop7 (ok), 17:05, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Что мешает качнуть пакетным менеджером исходники и обсмотреться, как оно там раб... текст свёрнут, показать
     
     
  • 9.114, reinhard (ok), 18:00, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Как правило, код на Shell на порядок проще для понимания, чем на С С , все-таки... текст свёрнут, показать
     
     
  • 10.118, develop7 (ok), 11:12, 23/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Для 171 скриптов на C 187 можно и DSL на хорошо документированных макросах п... текст свёрнут, показать
     
  • 8.110, develop7 (ok), 17:06, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Я имею в виду в случае с systemd придётся поступать так ... текст свёрнут, показать
     
  • 2.13, анон (?), 15:06, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >И без компилятора (который не ставится обычно на production машинах) ничего не поменяешь, я так понимаю.

    Суровые сибирские админы не пользуются конфигами - они правят дефолтные настройки прямо в коде!

     
     
  • 3.15, анон (?), 15:33, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    А ещё они не признают пакетных менеждеров и локальных репозитариев, и всегда вручную грузят сорцы и патчат их с последующим make && make install на каждом из 100 рабочих серверов.

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

     
     
  • 4.48, XoRe (ok), 10:54, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > А ещё они не признают пакетных менеждеров и локальных репозитариев, и всегда
    > вручную грузят сорцы и патчат их с последующим make && make
    > install на каждом из 100 рабочих серверов.
    > Поэтому, когда суровый сибирский админ обновляет конфигурацию apache, сайт проекта лежит
    > полдня - ведь сорцы нужно скачать на каждый сервак!

    /etc/init.d/apache stop
    echo "сегодня обнвляем веб сервер!" | mail -s "уведомление" office@company.ru
    wget http://httpd.apache.org/сырцы
    ...

    Так, что ли? =)
    Вы в курсе, что для того, чтобы сделать make даже админские права не нужны?

     
  • 2.25, segoon (ok), 16:21, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я уверен, что всегда останется fallback-механизм с поддержкой legacy скриптов.  Иначе будет сложно загнать какой-нибудь маленький самописный демон watcher/wrapper в систему сервисов.
     
     
  • 3.75, анон (?), 00:10, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Я уверен, что всегда останется fallback-механизм с поддержкой legacy скриптов

    И он там есть.

    По сути, service unit - это просто запуск некой программы/команды + некоторые дополнительные возможности. Например, можно уже не париться с ручным отслеживаением lock-файла (создавать его при запуске, удалять при установке, проверять при запросе статуса) - этим займётся systemd. Аналогично, можно поручить ему проверку наличия конфига службы (нет конфига - зачем тогда её запускать?), выжидание паузы перед запуском, сохранение PID-файла, помещение программы в chroot, сброс привилегий и т.п.

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

    А в оставшемся 1% случаев можно воспользоваться, например, штатными хуками ExecStartPre, ExecStartPost, ExecStop, ExecStopPost, ExecReload, засунув в них нужные команды или скрипты.

     

  • 1.3, dalco (ok), 14:23, 20/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Блин, пролетаю... У меня где RAID, где LVM, где LVM поверх RAIDа :)
     
     
  • 2.11, анон (?), 15:02, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Блин, пролетаю... У меня где RAID, где LVM, где LVM поверх RAIDа
    > :)

    Думаю, к выпуску F15 уж это-то точно сделают. Работы там очень немного.

     

  • 1.16, Аноним (-), 15:36, 20/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Мда Не могу не вспомнить http catb org esr writings unix-koans ten-thousand h... большой текст свёрнут, показать
     
     
  • 2.17, анон (?), 15:39, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Давайте придумаем, например, новый язык для системных скриптов, который отвечал бы
    > современным требованиям, и решим проблему в корне.

    Уже придумали. C называется. На нем написаны такие важные "системные скрипты", как, например, ядро ;-)

     
     
  • 3.20, Аноним (-), 15:44, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Напиши на C, пожалуйста, эквивалент curl "http://en.wikipedia.org/wiki/Pipeline_(Unix)" | \
    sed 's/[^a-zA-Z ]/ /g' | \
    tr 'A-Z ' 'a-z\n' | \
    grep '[a-z]' | \
    sort -u | \
    less
     
     
  • 4.23, анон (?), 15:52, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Напиши на C, пожалуйста, эквивалент

    Только после того, как вы объясните, зачем эти действия нужны при загрузке системы :-)

     
     
  • 5.50, XoRe (ok), 11:02, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Напиши на C, пожалуйста, эквивалент
    > Только после того, как вы объясните, зачем эти действия нужны при загрузке
    > системы :-)

    Ближе к телу - попробуйте переписать на С скрипт /etc/init.d/rc

     
     
  • 6.74, анон (?), 23:57, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Ближе к телу - попробуйте переписать на С скрипт /etc/init.d/rc

    Герр Поттеринг как раз это и сделал (добавив плюшек от себя) :-)

     
  • 2.19, анон (?), 15:43, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Потом, скрипты - это прежде всего прозрачность и низкий порог вхождения. Когда
    > любой админ может туда заглянуть, найти ошибку и запостить патч в
    > багзилу. А тут вместо прозрачного скрипта будет чёрный ящик, в который
    > никто не полезет.

    Я вообще не понимаю, что вы делаете на современных осях, где и ядро (полностью), и окружение (почти полностью) являются бинарными?

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

     
     
  • 3.51, XoRe (ok), 11:05, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Я вообще не понимаю, что вы делаете на современных осях, где и
    > ядро (полностью), и окружение (почти полностью) являются бинарными?

    Не путайте выполнение и контролирование.
    То же бинарное ядро и бинарное окружение пишут логи в текстовом виде.
    Для чего?
    Чтобы было удобнее контролировать (проверять работу и искать причину отказов.
    Вы же не хотите, чтобы файлы в /var/log были в бинарном виде?

     
  • 3.57, zerot (ok), 13:41, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/

    > Я вообще не понимаю, что вы делаете на современных осях, где и
    > ядро (полностью), и окружение (почти полностью) являются бинарными?

    патаму шта мир сложная весчь. Современная ось - сложная система, в которой есть разные решения для разных задач. Что по пишется на Сях или Асме, что то на скриптах, ибо адекватнее. А дальше вопрос привычек, у меня например с 2002 года на работе, дома и т.п. стоит Юникс. Ставился он изначально волевым решением - чтобы разбираться, и переходить на парадигмы форточек и использование оных я согласен только при обоснованной необходимости под конкретные задачи, ибо глюкавое поделие
    -
    Так что скрипты на своём месте, а дальше время покажет, главное не вестись на истерию, пусть пена бурлит в стороне

     
  • 2.21, gaga (?), 15:45, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Давайте придумаем, например, новый язык для системных скриптов, который отвечал бы современным требованиям, и решим проблему в корне.

    Это полумера, я считаю. Давайте сразу придумаем свой компьютер и свою ОС, которые будут отвечать современным требованиям, и решим проблему в корне.

     
  • 2.37, develop7 (ok), 22:31, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > А тут вместо прозрачного скрипта будет чёрный ящик, в который никто не полезет.

    Полезут. Только лазать будут вменяемые люди с опытом разработки ПО, а не носители админоза головного мозга.

     

  • 1.26, pavlinux (ok), 17:06, 20/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Надо сделать ассистента ядра, в виде модуля, который есть нечто иное как конфиг системы.

    Например сетевушки

    char const *eth_names[] = {"eth0", "eth1", "ppp0",...};

    struct eth_attr {

             char *name;
             int  negotation;
             int  speed;
             uint  mac;
             char *ip;
             char *mask;
             ....  
    }

    и махонький компилер - kcc (kernel c compiler), там же будут одни константы.

    А уже сам девайсы, при init_module() будут обращаться к этим структурам
    и константам, даже не константам, а просто глобальным переменным.

    Кстати, хороший пример GRUB 2

     
     
  • 2.29, Аноним (-), 17:44, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • –3 +/
    А вот несколько другой путь:
    http://www.calculate-linux.ru/main/ru/templates#%D0%A4%D0%;BE%D1%80%D0%BC%D0%B0%D1%82-CXmlConf
     
     
  • 3.33, User294 (ok), 18:00, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > А вот несколько другой путь:
    > http://www.calculate-linux.ru/main/ru/templates#%D0%A4%D0%;BE%D1%80%D0%BC%D0%B0%D1%82-CXmlConf

    Конфиги в XMLнике? Спасибо, но имхо лучше уж тогда сишный код править :)


     
  • 3.52, XoRe (ok), 11:06, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > А вот несколько другой путь:
    > http://www.calculate-linux.ru/main/ru/templates#%D0%A4%D0%;BE%D1%80%D0%BC%D0%B0%D1%82-CXmlConf

    Microsoft пошла по этому пути)

     
  • 2.83, www2 (ok), 08:22, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Вы это серьёзно? Нет, в самом деле? Я так понимаю, что настоящий юникс умер вместе с настоящими юниксоидами. Это же надо додуматься - компилятор для конфигов! И пример с GRUB 2 - плохой.
     
     
  • 3.105, pavlinux (ok), 14:56, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Это же надо додуматься - компилятор для конфигов!

    А реестр в венде это ни одно и тоже? :)

    Собственно можно обойтись и GCC, но уже слышу толпы возмущённых юзеров,
    "- нафига нам компилятор для работы!!!", по этому и написал - отдельная утиль!

    * GUI-морда, systgui[qsystgui, gsystgui, ksystgui, xsystgui] - для конфигурации.
      Кнопка [ Save ], при нажатии на которую и запускается "компилятор конфигов",
      более того, этот компилятор переименуют в systmake, чтоб не пугались.        

     

  • 1.28, cmp (??), 17:33, 20/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С одной стороны - зоопарк из кучи инициализационных скриптов давно пора ликвидир... большой текст свёрнут, показать
     
     
  • 2.31, Вирус (?), 17:55, 20/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Грядет очередной зоопарк как и с upstart, где часть скриптов в /etc/init , а та часть , которую не допилили/забили лежит в /etc/init.d
     
  • 2.42, Etch (?), 07:23, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Не переживайте, постепенно все скрипты перепишут. Когда всё устаканится, станет окончательно понятно какая из систем инициализации наиболее полно соответствует всем требованиям современного мира, тогда и все скрипты под неё перепишут.
     
  • 2.53, XoRe (ok), 11:13, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > С одной стороны - зоопарк из кучи инициализационных скриптов давно пора ликвидировать,
    > меняющийся их функционал от дистрибутива к дистрибутиву в купе с дружественностью
    > отдельных проектов к отдельным дистрибутивам же, как и попытки некоторых проектов
    > включить в себя код обслуживающий процессы делает практически невозможным создание системы
    > удовлетворяющей требованиям - простоты, скорости, функциональности и гибкости.
    > Если ни одна из существующих систем не подходит, логично предположить появление еще
    > одной - рассчитанной на удовлетворение исходным критериям. Однако, стоит задуматься,

    Вопрос "на подумать": "не подходит" кому?
    Операционкам, или пользователям?
    Операционки с этих "неудобных" скриптов уже десятки лет стартуют.
    Им хватает и функциональности, и гибкости.
    А то, что для пользователей это "некрасивая реализация" - это другой вопрос.
    К вопросу "работает/не работает" он не относится.

     
  • 2.54, Аноним (-), 11:28, 21/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    > которого некоторые дистрибутивы успели отказаться, а что-то другое, что позволит изголяться
    > над системой как угодно на радость красноглазикам, писать сценарии загрузки для
    > корпоративных клиентов и тд, В линуксе уже есть рабочие аналоги подобных
    > решений, в частности sysfs; удобная, функциональная и легковесная,.. Если уж речь
    > идет об управлении процессами, то заниматься этим должен некоторый процесс, соответственно
    > демон, dbus сомнительная кандидатура, хотя бы потому, что на пару с
    > hald был отвергнут.
    > И смотреть тут надо на так нелюбимую некоторыми винду и ее системами
    > управления процессами, устройствами и событиями.
    > Короче говоря в нынешнем виде этот systemd костыль не меньший чем скрипты,

    Какой дивный поток сознания!

     
  • 2.77, анон (?), 00:22, 22/11/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Если уж речь идет об управлении процессами, то заниматься этим должен некоторый процесс, соответственно демон, dbus сомнительная кандидатура, хотя бы потому, что на пару с hald был отвергнут. И смотреть тут надо на так нелюбимую некоторыми винду и ее системами
    > управления процессами, устройствами и событиями.

    Вы не поверите, но systemd как раз и есть такой демон.

    Но, судя по тому, что вы путаете функции dbus, hald и sysfs, вы все-таки не поверите :'(

     

  • 1.49, DFX (ok), 10:56, 21/11/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    при первом отчёте это сильно выглядело как ещё одна поделка аля upstart, но тут уже впечатляет. надеюсь обороты авторы не сбавят. одолел этот беспорядок в init'е. такие простые, казалось бы, вещи, как нормальное укакошивание пользовательских процессов до отмонтирования и гарантия отмонтирования без затыков вообще (особенно в системах с кучей loop'ов и bind'ов) до сих нигде, вроде, и не сделали.

    PS: "Если уж речь идет об управлении процессами, то заниматься этим должен некоторый процесс, соответственно демон, dbus сомнительная кандидатура, хотя бы потому, что на пару с hald был отвергнут.
    И смотреть тут надо на так нелюбимую некоторыми винду и ее системами управления процессами, устройствами и событиями." <-- автор, ты с ума рехнулся ? это в винде-то управление устройствами и отправка событий пример для GNU/Linux'ов ?
    и кто это и где "отверг" dbus ? udev и dbus сейчас основные инструменты отлавливания и пересылки событий у freedesktop (читай: Гном и КДЕ) :\ systemd вообще вокруг dbus построен.
    и от hald не "некоторые дистрибтивы успели отказаться", а разработчики X выпилили его из xorg-server, заменив hal-config на udev-config... он больше нигде и не нужен. все, кто его ещё не выпилил - выпилят.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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