[devel] Ошибка обновления пакета: симлинк вместо директории
Sergey Y. Afonin
asy на altlinux.ru
Вс Ноя 13 21:26:55 MSK 2011
On Wednesday 23 December 2009, Michael A. Kangin wrote:
> При апгрейде устанавливается только LocalSettings.d. index.php не появляется.
> И никаких сообщений об ошибках нету. Снос предсуществующей директории
> /var/www/webapps/mediawiki/config в %pre не помогает.
Тут какая-то грабля глубже... Тоже возникла нужда сделать такую замену.
Сделал вот так:
%pre
if [ -d %_libdir/%binname/data ] ; then
if ! [ -L %_libdir/%binname/data ] ; then
rm -rf %_libdir/%binname/data
ls -l %_datadir/%binname/data/*
fi
fi
симлинк - это
cd %{buildroot}%{_libdir}/%{binname}
ln -s %{_datadir}/%{binname}/data data
Пакет, куда попадает %_datadir/%binname/data, ставится до основного
пакета с симлинком. Этот вот ls (для отладки добавил) выводит нормальное
содержимое каталога, выводит его и ls в %post. То есть, вроде бы, всё
правильно, подмена происходит, данные в %_datadir живые. Но вот после
окончания установки %{_datadir}/%{binname}/data уже пуст. И кто там всё
выносит ?
--
С уважением, Сергей Афонин
Подробная информация о списке рассылки Devel