리눅스 배포판 커널 디버그정보 패키지 검색 방법.
리눅스 코어 분석은 해당 커널의 디버그정보 패키지를 찾는 것이다. 메모리에서 커널 버전을 추출 할 때 첫 번째 해야 할 일은 커널 릴리스 하는 것이며, 소스 및 심볼 정보가 있는 디버그 패키지를 찾는게 가장 먼저 선행 되어야 하기 때문에 디버깅 정보가 담긴 패키지를 찾는다.
요즘 가장 많이 사용되는 배포한 ubuntu, RHEL, SLES에 대한 패키지를 찾는 방법을 정리 해 놓는다.
우분투 릴리즈 목록: https://wiki.ubuntu.com/Releases
우분투 릴리즈 및 커널 버전 목록: https://en.wikipedia.org/wiki/Ubuntu_version_history#Table_of_versions
디버깅 정보 저장소: http://ddebs.ubuntu.com/pool/main/l/linux/
패키지 이름
kernel: linux-image
symbol: linux-image-*-dbgsym
source: linux-source
패키지 추출 명령어.
ar -x linux-image-3.2.0-41-generic-dbgsym_3.2.0-41.66_amd64.ddeb
데비안
디버깅 정보 추가
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=365349
예: https://packages.debian.org/jessie/linux-image-3.16.0-4-amd64-dbg
레드햇
레드햇 엔터프라이즈 릴리자 정버: https://access.redhat.com/articles/3078
CentOS 디버그 패키지는 Redhat과 호환
패키지 저장소: http://vault.centos.org/
디버깅 저장소: http://debuginfo.centos.org/
패키지 이름
kernel: kernel
source: kernel-debuginfo-common
symbol: kernel-debuginfo
패키지 추출
rpm2cpio kernel-2.6.32-573.el6.x86_64.rpm | cpio -idmv
오라클 UEK(Unbreakable Enterprise kernel)
패키지 저장소 : http://public-yum.oracle.com/repo/OracleLinux/ ---> 저장소가 자꾸 변경됨, 구글 검색
디버깅 저장소 : https://oss.oracle.com/ol6/debuginfo/
CentOS 추가 리소스_정장소_디버그정보: https://wiki.centos.org/AdditionalResources/Repositories/DebugInfo
페도라 패키징 디버그 정보: https://fedoraproject.org/wiki/Packaging:Debuginfo
SLES 커널 릴리즈: https://wiki.microfocus.com/index.php/Kernel_versions
SLES 디버깅 정보: https://www.novell.com/support/#3074997
zypper search -s 'kernel-default'
zypper install --download-only --oldpackage kernel-default-debuginfo-3.0.101-0.15.1
# debuginfo package needs the kernel binary in SLES
zypper install --download-only --oldpackage kernel-default-base-3.0.101-0.15.1
# find the rpm in /var/cache/zypp/packages
SLES 저장소를 찾지 못한 상태.
댓글 없음:
댓글 쓰기