LINUX.ORG.RU

Arch без Systemd (опыт)

 , ,


0

1

Собственно, суммон всех, у кого был опыт: какие подводные камни/грабли, к чему готовиться? Сам, как освоюсь, хочу по иделолгическим причинам снести systemd и перейти на openrc (ибо мне не нравится, что в систему инициализации напихали кучу всего (тут может быть вставлено про qr код, да), это мало того, что нифига не KISS - принцип арча, особенно когда куча софта хардкодит зависимости от него, при этом не имея к этому никаких предпосылок, но и не UNIX-way впринципе, ибо все должно выполнять свою функцию, а не быть чертовым комбайном). План по сборке трактора такой: http://systemd-free.org/install.php Так же призываются юзеры генту, которые пользуются openrc в большинстве своем, насколько мне известно.

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

XMs ★★★★★
()

Используй slackware, остальеых дистрибутивов GNU/Linux уже не осталось. А дебиан после седьмого умер почему-то...

Reedych ★☆
()
Ответ на: комментарий от XMs

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

Akutenshi
() автор топика
Ответ на: комментарий от Reedych

Черт, вспомнил, что забыл написать: менять дистрибутив не буду, в частности из-за AUR и pacman (хотя и не только). Иначе бы я уже листал handbook.

Akutenshi
() автор топика
Ответ на: комментарий от Akutenshi

Вообще-то можно написать скрипт который будет на слаке работать в PKGBUILD-ами, этому ничего не мешает. Всего то - конпеляние, сборка в tar.gz пакет, много не надо. Возможно такое уже есть. Зато получишь стабильную и удобную систему. Если не найдётся похожее по установке арчевых пкгбилдов в слаке, могу помочь запилить. (Если что, джаббер временно не работает)

Reedych ★☆
()

Ну, когда я был молодой и глупый, эксперементировал с openrc на arch: профитов особых не заметил, зато поддержка хуже была (по понятным причинам). В systemd все нужные функции есть, а ненужными можешь не пользоваться. При том ещё и ништяки вроде systemd-analyze plot или графического диалога запроса пароля.

sudopacman ★★★★★
()
Ответ на: комментарий от Akutenshi

Насколько хорошо работает сам openrc

Гента дома, на работе и на ноуте, дебиан на VPS — полёт нормальный. Косяков сходу не припоминаю.


и что от него можно ждать

Ну, поначалу может несколько шокировать, что openrc не работает постоянно: он запускается, считает зависимости демонов, проверяет, кто запущен, запускает нужных/выключает ненужных, если об этом просили, и всё. Если что-то упало, он не перезапустит демона, пока не будет запущен сам, поэтому для мониторинга следует использовать monit и прочие специально предназначенные средства (где-то на гентувики была статья). В комплекте работа с cgroups, но я в это особо не лазил — не было нужды. Умеет работать с различными гипервизорами, типа s6. Как-то так

XMs ★★★★★
()

Катись на какую-нибудь мандриву в 2006 год, там тебе самое место.

entefeed ☆☆☆
()
Ответ на: комментарий от sudopacman

В systemd все нужные функции есть, а ненужными можешь не пользоваться. При том ещё и ништяки вроде systemd-analyze plot или графического диалога запроса пароля.

Ну, я не спорю же. Да и не в моей компетенции ругать systemd с технической точки зрения. Мне он достаточно удобен сейчас. Тут скорее описанная в ОП-посте неприязнь к тому, как проехались по принципам арча. Как-то так.

Akutenshi
() автор топика
Ответ на: комментарий от XMs

Если что-то упало, он не перезапустит демона, пока не будет запущен сам

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

Akutenshi
() автор топика
Ответ на: комментарий от Akutenshi

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

Нет (может, настраивается, не в курсе). Напишет, что демон не поднялся и продолжит загрузку. А ты уже после логина разбирайся, кто не поднялся и почему. Для удобства может писать лог загрузки в файл, чтобы было проще понять, у кого были ошибки. Потом, как исправишь, просто заново запускаешь openrc, и он запустит всё, что не запустилось раньше.


А если они требуют последовательного запуска?

Тогда то, что зависит от незапустившегося демона, также не будет запущено

XMs ★★★★★
()
Ответ на: комментарий от Akutenshi

Про systemd много написано и всего, а вот опыта и мнений насчет openrc гораздо меньше

потому что openrc просто работает?

reprimand ★★★★★
()
Ответ на: комментарий от Akutenshi

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

sudopacman ★★★★★
()
Ответ на: комментарий от XMs

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

Ага, понял. Ну, с systemd все примерно так же у меня сейчас: что-то упало, быстро показывает, а потом смотрю в systemctl status, а в openrc будут логи (не бинарные, кхм, не мог не).

Тогда то, что зависит от незапустившегося демона, также не будет запущено

Соответственно, я правлю и он уже потом все починенное запустит в нормальном порядке, как и должно

Akutenshi
() автор топика
Ответ на: комментарий от reprimand

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

Akutenshi
() автор топика
Ответ на: комментарий от sudopacman

У арча вполне конкретная философия и то, что было сделано с системд - это серьезный отход от нее. Да, я читал тот пост на форуме, я понимаю, что системд хорош в определенных смыслах, но он портит сам дистрибутив. Для примера, мы все знаем как устанавливается арч, что ему нафиг не нужен инсталлер с гуем и прочих «нажми волшебную кнопку) вещей по причине его философии - пользователь понимает как и что работает, выбирает как и что будет работать, а соответсвенно то, что будет работать, должно делать то, что нужно (установщик - устанавливать, управление группами - управление группами итд). И когда это есть в пакмане (не установка овер9000 зависимостей „про запас“, а только то, что нужно и сказать „можно еще это и это, а ты уже решай сам“) - это делает его вином. И мне хочется работать именно в этом ключе и системд этому не соответствует (и скорее подрывает их).

Akutenshi
() автор топика
Ответ на: комментарий от reprimand

Нет, не поэтому. Справедливо предположить, что чем больше актуальной (новой) информации о программе/технологии/etc, тем она живее.

sudopacman ★★★★★
()
Ответ на: комментарий от Akutenshi

брат жив на генту. проблем с софтом и -Syu нет.

anonymous
()
Ответ на: комментарий от Akutenshi

а потом смотрю в systemctl status

Ну, тут это зовётся rc-status, так что разницы совсем немного. Пример выхлопа:

23:51:39 xms@XMs-notebook ~ $ rc-status 
Runlevel: default
 lvm                                                                       [  started  ]
 NetworkManager                                                            [  started  ]
 sysklogd                                                                  [  started  ]
 acpid                                                                     [  started  ]
 laptop_mode                                                               [  started  ]
 cronie                                                                    [  started  ]
 netmount                                                                  [  started  ]
 mpd                                                                       [  started  ]
 local                                                                     [  started  ]
Dynamic Runlevel: hotplugged
Dynamic Runlevel: needed/wanted
 lvmetad                                                                   [  started  ]
 dbus                                                                      [  started  ]
Dynamic Runlevel: manual
23:54:14 xms@XMs-notebook ~ $


Соответственно, я правлю и он уже потом все починенное запустит в нормальном порядке, как и должно

Да (для примера остановил dbus, как если бы он не запустился, а потом просто запустил openrc):

23:57:23 XMs-notebook xms # rc-service dbus stop
netmount         | * Unmounting network filesystems ...                           [ ok ]
NetworkManager   | * Stopping NetworkManager ...                                  [ ok ]
dbus             | * Stopping dbus ...                                            [ ok ]
23:57:32 XMs-notebook xms # openrc
dbus             | * Starting dbus ...                                            [ ok ]
NetworkManager   | * Starting NetworkManager ...                                  [ ok ]
Подключение..................    0s
NetworkManager   | * Marking NetworkManager as inactive. It will automatically be marked
NetworkManager   | * as started after a network connection has been established.
NetworkManager   | * WARNING: NetworkManager has started, but is inactive
netmount         | * WARNING: netmount will start when NetworkManager has started
23:57:47 XMs-notebook xms # 

XMs ★★★★★
()

Тред не читал, сам месяц назад на генте перешёл на systemd - косяков особо не заметил, более того даже сеть с гентушного net стэка на systemd-network перевел. Единственная претензия к сети в systemd это отсутствие поддержки source policy routing, а так всякие бриджи, вланы, метрики есть изкоробки.

anonymous
()
Ответ на: комментарий от Akutenshi

Если тебе перестала нравиться философия арча, то почему ты всё ещё на арче? Что мешает поставить gentoo?

Или просто топик преднамеренное 4.3?

xSudo ★★★
()
Ответ на: комментарий от Akutenshi

Скажи, чем тебя конкретно угнетает systemd? Тем что в системе инициализации появились функции, которыми ты не будешь пользоваться? В арче есть и другие пакеты, предоставляющие программы, не всеми возможностями которых ты будешь пользоваться (ffmpeg, например). И пакеты, которые собрали с зависимостями, которые ты потенциально можешь не использовать (без опциональных зависимостей). Если тебе так важен полный контроль над системой, ставь генту.

sudopacman ★★★★★
()
Ответ на: комментарий от xSudo

Если тебе перестала нравиться философия арча, то почему ты всё ещё на арче?

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

Akutenshi
() автор топика
Ответ на: комментарий от sudopacman

Тем что в системе инициализации появились функции, которыми ты не будешь пользоваться?

Да, но не это главное. Меня не устраивает в первую очередь то, сколько на себя берет системд (слишком много). А вот контролировать это - задача уже пользователя. Да, есть base, но иначе возвращаемся к аргументу ,а почему ядро линукс :) Монолитное, кстати, в котором куча драйверов для железа, которым я пользоваться вряд ли буду, но это ядро - его принципы. А вот принципы дистрибутива над ним - уже другое. Ну и да, не хотелось бы тред скатывать в флейм. Я не хочу собирать все программы - генту не для меня. Мне нравится арч, но я хочу его подправить у себя.

Akutenshi
() автор топика
Ответ на: комментарий от anonymous

Анонче, у меня в ОПе ссылка на него. Мнея интересует не «как», а что в итоге получилось, чего ждать. Ни на генту, ни на слаке, а на арче по этому гайду.

Akutenshi
() автор топика
Ответ на: комментарий от Akutenshi

Я согласен с ораторами выше, что с арчем это будет та ещё дрочка, но тебе, видимо, этого и хочется.

anonymous
()
Ответ на: комментарий от Akutenshi

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

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

sudopacman ★★★★★
()

Реальность такова что systemd становится стандартом де-факто даже во всяких сервер-ориентированых дистрибутивах типа RHEL/Centos - так что рано или поздно придется с этим смириться.

ivanich ★★
()

Когда-то я на своем раче с дуру решил запилить OpenRC вместо системд. Единственная проблема была: приходилось при установке демонов самому писать/выдирать скрипты инициализации.

Unicode4all ★★★★★
()
Ответ на: комментарий от sudopacman

Я был бы не против, если бы мне ставили systemctl - вот он отслеживает состояние системы, отлично. Система состоит из компонентов. Над компонентами стоят демоны, которые смотрят их состояние и передают инфу в надинтерфейс - systemd, причем все эти демоны я могу поменять на аналог, потому что мне название не нравится (заменить на что-то более весомое). В системд же так нельзя, они хардкодят принципиально разные по задачам модули на си. Т.е. чтобы внести изменения я делаю форк, чищу все то, что они там написали и ставлю, прочитав молебник перед разгребанием того, что вылезет из-за хардкода интерфейса systemd другими программами. И я бы сказал, что это winapi какой-то, но вот... Хотя, тут я могу быть не прав. Ну, тут сравнение скорее с позиксом должно быть.

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

Я согласен с ораторами выше, что с арчем это будет та ещё дрочка, но тебе, видимо, этого и хочется.

Да вобщем-то я и не против. Я прихожу и по вечерам копаюсь в арчевики и сижу с ним. И я хочу сделать все правильно, просто и правильно. И просто не в плане «нажать кнопку и все заработало и пофиг как», а просто для понимания, логично и... правильно. Подход системд я вижу неправильным. Моя точка зрения может отличаться и это нормально. Как и нормально, что многие перешли на системд - их это может устраивать. То, что есть много разных программ и их пишу не я (слава всевышнему) - это отлично. Это дает мне выбор. Арч предлагает мне этот выбор практически везде. Взять тот же Xorg - там же куча либ, но я же не ставлю все из них. Нужно - поставил, нет - нет. Они не сделали огромный монолитный Xorg, в котором и заменить толком ничего нельзя. Этим он классный. К слову, я избыточность заметил и выбирал, действительно, между гентой и арчем. Но потом я подумал, что время мне дешевле, но понимать и держать в голове то, как работает моя ОС, отдав на автоматизацию такую рутину, как сборка пакетов (да, я использую yaourt для AUR, например, если надо - смотрю pckbuild, не хочу - не смотрю). Это осознанный выбор.

Akutenshi
() автор топика
Ответ на: комментарий от Unicode4all

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

Это настолько... сложно? Или при обновлении ПО приходилось часто переписывать что-то?

Akutenshi
() автор топика
Ответ на: комментарий от ivanich

Реальность такова что systemd становится стандартом де-факто даже во всяких сервер-ориентированых дистрибутивах типа RHEL/Centos - так что рано или поздно придется с этим смириться.

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

Akutenshi
() автор топика
Ответ на: комментарий от Akutenshi

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

Unicode4all ★★★★★
()
Ответ на: комментарий от Unicode4all

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

Akutenshi
() автор топика
Ответ на: комментарий от sudopacman

Нет, не поэтому. Справедливо предположить, что чем больше актуальной (новой) информации о программе/технологии/etc, тем она живее.

как часто ты слышишь о ls? а может о cat? это мертвые программы, ими никто не пользуется?

или ты из тех хипстеров, для которых всё старое - плохое, а новое - самое лучшее?

reprimand ★★★★★
()
Ответ на: комментарий от Akutenshi

Нет. Как правило, написал и забыл. Я еще забыл... мне еще приходилось udev собирать из aur без systemd и несколько других сервисов, которые были завязаны на systemd. Initramfs собирал с помощью dracut.

Unicode4all ★★★★★
()
Ответ на: комментарий от Unicode4all

мне еще приходилось udev собирать из aur без systemd и несколько других сервисов, которые были завязаны на systemd.

Да, про это знаю... Увы.

Akutenshi
() автор топика
Ответ на: комментарий от Akutenshi

Чувак, я тебя прекрасно понимаю, что хочется своего, родного и чтобы всё было правильно и работало как часики. Но с бинарными дистрибутивами этого добиться сложно, особенно если ты не мейнтейнер ) Ставь гентушку и радуйся жизни, уверен, что она тебе зайдёт в самый раз.

Твоё предпоследнее предложение я так и ниасилил. Раз 15 перечитывал. Сорян.

anonymous
()
Ответ на: комментарий от anonymous

Да, я видел его. Это установщик с дефолтным openrc, а не systemd. Но поскольку арч у меня стоит уже с месяц и снова его устанавливать... Можно, но зачем?

Akutenshi
() автор топика
Ответ на: комментарий от anonymous

Ну, мне казалось, что в генту программы надо собирать (или запускать ебилды, как аналог пкгбидов арча). Сие долго для меня, например. Возможно, даже скорее всего, я просто не сильно разбираюсь в генту, но меня тогда это смутило. Бинарники - не всегда зло и я гораздо чаще захочу просто получить программу и работать с ней. Если программа не моя, но я залезаю в код - она либо офигеть какая классная, что я решил тратить на ее код время, либо она почему-то не работает и настолько классная, что я захотел смотреть что, в противном случае я бы искал аналог. Ну, если аналога не было бы, то смотрел код/писал свое, в зависимости от времени и того, что есть. Короче, как-то так. Если в генту что-то не так и там аналог пакмана во все края - не вижу большой разницы (репозитории у них вроде как очень даже большие, сравнимые с арчем). А если нет - мне не нужен код при установке, если я просто хочу чем-то пользоваться.

Akutenshi
() автор топика
Ответ на: комментарий от Akutenshi

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

Погоняй в виртуалке, а вдруг понравится )

anonymous
()
Ответ на: комментарий от anonymous

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

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

arcanis ★★★★
()

Никогда не думал, что буду хвалить каноникл и космонавтов, но мне очень понравился upstart. Есть даже идея фикс впилить upstart в слаку.

menangen ★★★★★
()

Никаких проблем связаных с openrc нет, всё прекрасно работает.

StReLoK ☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.