[devel] rpm: symlink to dir
Vladimir D. Seleznev
vseleznv на altlinux.org
Вт Дек 29 15:21:39 MSK 2020
On Tue, Dec 29, 2020 at 09:31:27AM +0300, Andrey Savchenko wrote:
> On Mon, 28 Dec 2020 23:46:53 +0300 Alexey V. Vissarionov wrote:
> > On 2020-12-28 23:16:31 +0300, Andrey Savchenko wrote:
> >
> > >>> Если честно, я не совсем понимаю, зачем вообще нужен %gost.
> > >> %ghost
> > >>> Я знаю, что он делает — позволяет закрепить несуществующий
> > >>> в пакете файл за пакетом — но мне представляется, что это
> > >>> ошибочная концепция и её использование говорит об ошибке в
> > >>> пакетировании пакета.
> > >> Простейший пример: пакет %name пишет %_logdir/%name.log и даже
> > >> еженедельно ротирует его через %_sysconfdir/logrotate.d/%name;
> > >> в результате этого появляются файлы %_logdir/%name.log.[1-3]
> > >> Теперь представь, что админ желает удалить пакет %name. Напрочь,
> > >> через rpm -e %name
> > >> В этом случае указание %ghost для всех этих логов позволяет их
> > >> вычистить вместе с пакетом, а не свинячить в системе.
> > > За удаление логов вместе с пакетом нужно самое малое голову
> > > отрывать.
> >
> > С чего бы вдруг? Сам насвинячил, сам за собой убрал.
>
> Это не мусор, это пользовательские данные. При удалении пакета не
> должны удаляться результаты его работы. Ещё предложи грохать БД при
> удалении mysql.
В указанном примере файлы журнала пакета ротейтятся. Логично при
удалении пакета удалять то, что и так должно было быть заротейчено.
Кстати, файлы системного журнала _не_ помечены %ghost, что тоже логично.
В общем случае %ghost нужен для обозначения артефактов пакета, которые
следует почистить при его удалении. Странно считать эту директиву
ошибкой упаковки.
> Впрочем, адепты DRM такой подход одобряют: они как раз мечтают
> о самоуничтожении данных сразу после использования, но не ожидал,
> что ты к ним относишься.
>
> > Кому нужны логи - `man cp` и `man rsync`.
>
> Не нужно за админов решать, что им нужно, а что грохнуть без спросу.
> Админы это не любят.
Ну, не совсем без спросу — админ же сам удалил пакет. Какие файлы
принадлежат пакету не является тайной. Не все файлы, принадлежащие
пакету, при этом, удаляются: например, могут остаться копии изменённых
конфигов с добавлением .rpmsave в имени файлов.
--
WBR,
Vladimir D. Seleznev
Подробная информация о списке рассылки Devel