Переход Ubuntu на Systemd

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

fflatx писал(а):
02.03.2014 00:28
Самый простой вариант - когда информация хранится в текстовом формате изначально. Любой другой вариант предполагает дополнительную операцию: преобразование бинарного формата в текстовый, то есть как минимум не проще, чем вариант с текстом.

Верно, не проще. Но простота не единственный критерий. Выбранный формат хранения журнала даёт большую гибкость, ибо позволяет, во-первых, сохранять больше информации о событии, чем в традиционном текстовом формате, а во-вторых, позволяет преобразовывать не только в классический текстовый формат syslog, но и, например, в JSON, что упрощает автоматическую обработку.
fflatx писал(а):
02.03.2014 00:28
В случае текстового формата нет никаких проблем - текстовый файл лога и любой текстовый редактор, или даже cat+grep. В случае бинарного формата systemd... Как посмотреть? Даже будь на Live-диске systemd, он умеет открывать логи из другой системы? Я не знаю. А вы знаете? А если на live-диске нету systemd? Всё, приплыли?
А вот текстовый формат можно прочитать всегда, подойдет хоть cat, хоть редактор (практически любой), хоть grep.

Как я уже писал, я согласен, что текстовый формат более универсален, ибо его можно читать непосредственно, а для журнала требуется утилита для преобразования. С другой стороны, обработка и фильтрация текстового файла порой затруднительна, ибо он слабо структурирован.
journalctl из состава systemd умеет открывать журнал из другой системы (см. опцию -D). Если на диске нет systemd - поставьте :).
fflatx писал(а):
02.03.2014 00:58
Леннарт в статье пишет, что не всякий скрипт можно превратить в сервис-файл.

Можно точную цитату? Я нашёл лишь:
Конечно, отнюдь не все init-скрипты так же легко преобразовать в service-файлы.
Но, к счастью, «проблемных» скриптов не так уж и много.
- но здесь идёт речь не о невозможности преобразования некоторого init-скрипта, а лишь о сложности этой задачи для некоторых скриптов в сравнении с большинством.
fflatx писал(а):
02.03.2014 00:58
И не все программы готовы для работы с systemd.

Не все программы используют предлагаемые systemd функции типа сокет-активации, но они не являются необходимыми. Типы сервисов (man systemd.service, директива Type) на мой взгляд исчерпывающие. Поэтому прошу привести примеры сервисов, не работающих с systemd, или точную цитату, подтверждающую ваши слова.
fflatx писал(а):
02.03.2014 00:58
Новое решение нужно тогда, когда старое перестаёт работать.

А может, новое решение нужно тогда, когда старое перестаёт устраивать?
fflatx писал(а):
02.03.2014 00:58
А системные чем хуже?

Для системных, не предназначенных для взаимодействия с пользователем, требование разбиения на мелкие компоненты для простоты их комбинирования для взаимодействия через текстовые потоки не является необходимым, ибо их просто некому комбинировать.
fflatx писал(а):
02.03.2014 00:58
Принципы для того и нужны, чтобы им следовать. И выработаны они, исходя из практических соображений. То есть для них имеются основания. В этом отличие принципов от догмы и всяких священных коров.

Верно. Однако не стоит считать, что все компоненты должны подчиняться данным принципам, ибо к ним могут быть не применимы данные практические соображения (см. выше), а их архитектура исходит из иных, более подходящих практических соображений.
fflatx писал(а):
02.03.2014 00:58
Ой, только не говорите мне, что "разные утилиты (systemctl, journalctl, timedatectl и так далее)" - это проще, чем cat+grep.

Я затрудняюсь сравнивать утилиты, выполняющие совершенно разные функции.
fflatx писал(а):
02.03.2014 00:58
"Управляет сервисами" - это целый комплекс задач.
Эдак можно и про Windows сказать, что она соответствует unix-принципам: Windows делает одну вещь: управляет ЭВМ.

Вы прям открыли мне глаза :dry: . А теперь вернитесь к моему сообщению и прочитайте его, включая два последних абзаца.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5403
ОС: Gentoo

Re: Переход Ubuntu на Systemd

Сообщение /dev/random »

drBatty писал(а):
02.03.2014 09:44
скорее проблема dpkg(как и systemd) не в том, что он ещё и удаляет, а в другом: кроме своей основной задачи, скажем "поставить dolphin", dpkg ставит ещё и всё KDE, и мало того — удаляет какой-то другой DE, который конфликтует с данной версией KDE.

Вообще-то, dpkg этого не делает. Разрешение зависимостей и конфликтов - не его задача, а обёрток вокруг него, вроде apt-get и aptitude.
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

den_beckett писал(а):
02.03.2014 05:05
Огласите весь список, пожалуйста!

См. выше, а также https://docs.google.com/document/pub?id=1IC...FxgjLUEHIX3MSTs.
den_beckett писал(а):
02.03.2014 05:05
Как мне установить systemd без journal? Что, нельзя? И в каком месте он тогда "отдельный"?

"Как мне установить coreutils без head? Что, нельзя? И в каком месте они тогда отдельные?"
Не путайте единицу исполнения с единицей дистрибуции.
den_beckett писал(а):
02.03.2014 05:05
Что размытого в "не усложняй", "используй вывод одной утилиты на входе другой", "храни вывод в текстовом формате"?

Я о "Пишите программы, которые делают что-то одно и делают это хорошо."
den_beckett писал(а):
02.03.2014 05:05
ИМХО, они ничуть не более размыты, чем "не убий", "не укради", что не мешает, впрочем, всяким иезуитам толковать их ну очень отлично от первоначального значения, вложенного аффтаром.

Вам, наверное, "аффтар" лично рассказал о значении, которое он в них вкладывал, и теперь вы несёте истинную веру людям, имеющим наглость иметь собственное мнение по этому вопросу.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Переход Ubuntu на Systemd

Сообщение drBatty »

/dev/random
drBatty писал(а):
02.03.2014 09:44
не нужно сейчас вдаваться в детали, я говорю о принципе, задача "поставить dolphin" -- это одна задача, а "сменить DE" — совсем другая. И если "поставить dolphin" невозможно сделать с текущим DE, то dpkg так и должен написать "невозможно".

это был ответ на данный пассаж:
Rootlexx писал(а):
01.03.2014 19:02
Последнее, конечно, несколько провокационно, но иначе и быть не могло: классические принципы UNIX сформулированы настолько размыто, что каждый понимает их по-своему. Например, пользователи Slackware наверняка скажут, что dpkg нарушает принципы UNIX, ибо не только устанавливает, но и удаляет пакеты, а значит, делает больше одной вещи. С другой стороны, можно сказать, что dpkg делает одну вещь: управляет пакетами, а принципы UNIX заключаются в том, что в нём нет текстового редактора. Но даже если бы был, можно было бы сказать, что dpkg занимается обработкой данных, и опять признать его соответствующим принципам UNIX.

вот я и пытался сказать, что ПМ в debian'е если и противоречит принципам unix way, то совершенно по другой причине. Ежу должно быть ясно, что пакетный менеджер должен не только ставить, но и удалять пакеты. И не только ежу, но даже "пользователю Slackware" это ясно. Намёк явно на меня был, вот и отвечаю, в чём именно не юниксвейность дебиановского ПМа.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

drBatty писал(а):
02.03.2014 09:51
Посмотреть администратору лог своей системы очень просто. Посмотреть злоумышленнику — невозможно. QR code как раз и нужен для того, что-бы отличить локального администратора(который может его сфоткать) от врага.

Как я понял Леннарта -- это так работает. Поправьте, в чём я не прав.

Ключи нужны лишь для верификации записей журнала, а не для их просмотра.
drBatty писал(а):
02.03.2014 11:21
Лично мне тут непонятно, зачем вообще ключи для расшифрования хранить на ЭТОМ сервере?

Ключ верификации, естественно, отделён от ключа отпечатков. Он генерируется командой journalctl --setup-keys и хранится отдельно. QR-код используется для переноса ключа верификации на мобильный телефон, если администратору так удобнее, но он может и записать его на бумажке или просто запомнить.
Изображение
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Переход Ubuntu на Systemd

Сообщение drBatty »

Rootlexx писал(а):
02.03.2014 18:30
Ключи нужны лишь для верификации записей журнала, а не для их просмотра.

т.е. я могу в Slackware Linux смотреть чужой журнал, который я записал на флешку с Fedora?

могу-ли я проверить его ЭЦП?

Rootlexx писал(а):
02.03.2014 18:30
Ключ верификации, естественно, отделён от ключа отпечатков. Он генерируется командой journalctl --setup-keys и хранится отдельно. QR-код используется для переноса ключа верификации на мобильный телефон, если администратору так удобнее, но он может и записать его на бумажке или просто запомнить.

ну про "запомнить" вы несмешно пошутили. Остальное я знаю.

Но я так и не понял: вы как-то подозрительно "забываете" о самом простом способе: скопировать ключ как файл.

Rootlexx писал(а):
02.03.2014 18:18
Как мне установить coreutils без head? Что, нельзя? И в каком месте они тогда отдельные?

в исходниках. Там сотрите свою head, раз она вам так не нравится. Я не знаю как вы, но я и без неё обойдусь.

Head не является сильно критичным и незаменимым компонентом, некоторые скрипты конечно сломаются, но их несложно будет починить. Это Linux.

С systemd ситуация иная. Это не Linux.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

drBatty писал(а):
02.03.2014 18:52
т.е. я могу в Slackware Linux смотреть чужой журнал, который я записал на флешку с Fedora?

Да.
drBatty писал(а):
02.03.2014 18:52
могу-ли я проверить его ЭЦП?

Если у вас есть соответствующий ключ верификации, то да.
drBatty писал(а):
02.03.2014 18:52
Но я так и не понял: вы как-то подозрительно "забываете" о самом простом способе: скопировать ключ как файл.

Да какая разница? Можно сохранить ключ верификации на любом надёжном недоступном для чужих глаз носителе.
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: Переход Ubuntu на Systemd

Сообщение Hephaestus »

Rootlexx писал(а):
02.03.2014 17:59
Верно, не проще. Но простота не единственный критерий.
Не увлекайтесь, я говорил лишь о принципе KISS. В данном контексте простота - главный критерий.

Rootlexx писал(а):
02.03.2014 17:59
Как я уже писал, я согласен, что текстовый формат более универсален, ибо его можно читать непосредственно, а для журнала требуется утилита для преобразования. С другой стороны, обработка и фильтрация текстового файла порой затруднительна, ибо он слабо структурирован.
Не забывайте, мы говорим о логах, а не о любых текстовых файлах. Что там в логах такого нашлось, что затрудняет фильтрацию и из-за чего нужно городить бинарные форматы? Мне такие логи не попадались.

Rootlexx писал(а):
02.03.2014 17:59
journalctl из состава systemd умеет открывать журнал из другой системы (см. опцию -D).
И то хлеб.

Rootlexx писал(а):
02.03.2014 17:59
Можно точную цитату? Я нашёл лишь:
Rootlexx писал(а):
02.03.2014 17:59
- но здесь идёт речь не о невозможности преобразования некоторого init-скрипта, а лишь о сложности этой задачи для некоторых скриптов в сравнении с большинством.
Степень сложности не оговаривается. Это значит, что в принципе может существовать скрипт, который не удастся превратить в сервис-файл без потери функциональности.
Поскольку скрипты могут содержать любой код, такое вполне реально.

Rootlexx писал(а):
02.03.2014 17:59
Не все программы используют предлагаемые systemd функции типа сокет-активации, но они не являются необходимыми. Типы сервисов (man systemd.service, директива Type) на мой взгляд исчерпывающие. Поэтому прошу привести примеры сервисов, не работающих с systemd, или точную цитату, подтверждающую ваши слова.
Точную цитату не дам, это общее впечатление от прочитанного.
Например, та же ситуация с демонизацией торрент-клиента. Изначально программа не является демоном.
shell-скрипт позволяет устроить запуск программы, как демона.
Реализовать такое в systemd - отдельная задача. Которая, вроде бы решаема - на первый взгляд.
Но как будет работать - неизвестно. И таких программ может быть больше одной. У меня, например, wget одно время работал в похожем режиме.
Поэтому просто поставить пакет - это ещё не вся миграция.
Тот факт, что systemd не обязан нянчиться с "не демонами" - не аргумент, ибо средствами скриптов это решалось без проблем.
Оставлять же для таких программ старую схему с расчетом на совместимость со стороны systemd - это вообще смешно. То есть получается, раньше у меня была одна схема инициализации (которая работала, чёрт побери!), а теперь я должен у себя держать две схемы - и старую, и новую. Ведь фирменные инструменты systemd будут неприменимы к программам загружаемым по старой схеме, так?
А на фига мне тогда systemd?
Если старая схема всё равно у меня останется, я и без systemd прекрасно обойдусь.
То есть мне придётся держать у себя гибрид из двух систем, и мне ещё пытаются объяснять, что так проще и удобнее. Бред.

Rootlexx писал(а):
02.03.2014 17:59
А может, новое решение нужно тогда, когда старое перестаёт устраивать?
Не ощущаю принципиальной разницы. Перестаёт устраивать, значит появились задачи, которые в рамках решения не выполняются.
Вопрос: какие новые задачи появились у системы инициализации, которые невозможно выполнить в рамках старой схемы?

Rootlexx писал(а):
02.03.2014 17:59
Я затрудняюсь сравнивать утилиты, выполняющие совершенно разные функции.
Это и не требуется.
Раньше мне для работы с логами хватало cat+grep, ну ещё awk иногда. И эти инструменты работали всегда и безотказно.
Сейчас же мне предлагают "разные утилиты (systemctl, journalctl, timedatectl и так далее)". Особенно "и так далее" мне нравится, то есть я даже не знаю, сколько их, этих утилит.
При этом использование cat+grep+awk никто не отменял.
То есть к моим трём с половиной утилитам добавляется ещё десяток, которые, кстати, надо осваивать, при том, что задачи мои не изменились. И мне это ещё пытаются представить, как более простое решение. Самим-то не смешно?

Rootlexx писал(а):
02.03.2014 17:59
А теперь вернитесь к моему сообщению и прочитайте его, включая два последних абзаца.
Напомню Вам фразу, на которую я отвечал
Rootlexx писал(а):
01.03.2014 19:02
systemd делает одну вещь: управляет сервисами

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

Кроме того, systemctl и journalctl явно содержат дублирующие функции (как минимум: форматирование вывода).

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

Да, я прекрасно знаю, что многие утилиты не вполне соответствуют принципам unix.
Но зачем ориентироваться на такие программы? Тем более городить в результате ещё худшего монстра?
Непонятно.

Где-то в обсуждениях проскальзывало, дескать, пусть недовольные форкают Дебиан и делают, что хотят.
Тогда придётся форкать все дистры, где есть недовольные systemd.

Вот надо бы наоборот: не дистры переделывать под Леннартовы поделки, да ещё форкать потом, а Леннарту запилить собственный дистр с блекджеком и... ну вы поняли. Желающие к нему бы присоединились. Это было бы более справедливо и менее затратно. Но здесь политика, поэтому здравый смысл на втором (или на каком?) месте.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Переход Ubuntu на Systemd

Сообщение drBatty »

Rootlexx писал(а):
02.03.2014 18:55
Да какая разница? Можно сохранить ключ верификации на любом надёжном недоступном для чужих глаз носителе.

странно. Зачем тогда QRcode? Я не понимаю.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

drBatty писал(а):
03.03.2014 09:44
Rootlexx писал(а):
02.03.2014 18:55
Да какая разница? Можно сохранить ключ верификации на любом надёжном недоступном для чужих глаз носителе.

странно. Зачем тогда QRcode? Я не понимаю.

Чтобы сохранить ключ верификации на телефоне, если администратору так удобнее. Один из вариантов надёжного носителя, недоступного для чужих глаз, который всегда с тобой.
Я не понимаю, что вы не понимаете. Генерируется пара ключей: ключ отпечатков и ключ верификации. Первый сохраняется на жёстком диске и используется для подписи записей журнала. Второй никуда не сохраняется, а лишь выводится на экран (на снимке - красным), откуда его можно переписать на бумажку, скопировать в какой-нибудь online-блокнот, вставить в файл на сменном носителе или перенести на телефон; в дальнейшем он используется администратором для проверки целостности журнала. Вполне обычная схема с открытым и закрытым ключами.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5403
ОС: Gentoo

Re: Переход Ubuntu на Systemd

Сообщение /dev/random »

Rootlexx писал(а):
03.03.2014 16:01
Я не понимаю, что вы не понимаете. Генерируется пара ключей: ключ отпечатков и ключ верификации. Первый сохраняется на жёстком диске и используется для подписи записей журнала. Второй никуда не сохраняется, а лишь выводится на экран (на снимке - красным), откуда его можно переписать на бумажку, скопировать в какой-нибудь online-блокнот, вставить в файл на сменном носителе или перенести на телефон; в дальнейшем он используется администратором для проверки целостности журнала. Вполне обычная схема с открытым и закрытым ключами.

Может, я чего-то не понимаю, но... Серьёзно? Хранить приватный ключ ("ключ отпечатков", как ты его назвал) вместе с данными, которые им подписываются? Что мешает злоумышленнику прочитать его и подписать изменённый лог?

Я не думаю, что Леннарт настолько туп. Он не мог так сделать. Но из твоего описания выходит именно так. Может, ты что-то важное недоговариваешь?
Спасибо сказали:
Аватара пользователя
Red Gremlin
Сообщения: 512
Статус: самоучка
ОС: Rosa 2016 Fresh

Re: Переход Ubuntu на Systemd

Сообщение Red Gremlin »

/dev/random писал(а):
03.03.2014 22:39
Хранить приватный ключ ("ключ отпечатков", как ты его назвал) вместе с данными, которые им подписываются?

А где его ещё хранить, раз уж им требуется подписывать лог? Всякие банки для этого используют токены и одноразовые смс-пароли для гарантии. Представил себе систему логов, где на каждую запись в журнал надо подключать флешку и вводить код из смс.
Что мешает злоумышленнику прочитать его и подписать изменённый лог?

Ничего не мешает. Так же как никто не мешает злоумышленнику с рут-правами переписать традиционные логи. Я не в курсе, если честно, как оно в systemd реализовано, но банальное поле CurrentLogEntryNo уже потребует от злоумышленника ручного дебага процесса журнала даже при условии полного доступа к его адресному пространству, ведь прочитать актуальный записанный номер нельзя ввиду отсутствия открытого ключа.
"В мире есть случайность, есть предопределенность и есть то, что ты планируешь совершить."
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Bizdelnick »

Red Gremlin писал(а):
04.03.2014 00:18
Ничего не мешает. Так же как никто не мешает злоумышленнику с рут-правами переписать традиционные логи.

А на кой чёрт оно тогда надо?

Red Gremlin писал(а):
04.03.2014 00:18
прочитать актуальный записанный номер нельзя ввиду отсутствия открытого ключа.

Это новое слово в криптографии!
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

/dev/random писал(а):
03.03.2014 22:39
Может, я чего-то не понимаю, но... Серьёзно? Хранить приватный ключ ("ключ отпечатков", как ты его назвал) вместе с данными, которые им подписываются? Что мешает злоумышленнику прочитать его и подписать изменённый лог?

Я не думаю, что Леннарт настолько туп. Он не мог так сделать. Но из твоего описания выходит именно так. Может, ты что-то важное недоговариваешь?

Да, я отвечал на вопрос, зачем нужен QR-код, и не уделил внимание одному нюансу: ключ отпечатков меняется по истечении некоторого промежутка времени. Злоумышленник может изменить записи в данном и последующих промежутках, но не предыдущих.
Впрочем, это лишь общедоступное описание (см. http://lwn.net/Articles/512895/). Научная статья на эту тему, легшая в основу данного алгоритма, ещё вроде не опубликована, поэтому ничего конкретнее сказать не могу.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21245
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Bizdelnick »

Rootlexx писал(а):
04.03.2014 10:37
Впрочем, это лишь общедоступное описание (см. http://lwn.net/Articles/512895/). Научная статья на эту тему, легшая в основу данного алгоритма, ещё вроде не опубликована

Занятно, на как-то авторитет Поттера в области криптографии вызывает сомнения. Так что я бы подождал публикации и отзывов на неё, прежде чем этим пользоваться.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

fflatx писал(а):
02.03.2014 21:00
Не увлекайтесь, я говорил лишь о принципе KISS. В данном контексте простота - главный критерий.

Принцип KISS тоже не является истиной в последней инстанции.
fflatx писал(а):
02.03.2014 21:00
Не забывайте, мы говорим о логах, а не о любых текстовых файлах. Что там в логах такого нашлось, что затрудняет фильтрацию и из-за чего нужно городить бинарные форматы? Мне такие логи не попадались.

Давайте, чтобы снять большинство вопросов, вы почитаете https://docs.google.com/document/pub?id=1IC...FxgjLUEHIX3MSTs (до Current Status).
fflatx писал(а):
02.03.2014 21:00
Степень сложности не оговаривается. Это значит, что в принципе может существовать скрипт, который не удастся превратить в сервис-файл без потери функциональности.
Поскольку скрипты могут содержать любой код, такое вполне реально.

Сервис-файлы не собираются заменять все скрипты, они нужны лишь чтобы заменить init-скрипты со всем сопутствующим boilerplate-кодом. Если вам нужно, скажем, произвести какие-то вычисления перед запуском, никто не мешает и не запрещает написать простой скрипт на любом языке, включая shell. Например, для задачи, поставленной Bizdelnick:
Bizdelnick писал(а):
26.01.2014 19:55
Дано: демон atd рекомендуется запускать с опцией -l <N>, где <N> следует выставлять выше, чем число процессорных ядер минус единица.
- в скрипте потребуется написать лишь непосредственно запуск:

Код: Выделить всё

#!/bin/sh
exec /sbin/atd -f -l `grep ^processor /proc/cpuinfo | wc -l`
- и никакого сопутствующего кода.
fflatx писал(а):
02.03.2014 21:00
Например, та же ситуация с демонизацией торрент-клиента. Изначально программа не является демоном.

А зачем её демонизировать? systemd не требует, чтобы запускаемый сервис демонизировался, даже наоборот, обратное поведение приветствуется.
fflatx писал(а):
02.03.2014 21:00
Не ощущаю принципиальной разницы. Перестаёт устраивать, значит появились задачи, которые в рамках решения не выполняются.

Необязательно. Может появиться новое решение, решающее эти задачи лучше (проще, удобнее, надёжнее...).
fflatx писал(а):
02.03.2014 21:00
Вопрос: какие новые задачи появились у системы инициализации, которые невозможно выполнить в рамках старой схемы?

Например, как мне узнать код выхода упавшего сервиса?
fflatx писал(а):
02.03.2014 21:00
Раньше мне для работы с логами хватало cat+grep, ну ещё awk иногда. И эти инструменты работали всегда и безотказно.
Сейчас же мне предлагают "разные утилиты (systemctl, journalctl, timedatectl и так далее)". Особенно "и так далее" мне нравится, то есть я даже не знаю, сколько их, этих утилит.
При этом использование cat+grep+awk никто не отменял.
То есть к моим трём с половиной утилитам добавляется ещё десяток, которые, кстати, надо осваивать, при том, что задачи мои не изменились. И мне это ещё пытаются представить, как более простое решение. Самим-то не смешно?

Во-первых, "разные утилиты" выполняют разные задачи, и для работы с журналом нужна лишь journalctl.
Во-вторых, если вам хочется минимум изменений, то просто вызов cat заменяется на вызов journalctl - последний выдаёт текст в формате syslog. Что-то изучать дополнительно понадобится, лишь если вы решите воспользоваться встроенными в journalctl средствами фильтрации.
В-третьих, можете установить любую реализацию syslog и продолжать пользоваться текстовыми журналами.
fflatx писал(а):
02.03.2014 21:00
Содержимое двух последних абзацев вашего поста не делает эту фразу менее абсурдной. Вы не хуже меня понимаете, что "управление сервисами" - это сильно больше, чем одна задача.

Мда. Содержимое двух последних абзацев, действительно, не делает эту фразу менее абсурдной, однако оно ясно показывает, что это было сделано намеренно, что я в курсе её абсурдности, и в дальнейшем я это как раз и разъясняю.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Переход Ubuntu на Systemd

Сообщение drBatty »

Rootlexx писал(а):
03.03.2014 16:01
Чтобы сохранить ключ верификации на телефоне, если администратору так удобнее. Один из вариантов надёжного носителя, недоступного для чужих глаз, который всегда с тобой.

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

Rootlexx писал(а):
03.03.2014 16:01
Я не понимаю, что вы не понимаете. Генерируется пара ключей: ключ отпечатков и ключ верификации. Первый сохраняется на жёстком диске и используется для подписи записей журнала. Второй никуда не сохраняется, а лишь выводится на экран (на снимке - красным), откуда его можно переписать на бумажку, скопировать в какой-нибудь online-блокнот, вставить в файл на сменном носителе или перенести на телефон; в дальнейшем он используется администратором для проверки целостности журнала. Вполне обычная схема с открытым и закрытым ключами.

няня я у них поел.

В обычной схеме генерируется действительно два ключа:
1. открытый
2. закрытый
сохраняются они на этом локалхосте ВСЕГДА ОБА. Разница в том, что закрытый НИКОГДА не покидает данный локалхост, а открытый -- наоборот, публикуется во всех доступных сетях, и даже под зелёной кобылой: GPG ID: 4DFBD1D6.

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

Red Gremlin писал(а):
04.03.2014 00:18
ведь прочитать актуальный записанный номер нельзя ввиду отсутствия открытого ключа.

разбил лицо ладонью.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

fflatx писал(а):
02.03.2014 21:00
одна программа - одна задача

Код: Выделить всё

/bin/journalctl
/bin/loginctl
/bin/systemctl
/bin/systemd
/bin/systemd-ask-password
/bin/systemd-inhibit
/bin/systemd-machine-id-setup
/bin/systemd-notify
/bin/systemd-tmpfiles
/bin/systemd-tty-ask-password-agent
/lib/systemd/systemd
/lib/systemd/systemd-ac-power
/lib/systemd/systemd-activate
/lib/systemd/systemd-binfmt
/lib/systemd/systemd-bootchart
/lib/systemd/systemd-cgroups-agent
/lib/systemd/systemd-cryptsetup
/lib/systemd/systemd-fsck
/lib/systemd/systemd-hostnamed
/lib/systemd/systemd-initctl
/lib/systemd/systemd-journald
/lib/systemd/systemd-localed
/lib/systemd/systemd-logind
/lib/systemd/systemd-logind-launch
/lib/systemd/systemd-modules-load
/lib/systemd/systemd-multi-seat-x
/lib/systemd/systemd-quotacheck
/lib/systemd/systemd-random-seed
/lib/systemd/systemd-readahead
/lib/systemd/systemd-remount-fs
/lib/systemd/systemd-reply-password
/lib/systemd/systemd-shutdown
/lib/systemd/systemd-shutdownd
/lib/systemd/systemd-sleep
/lib/systemd/systemd-sysctl
/lib/systemd/systemd-timedated
/lib/systemd/systemd-timestamp
/lib/systemd/systemd-update-utmp
/lib/systemd/systemd-user-sessions
/usr/bin/hostnamectl
/usr/bin/localectl
/usr/bin/systemd-analyze
/usr/bin/systemd-cat
/usr/bin/systemd-cgls
/usr/bin/systemd-cgtop
/usr/bin/systemd-delta
/usr/bin/systemd-detect-virt
/usr/bin/systemd-nspawn
/usr/bin/systemd-stdio-bridge
/usr/bin/timedatectl

Как видите, разбиение на задачи присутствует.
fflatx писал(а):
02.03.2014 21:00
использование текстовых форматов

В классических принципах UNIX говорится о текстовых потоках. Формат хранения данных не регламентируется.
fflatx писал(а):
02.03.2014 21:00
передача вывода одной программы на вход другой программы.

Вам что-то мешает это делать?
fflatx писал(а):
02.03.2014 21:00
Вот надо бы наоборот: не дистры переделывать под Леннартовы поделки, да ещё форкать потом, а Леннарту запилить собственный дистр с блекджеком и... ну вы поняли. Желающие к нему бы присоединились. Это было бы более справедливо и менее затратно.

Что делать, решают разработчики. Рассуждения диванных теоретиков, лучше всех знающих, как правильно™ делать дистрибутивы, "почему-то" никто во внимание не принимает.
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

Bizdelnick писал(а):
04.03.2014 10:50
Rootlexx писал(а):
04.03.2014 10:37
Впрочем, это лишь общедоступное описание (см. http://lwn.net/Articles/512895/). Научная статья на эту тему, легшая в основу данного алгоритма, ещё вроде не опубликована

Занятно, на как-то авторитет Поттера в области криптографии вызывает сомнения. Так что я бы подождал публикации и отзывов на неё, прежде чем этим пользоваться.

Соглашусь.
И вообще, если нужно обеспечить защиту журналов от перезаписи, надо поднимать отдельный сервер. Полезность же данной штуки под вопросом.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Переход Ubuntu на Systemd

Сообщение drBatty »

Rootlexx писал(а):
04.03.2014 11:11
Например, как мне узнать код выхода упавшего сервиса?

$? не?

http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Переход Ubuntu на Systemd

Сообщение drBatty »

Rootlexx писал(а):
04.03.2014 11:16
Как видите, разбиение на задачи присутствует.

в Windows™ тоже Over9000 файлов. Она всё равно монолитная, там даже DE/WM намертво прибито к ядру.
Rootlexx писал(а):
04.03.2014 11:24
И вообще, если нужно обеспечить защиту журналов от перезаписи, надо поднимать отдельный сервер. Полезность же данной штуки под вопросом.

пугает её замоноличенность. На самом деле, я читал публикации Леннартовского братца на эту тему, и мне его идеи показались интересными. Другое дело, что это нафиг не нужно ВСЕМ. Впрочем, если это делать не всем, то никто жеж тестить не станет. Тоже понятно. А как в продакшен запускать без тестов? Никак. Хомячки должны страдать, и платить за свою халяву. Увы.

Посему, я скорее за сабж, а не против. Да, это жестоко.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

drBatty писал(а):
04.03.2014 11:25
Rootlexx писал(а):
04.03.2014 11:11
Например, как мне узнать код выхода упавшего сервиса?

$? не?

Так процесс-то делает double fork и становится дочерним init. Поэтому поддержка этого должна быть в init, иначе никак.
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu

Re: Переход Ubuntu на Systemd

Сообщение alv »

Rootlexx писал(а):
04.03.2014 11:16
Что делать, решают разработчики. Рассуждения диванных теоретиков, лучше всех знающих, как правильно™ делать дистрибутивы, "почему-то" никто во внимание не принимает.

В этом и беда дистроителей. Потому что в конечном счёте судьба дистрибутива решается именно ими - диванными теоретиками (==прользователями-применителями).
Которые с дистрибутива, сделанного неправильно (по их диванно-теоретическому мнению), просто уходят.
И уходят обычно, что характерно, не на другой дистрибутив. А, как я неоднократно писал (очевидная вещь, которую приходится повторять):
лучшие из лучших - на маки;
лучшие из худших - на лицензионную винду;
худшие из худших - на винду пиратскую.
Всё это уже было неоднократно. И будет сейчас. Но уже в последний раз.
PS Некогда на этом форуме было много посетителей - линуксоидов некомпьютерных специальностей, применяющих Линукс в своей работе.
Сейчас остались единицы, да и то по инерции.
Форум превратился в службу поддержки начинающих админов - и данная тема тому живой пример.
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3728
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: Переход Ubuntu на Systemd

Сообщение Hephaestus »

Rootlexx писал(а):
04.03.2014 11:11
Сервис-файлы не собираются заменять все скрипты
Вот в том-то и дело. Основной мотив создания systemd - непригодность shell-скриптов для системы инициализации - они сложные, запутанные, их надо срочно заменить, причём желательно на всех дистрах сразу. И заменить на сервис-файлы, которые не являются скриптами, а являются настроечными файлами, следовательно, они проще, короче и не требуют знания bash-скриптинга.
Я правильно резюмирую ключевые идеи Леннарта?

Теперь выясняется, что оказывается, не все скрипты надо заменять. А только некоторые.
Другие останутся. Стало быть останутся их сложность, запутанность, и останется потребность в знаниях bash.
Говоря коротко: там где надо было знать одну бяку, теперь надо знать две.
Называть это более простым решением у меня язык не повернется.

Rootlexx писал(а):
04.03.2014 11:11
А зачем её демонизировать?
Затем, что мне это нужно.
Вы допускаете хотя бы на секунду, что у человека могут быть задачи, сравнительно легко решаемые на shell, но не предусмотренные в systemd?

Rootlexx писал(а):
04.03.2014 11:11
Необязательно. Может появиться новое решение, решающее эти задачи лучше (проще, удобнее, надёжнее...).
Я так и не понял, в каком месте systemd проще.
Это решение можно назвать как угодно, но только не более простым.
Элементарный пример:
1. Для того, чтобы разбираться в shell-скриптах, нужно изучить ABS.
2. Для того, чтобы разобраться в systemd, нужно изучить документацию к systemd.

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

При этом объём изучаемой документации в пером и втором случае сопоставим.

Второе даёт рыбу.
Первое учит рыбачить.
При одинаковых затратах.

Согласен, что не все хотят рыбачить. Кто-то хочет готовую рыбу.
Но в случае с systemd почему-то решили, что всем нужна готовая рыба, никто не должен рыбачить и поставщик рыбы должен быть один.

Rootlexx писал(а):
04.03.2014 11:11
Например, как мне узнать код выхода упавшего сервиса?
Вообще, на мой взгляд, это проблема самого сервиса - сообщить о себе. Если сообщает - узнать можно.
drBatty выше привёл вариант. Вы утверждаете, что это не сработает.
Спорить не буду, однако не думаю, что это принципиально не решаемо в рамках sysvinit.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

alv писал(а):
04.03.2014 12:08
Которые с дистрибутива, сделанного неправильно (по их диванно-теоретическому мнению), просто уходят. И уходят обычно, что характерно, не на другой дистрибутив. А, как я неоднократно писал (очевидная вещь, которую приходится повторять):
лучшие из лучших - на маки;
лучшие из худших - на лицензионную винду;
худшие из худших - на винду пиратскую.

Довольно странно переходить из системы, не полностью соответствующей предпочитаемым принципам, на систему, этим принципам не соответствующую вовсе.
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu

Re: Переход Ubuntu на Systemd

Сообщение alv »

Rootlexx писал(а):
04.03.2014 13:15
Довольно странно переходить из системы, не полностью соответствующей предпочитаемым принципам, на систему, этим принципам не соответствующую вовсе.

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

Re: Переход Ubuntu на Systemd

Сообщение jashaw5 »

alv писал(а):
04.03.2014 12:08
PS Некогда на этом форуме было много посетителей - линуксоидов некомпьютерных специальностей, применяющих Линукс в своей работе.
Сейчас остались единицы, да и то по инерции.
Форум превратился в службу поддержки начинающих админов - и данная тема тому живой пример.

Посетители - линуксоиды некомпьютерных специальностей, применяющих Линукс в своей работе ушли на: http://linuxforum.ru/index.php. Увы. :hands:
Русский форум. Задаёшь вопрос, потом тебе долго рассказывают, какой ты м-к.
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4458
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Переход Ubuntu на Systemd

Сообщение Rootlexx »

fflatx писал(а):
04.03.2014 13:00
Основной мотив создания systemd - непригодность shell-скриптов для системы инициализации - они сложные, запутанные, их надо срочно заменить, причём желательно на всех дистрах сразу. И заменить на сервис-файлы, которые не являются скриптами, а являются настроечными файлами, следовательно, они проще, короче и не требуют знания bash-скриптинга.
Я правильно резюмирую ключевые идеи Леннарта?

Да.
fflatx писал(а):
04.03.2014 13:00
Теперь выясняется, что оказывается, не все скрипты надо заменять. А только некоторые.
Другие останутся. Стало быть останутся их сложность, запутанность, и останется потребность в знаниях bash.

Нет.
Суть в том, что кроме простой задачи непосредственного запуска нужной программы приходится решать ещё кучу сопутствующих задач, для решения которых в sysvinit традиционно используется shell и куча костылей типа PID-файлов, и в которых и заключена основная сложность и запутанность. Вот как раз эти сопутствующие задачи systemd реализует на более подходящем для этого языке более подходящим способом. (Заодно перенося существующую в ядре функциональность из категории нигде толком не использующейся экзотики в категорию стандартных и доступных решений.)
Всё же есть разница между необходимостью скриптовать одну простую задачу в редких случаях и необходимостью скриптовать всё.
fflatx писал(а):
04.03.2014 13:00
Rootlexx писал(а):
04.03.2014 11:11
А зачем её демонизировать?
Затем, что мне это нужно.
Вы допускаете хотя бы на секунду, что у человека могут быть задачи, сравнительно легко решаемые на shell, но не предусмотренные в systemd?

Я объяснил, что для запуска программы как сервиса в systemd нет необходимости её дополнительно демонизировать в отличие от sysvinit.
Хотите демонизировать - демонизируйте, но реальный пример, когда это является необходимостью, было бы интересно услышать.
fflatx писал(а):
04.03.2014 13:00
Элементарный пример:
1. Для того, чтобы разбираться в shell-скриптах, нужно изучить ABS.
2. Для того, чтобы разобраться в systemd, нужно изучить документацию к systemd.

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

При этом объём изучаемой документации в пером и втором случае сопоставим.

Второе даёт рыбу.
Первое учит рыбачить.

Ну и демагогия... Я тоже так могу:
1. Для того, чтобы писать на C, нужно изучить КР.
2. Для того, чтобы пользоваться готовыми программами, нужно изучить документацию к этим программам.

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

При этом объём изучаемой документации в пером и втором случае сопоставим.

Второе даёт рыбу.
Первое учит рыбачить.

Долой готовые программы! Всем по компилятору за мой счёт!
fflatx писал(а):
04.03.2014 13:00
Спорить не буду, однако не думаю, что это принципиально не решаемо в рамках sysvinit.

Конечно, принципиально решаемо:
  • Берём текстовый редактор.
  • Берём исходный код sysvinit.
  • Реализуем требуемую функциональность.
  • Компилируем.
  • Пользуемся.
:dry:
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu

Re: Переход Ubuntu на Systemd

Сообщение alv »

jashaw5 писал(а):
04.03.2014 13:26
Посетители - линуксоиды некомпьютерных специальностей, применяющих Линукс в своей работе ушли на

Тех, кого я знал лично (а я знал довольно многих) ушли вообще. Ещё раз увы.
Правда, ушли в основном на Маки - так что можно считать, что они относятся к лучшим из лучших. И стали такими (в том числе и) благодаря Линуксу.
смайликов взял в аренду, можно добавить по вкусу
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Переход Ubuntu на Systemd

Сообщение drBatty »

Rootlexx писал(а):
04.03.2014 11:39
Так процесс-то делает double fork и становится дочерним init. Поэтому поддержка этого должна быть в init, иначе никак.

нет. Процесс делается дочерним сам себе, а не init, и может отслеживать сам себя, если у него есть такая необходимость. Мало того, сам bash тоже может форкнуться, и отслеживать какой-то процесс.

вот вам тривиальный пример:

Код: Выделить всё

#!/bin/bash

sleep 1m &
ASYNC_PID=$!
top -n1 -p$ASYNC_PID

alv писал(а):
04.03.2014 12:08
Которые с дистрибутива, сделанного неправильно (по их диванно-теоретическому мнению), просто уходят.
И уходят обычно, что характерно, не на другой дистрибутив. А, как я неоднократно писал

да и пусть уходят.
fflatx писал(а):
04.03.2014 13:00
drBatty выше привёл вариант. Вы утверждаете, что это не сработает.

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

alv писал(а):
04.03.2014 13:22
Но это медицинский факт, с которым дистроители считаться не хотят.

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


jashaw5 писал(а):
04.03.2014 13:26
Посетители - линуксоиды некомпьютерных специальностей, применяющих Линукс в своей работе ушли на: http://linuxforum.ru/index.php. Увы.

очень не хочется вас обидеть.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали: