Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Сегодня битый час разбирался, почему у меня после обновления сломался интернет. ОКАЗЫВАЕТСЯ, в systemd верси 200 появился новый файлик /usr/lib/sysctl.d/50-default.conf, а в нём ЭТО:
Что особо интересно, sysctl НИЧЕГО НЕ ЗНАЕТ о каталоге /usr/lib/sysctl.d/ и (закономерно) игнорирует его. Новый каталог НЕ упоминается в man sysctl, но упоминается в man sysctl.d, который как выяснилось, теперь принадлежит пакету systemd, а не procps-ng, как раньше. Этот каталог – нововведение systemd и интерпретируется им же, а не sysctl. До версии 200 он был практически незаметен, там был только файлик coredump.conf с единственной строчкой для настройки вывода "core dumped". В новом systemd-200 появился новый файл 50-default.conf с несколькими параметрами, которые изменяют настройки sysctl в обход конфигов sysctl. Автор нововведения – никто иной, как Kay Sievers, автор udev: http://cgit.freedesktop.org/systemd/systemd/commit/sysctl.d?id=8f27a2212ee8d6311c88ef4358953ad0d7bfa851 Если вы знаете, что делать с sysctl, /etc/sysctl.conf, /etc/sysctl.d/, /proc/sys/ и делаете это – теперь придётся иметь в виду ещё и /usr/lib/sysctl.d/ . Если требуется заблокировать нежелательные/неожиданные изменения параметров sysctl при обновлении, можно сделать это в pacman.conf строчкой NoUpgrade = etc/sysctl.conf usr/lib/sysctl.d/* |
lampslave |
|
Темы:
32
Сообщения:
4796
Участник с: 05 июля 2011
|
Про это упоминалось в новости на opennet.ru, причём нововведение было ещё в systemd 199 (который в стабильные репозитории не попал, потому что через несколько дней вышел 200-й релиз). |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
lampslave, спасибо, действительно :) В любом случае, у нас этой новости ещё не было. Кстати, по ссылке есть и другие интересные вещи, например параметр ядра net.ifnames=0 |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Я вот не пробовал, но по идее приоритет настроек /etc/sysctl.d/ должен быть выше чем в /usr/lib/sysctl.d/ и даже выше чем в /etc/sysctl.conf может попробовать параметр net.ipv4.conf.default.rp_filter = 0 прописать например в /etc/sysctl.d/net.conf. И не нужны будут никакие шаманства в pacman.conf
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
nafanjaСовершенно верно, я могу как угодно переопределить эти параметры, в том числе и через /etc/sysctl.d/ , но я говорил не о переопределении отдельных ИЗВЕСТНЫХ параметров, а о предотвращении появления ЛЮБЫХ НОВЫХ, которое может иметь непредсказуемый эффект. Блокирование обновления usr/lib/sysctl/* в pacman.conf решает эту задачу ЗАРАНЕЕ, а любые файлы в /etc/sysctl.d/ и параметры в /etc/sysctl.conf – только ПОСЛЕ ТОГО, как я о них узнаю и переопределю. |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Вот так привыкнешь, а потом забудешь про pacman.conf, и после новой установки опять ломать голову почему что то не работает... Как мне кажется лучше уж запомнить что настройки по умолчанию находятся тут /usr/lib/sysctl.d/ и тут /etc/sysctl.conf, а переопределять их стоит тут /etc/sysctl.d/ А корректировать pacman.conf это больше как частный случай, а не правило...
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
cucullus |
|
Темы:
256
Сообщения:
3435
Участник с: 06 июня 2007
|
читайте рассылку, да ;)
такие дела.
|
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Настройки sysctl , к сожалению, не всегда очевидны, их последствия трудно предсказать, а их изменения трудно опознать по внешним признакам. Если товарисчи мейнтейнеры хотя переписать конфиги, пускай пишут их в .pacnew, как во всех нормальных пакетах. Собственно, именно такого поведения я и добился манипуляцией с pacman.conf И ещё раз – переопределять параметры systemd я могу где угодно, собственно я это уже и так сделал. Но НА БУДУЩЕЕ мне нужно не переопределять, а контролировать их появление – мне совершенно не нужны пакеты, которые манипулируют настройками сети и ядра вообще без моего ведома, да ещё в обход стандартных конфигов. /usr/lib/sysctl.d/* – конфиги НЕШТАТНЫЕ, они НЕ обрабатываются sysctl, никаких "дефолтов" /usr/lib/ в sysctl не предусмотрено. Дефолты sysctl – в ядре, остальное от лукавого. Кстати, дефолтные обновляемые конфиги в /usr/lib/ вообще не очень хорошая идея, именно потому, что контролируются только пост фактум, и их переопределение в /etc/ слишком напоминает латание дыр вдогонку. И ещё – вы совершенно зря затеяли спор. Я же сказал в самом начале – ЕСЛИ НУЖНО – вот способ. Кому НЕ нужно – просьба не беспокоиться :) |
nafanja |
|
Темы:
94
Сообщения:
9252
Участник с: 02 июня 2012
заблокирован
|
Natrio, после первого прочтения показалось что это как инструкция к действию типа - Kay Sievers редиска натворил делов испортил все, а не просто как совет типа - хотите можно и так сделать...
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874 |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Я писал так: Если вы знаете, что делать с sysctl, /etc/sysctl.conf, /etc/sysctl.d/, /proc/sys/ и делаете это – теперь придётся иметь в виду ещё и /usr/lib/sysctl.d/ . Если требуется заблокировать нежелательные/неожиданные изменения параметров sysctl при обновлении, можно сделать это в pacman.conf строчкойЕсли кому что тут показалось не то – прошу прощения :) Я просто предупредил всех, кого может затронуть это нововведение, и поделился одним из возможных решений проблемы. |