Ну я и не запускал и всё у меня работало =)
Думаю, если от чего и могут зависить, то скорее от glibc или чего-то подобного.
Кроме того, у меня при установке prelink сам создался файлик /etc/cron.daily/prelink с вот таким содержимым:
#!/bin/sh
. /etc/conf.d/prelink
log="/var/log/prelink.log"
case $PRELINKING in
yes|no);;
*) exit 0;;
esac
ionice -c3 -p $$ >/dev/null 2>&1
renice +19 -p $$ >/dev/null 2>&1
if [ "$PRELINKING" != yes ]; then
sed -ri '/^[[:space:]]*#?[[:space:]]*KDE_IS_PRELINKED=/s:.*:#KDE_IS_PRELINKED=1:' /etc/env.d/*kde* 2>/dev/null
if [ -f /etc/prelink.cache ]; then
echo /usr/sbin/prelink -uav > ${log}
/usr/sbin/prelink -uav >> ${log} 2>&1 \
|| echo Prelink failed with return value $? >> ${log}
rm -f /etc/prelink.cache
# Restart init if needed
[ -n "$(find `ldd /sbin/init | awk 'NF == 4 { print $3 }'` /sbin/init -ctime -1 2>/dev/null )" ] && /sbin/telinit u
fi
exit 0
fi
sed -ri '/^[[:space:]]*#?[[:space:]]*KDE_IS_PRELINKED=/s:.*:KDE_IS_PRELINKED=1:' /etc/env.d/*kde* 2>/dev/null
if [ ! -f /etc/prelink.cache -o -f /var/lib/misc/prelink.force ] \
|| grep -q '^prelink-ELF0.[0-2]' /etc/prelink.cache; then
# If cache does not exist or is from older prelink versions or
# if we were asked to explicitely, force full prelinking
rm -f /etc/prelink.cache /var/lib/misc/prelink.force
PRELINK_OPTS="$PRELINK_OPTS -f"
date > /var/lib/misc/prelink.full
cp -a /var/lib/misc/prelink.full /var/lib/misc/prelink.quick
elif [ -n "$PRELINK_FULL_TIME_INTERVAL" \
-a "`find /var/lib/misc/prelink.full -mtime -${PRELINK_FULL_TIME_INTERVAL} 2>/dev/null`" \
= /var/lib/misc/prelink.full ]; then
# If no more than PRELINK_NOEMER_CHECK_INTERVAL days elapsed from last prelink
# (be it full or quick) and no packages have been upgraded via rpm since then,
# don't do anything.
[ "`find /var/lib/misc/prelink.quick -mtime -${PRELINK_NOEMER_CHECK_INTERVAL:-7} 2>/dev/null`" \
-a -f /var/cache/edb/counter \
-a /var/cache/edb/counter -ot /var/lib/misc/prelink.quick ] && exit 0
date > /var/lib/misc/prelink.quick
# If prelink without -q has been run in the last
# PRELINK_FULL_TIME_INTERVAL days, just use quick mode
PRELINK_OPTS="$PRELINK_OPTS -q"
else
date > /var/lib/misc/prelink.full
cp -a /var/lib/misc/prelink.full /var/lib/misc/prelink.quick
fi
echo /usr/sbin/prelink -av $PRELINK_OPTS > ${log}
/usr/sbin/prelink -av $PRELINK_OPTS >> ${log} 2>&1 \
|| echo Prelink failed with return value $? >> ${log}
# Restart init if needed
[ -n "$(find `ldd /sbin/init | awk 'NF == 4 { print $3 }'` /sbin/init -ctime -1 2>/dev/null )" ] && /sbin/telinit u
exit 0
В подробности не вдавался... не вчитывался =) даже не знаю, запускается или нет... я вообще prelink запускал сто лет назад... не знаю, реально нужен он мне или нет.
Если бы модули ядра модифицировал... логично. может быть надо было запускать. Но зачем ему их модифицировать?
Если я не ошибаюсь, модули ни от каких сторонних библиотек не зависят...
Почитайте, что такое предварительное связывание... и для чего оно нужно. Модули ядра (как и само ядро) компилится статически, насколько я понимаю... ибо если бы оно зависело от какой-то библиотеки... не грузилось бы c /boot-раздела само. без доступа к /usr/lib
То же и модулей касается.