2010-08-03 8 views
0

스트립 된 오브젝트 파일을 어떻게 스트립 제거합니까?오브젝트 파일의 스트립을 해제하려면 어떻게해야합니까?

elfutils에서 eu-unstrip이 나를 대신 할 수 있습니까?

다시 컴파일하지 않고 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

관련 문제