/ lib системный каталог, будет содержать необходимые файлы библиотеки, установленные во время установки и позже от любых дополнительных установок пакета с помощью об/мин или tarballs. У Вас есть какие-либо резервные копии для хоста, это на RAID или разделе LVM? Для этого процедура будет отличаться. Однако / lib системный каталог, и его доступность в нормальном режиме важна для функционального выполнения хоста.
Я стремился бы предложить искать живой CD и загрузить систему с помощью CD и войти в спасательный режим. Кроме того, найдите, существует ли какая-либо машина в той же сети с мягкой фетровой шляпой 15 тех же установок изображения ранее. В противном случае установите машину с мягкой фетровой шляпой 15 тех же машин отдельно. Позволяет называют это удаленной машиной ради объяснения. Эта удаленная машина можно использовать для копирования / lib вся структура с символьными ссылками и всеми точно использующими rsync позже. Удостоверьтесь, что Вы устанавливаете rsync пакет. Кроме того, удостоверьтесь, что у Вас есть установленный ssh и работа удаленной машины с корневым позволенным входом в систему.
Примечание: Если у Вас нет другой машины затем, только альтернатива должна переустановить ОС с опцией, не перезаписывая ни одних из установленных данных Linux. Тем путем Вы удостоверитесь, чтобы все локальные данные по машине отправили ее предыдущую установку, является безопасным и нетронутым. И не воссоздавайте разделы. Если у Вас действительно есть другая машина, затем продолжаются затем, потому что это могло восстановить Вашу систему и составить ее и работающий больше ранее.
После того как Вы сделаны, загрузившись от CD и спасаете режим на локальной машине, устанавливаете сети и узнаете ipaddresses машины к спасению и от того, где / lib может быть скопирован. Определите / раздел lib на локальном жестком диске. Действительно ли это - отдельный раздел или было смонтировано от/. Обычно это - структура каталогов под/, не отдельный раздел. Если это находится непосредственно под / корневого раздела локального диска, удостоверьтесь, что Вы монтируете корень, раздел под говорит/mnt/localroot. Под/mnt/localroot/lib Вы найдете свою поврежденную / древовидную структуру lib. Однако Вы удостоверяетесь, что не используете/mnt/localroot, но только/mnt/localroot/lib/только. Будьте осторожны с запаздывающими наклонными чертами и путем.
mkdir /mnt/localroot
mount /dev/sda1 /mnt/localroot
ls -ld /mnt/localroot/lib
От приглашения оболочки найдите rsync двоичный файл и начните вытягивать / содержание lib от удаленной машины до локального смонтированного каталога lib в/mnt/localroot/lib/.
/usr/bin/rsync --delete -avz -e /usr/bin/ssh <remote-machine-ip-address>:/lib/ /mnt/localroot/lib/
После того как синхронизация завершена, выполните ту же команду rsync снова. После этого перезапустите систему, выньте CD начальной загрузки и затем попытайтесь загрузиться от личинки в нормальном режиме и определите журналы, что каждый сервис начал правильно с любыми ошибками.
Хорошо я не полагаю, что стандартный пакет ядра Fedora будет включать какие-либо модули, которые инициировали бы эту инфекцию, таким образом, вопрос, что другие модули ядра Вы установили?
Общие кандидаты были бы графическими драйверами (хотя я думаю, что они главным образом установят "собственный" бит), и драйверы беспроводных устройств.
Если можно найти что-нибудь в lsmod
вывод, что Вы думаете, может быть кандидатом, затем выполненным modinfo <module-name>
и посмотрите, включает ли вывод intree: Y
поскольку любой модуль без этого инициирует инфекцию, которую Вы видите.
ОБНОВЛЕНИЕ: rts5139
модуль, в котором Вы видите lsmod
но то, которое, кажется, не находится в Вашей системе, находится, вероятно, в initrd и загружается оттуда рано в процессе начальной загрузки, прежде чем основная файловая система будет смонтирована.
Это также объясняет, почему помещение в черный список не будет работать, поскольку необходимо было бы восстановить initrd с обновленным черным списком. Восстановление initrd с dracut
заставит модуль уходить так или иначе все же.
Это могло бы быть (по крайней мере, частично) vboxdrv модулем ядра VirtualBox. Это - GPL'd, но специалисты по обслуживанию ядра теперь отмечают ядра с помощью загруженного, как испорчено. См. https://lkml.org/lkml/2011/10/6/317 для получения информации.
Не уверенный при разгрузке того модуля "не испортит" ядро, но если у Вас есть загруженный, это, вероятно, что вызывает его (по крайней мере, частично).
Информация относительно значения числа может быть найдена здесь: http://kmaiti.blogspot.com/2011/09/how-to-check-whether-current-running.html Это не говорит Вам, какой модуль, но Вы видите причины. В основном, если значение не 0, оно испорчено.
vboxdrv
не перечислен lsmod
. Я видел, что список ядра заражает значения прежде. Однако 4096 не перечислен, и это не может быть сгенерировано путем объединения любого из других битов. Я предполагаю, что документация стара.
– drs
18.04.2013, 17:41
Проверьте свой журнал начальной загрузки или следите за Вашим процессом начальной загрузки на ранней стадии (прежде чем Ваши диски будут смонтированы RW). Это могло бы быть плохим модулем в Вашем initrd.
У Вас есть DKMS или что-то как этот на месте?
rts5139
по-видимому, драйвер для картридера Realtek, таким образом, я подозреваю, что Вам не удалось полностью удалить его.
– TomH
18.04.2013, 19:28
➜ ~ dmesg | grep -i 'taint'
[ 10.029333] vboxdrv: module verification failed: signature and/or required key missing - tainting kernel
[ 10.029364] Disabling lock debugging due to kernel taint
Еще один способ сделать это - это изучить Taint
файл каждого модуля в / sys / модуль
:
#!/bin/bash
cat /proc/modules |
while read module rest
do
if [[ $(od -A n /sys/module/$module/taint) != " 000012" ]] ; then
echo $module
fi
done
Если модуль не имеет значения, то Taint
Файл будет содержать только новую линию, которая OD
представляет как « 000012
». Вы не можете проверить размер файла, поскольку размеры все перечислены в размере 4 096 байтов независимо от их фактического содержания.
lsmod | awk '{print $1}' | xargs modinfo -F intree
. К сожалению, все результатыY
, за исключением одной строки,ERROR: Module rts5139 not found.
– drs 18.04.2013, 17:27lsinitrd
видеть еслиrts5139
присутствует. – TomH 18.04.2013, 19:27kmod-staging
пакет, но initrd все еще содержал некоторые модули подготовки. Переустановка ядра добилась цели. Если Вы обновите свой ответ с этой информацией, то я приму его. – drs 19.04.2013, 04:00