При упаковке продуктов, рассчитанных на установку «кустом», бывает необходимо разложить одно поддерево (которое предназначалось для лежания под /usr/local или /opt) на несколько обретающихся в /usr, /var, /etc. Порой при этом приходится корректировать и привязку к подобным каталогам в configure-скриптах и штатных конфигурационных файлах.
Вот попалось информативное письмо на примере Sedna; схожая ситуация с Sympa и, насколько понимаю, с Mozilla (вообще «да их тут тысячи» :).
Остаётся добавить, что в пакете fhs есть документ Filesystem Hierarchy Standard — не чрезмерно объёмное, но полезное пакаджеру чтиво.
Ну и сослаться на ALT Packaging Policy.
Date: Tue, 3 May 2005 21:29:44 +0400
From: Sergey Vlasov
To: sisyphus@
Subject: Re: [sisyphus] sedna package
[...]
rpm-пакет вообще не должен писать что-либо в /usr/local – этот каталог
зарезервирован для программ, установленных без использования менеджера
пакетов. Программы из rpm-пакетов ставятся в /usr.
Кроме того, имена исполняемых файлов sedna вступают в конфликт с другими
пакетами:
/usr/bin/cdb tinycdb
/usr/bin/sm inn
trn – в Сизифе нет, но была такая читалка новостей: http://trn.sf.net/
smsd – можно наступить на http://freshmeat.net/projects/smsd/
Обычно в подобных случаях в начало приписывают название проекта.
Как я понял, при этом данные хранятся в подкаталогах $SEDNA_HOME. Это
плохо (в частности, программы при своей работе не должны писать куда-либо
в /usr – соответствующая ФС может быть смонтирована только для чтения).
Данные, изменяемые в процессе работы (в данном случае – файлы баз данных
sedna), должны находиться в /var; файлы конфигурации (настраиваемые
администратором при установке, но не меняющиеся в процессе работы) – в
/etc.