On Fri, 21 Apr 2023 00:43:42 +0300 Dmitry V. Levin wrote: > On Thu, Apr 20, 2023 at 02:15:19PM +0300, Mikhail Efremov wrote: > > Hello! > > > > Есть мысль увеличить UID_MIN/GID_MIN по умолчанию до 1000, в апстриме и > > во всех других дистрибутивах это давно уже сделано. Системных > > пользователей все больше и лучше иметь для них пространство UID с > > запасом. > > Единственной проблемой мне видится то, что нужно сохранить текущие > > значения в /etc/login.defs при обновлении, переход пользователей > > в системные может привести к неизвестным побочным эффектам. Если > > login.defs редактировался, то проблемы нет, он noreplace и будет создан > > login.defs.rpmnew. А вот если не редактировался, то значения > > UID_MIN/GID_MIN все равно надо бы сохранить старые. Мне в голову > > приходит только сохранять в файл в /tmp при обновлении (в %pre) и > > восстанавливать в %post. Если у кого есть идеи как это сделать > > лучше/проще, то с удовольствием выслушаю. > > Ещё можно, по аналогии с control-dump/control-restore, при обновлении > пакета сохранять не весь файл, а только интересующие текущие значения > в %pre и восстанавливать их в %post. Я это и имел в виду, сохранять весь login.defs смысла нет. В Fedora, кстати, для таких вещей рекомендуют использовать %{_localstatedir}/lib/rpm-state/, но у нас такого каталога нет. https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/ Ну и делать это нужно только один раз, при обновлении с версии shadow со старым значением по умолчанию, при следующий обновлениях файл уже будет отредактирован и будет создаваться login.defs.rpmnew. Т.е. в %pre видимо нужно rpm -q shadow смотреть и сравнивать. А восстанавливать тогда можно в %triggerpostun на старый пакет. Жаль, %triggerprein нет :). -- WBR, Mikhail Efremov