[devel] rpm: symlink to dir

Alexey V. Vissarionov gremlin на altlinux.org
Пн Дек 28 09:38:02 MSK 2020


On 2020-12-28 01:51:24 +0300, Leonid Krivoshein wrote:

 >>>> Есть ли текущая актуальная инструкция как при нашем новом
 >>>> rpm перейти в пакете с симлинка на директорию?
 >>> День добрый. Возник еще один пакет, где хотелось бы перейти с
 >>> симлинка на каталог на реальный каталог. Появилась инструкция
 >>> как это сделать?
 >> Насколько я понимаю, инструкции не было (я бы ее вряд ли
 >> пропустил). Безболезненный переход, по-моему, в принципе
 >> невозможен, а снизить ущерб мне удавалось только совсем
 >> очевидным (и столь же колхозным) способом с временным пакетом
 >> и переносом файлов в два этапа (у меня это были конфиги, так
 >> что размер не напрягал), но после этого в ОС оставался мусор
 >> в виде файлов, не охваченных пакетной системой.
 >> Использовать этот способ для дистрибутива, наверное, лучше
 >> не надо.
 > Предложил бы для всех подобных симлинков (каталогов):
 > - использовать специальный файл в корне со списком путей,
 > подлежащих замене типа (например, /.rpmlinks);

Какому пакету он будет принадлежать?

 > - замена должна производиться в initrd (stage1)

То есть, мимо пакетной системы? Отказать, отменить и запретить.

Не говоря уж о том, что система может загружаться и без initrd.

 > при первой же перезагрузке, пока никто там ничего не использует;
 > - от rpm требуется обработка такой ситуации и "понимание"
 > временно непригодного состояния (до перезагрузки).

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

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

 > Т.е., мне кажется, если реализовать поддержку одновременно
 > и в rpm, и в make-initrd, должно получиться относительно
 > безболезненно.

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


-- 
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net


Подробная информация о списке рассылки Devel