2010-08-03 2 views
0

Как отключить удаленный файл объекта?Как отключить объектный файл?

Не может ли это сделать для меня эв-unstrip от elfutils?

Мне нужно это, чтобы преобразовать ядро ​​zImage в vmlinux без перекомпиляции.

Это помимо моего сценария:

magic="1f 8b 08 00" 
full_line=$(od -A d -t x1 zImage | grep "$magic") 
offset_full_line=$(echo $full_line | cut -f1 -d" ") 
data_full_line=$(echo $full_line | cut -f1 -d" " --complement) 
index=$[ $(awk -v a="$data_full_line" -v b="$magic" 'BEGIN{print index(a,b)}')/3 ] 
offset=$[ 10#$offset_full_line + $index ] 

dd if=zImage bs=1 skip=$offset 2>/dev/null | zcat > vmlinux 

Но мой результат vmlinux имеет неизвестный формат, поскольку он не содержит ELF заголовков, так как я могу восстановить эти заголовки?

ответ

2

Ваш вопрос не имеет смысла. Если объектный файл был удален, то, очевидно, информации больше нет. Вам некуда извлекать данные с разделяемыми данными.

+0

Это может иметь смысл. Заголовок ELF, на который он ссылается, вероятно, просто волшебство, чтобы заставить его загружаться, а не выполнять поиск символов. – synthesizerpatel