9.2.2. 소스 얻기
Linux 커널 소스는 패키지로 제공되므로 다음을 설치하여 검색할 수 있습니다. 리눅스 소스-버전 패키지. 그만큼 적절한 캐시 검색 ^linux-source 명령은 Kali가 패키지한 최신 커널 버전을 나열해야 합니다. 이 패키지에 포함된 소스 코드는 Linus Torvalds 및 커널 개발자가 게시한 소스 코드와 정확하게 일치하지 않습니다.4; 모든 배포판과 마찬가지로 Debian과 Kali는 Linux의 업스트림 버전에 적용할 수도 있고 그렇지 않을 수도 있는 여러 패치를 적용합니다. 이러한 수정에는 최신 커널 버전의 수정/기능/드라이버 백포트, 업스트림 Linux 트리에 아직 (완전히) 병합되지 않은 새로운 기능, 때로는 Debian 또는 Kali 관련 변경 사항도 포함됩니다.
이 섹션의 나머지 부분에서는 Linux 커널 4.9 버전에 중점을 두지만, 물론 예제는 원하는 특정 커널 버전에 맞게 조정할 수도 있습니다.
이 예에서는 리눅스 소스-4.9 바이너리 패키지가 설치되었습니다. 업스트림 소스가 포함된 바이너리 패키지를 설치하지만 다음과 같은 Kali 소스 패키지를 검색하지는 않습니다. 리눅스.
# 적절한 설치 linux-source-4.9 패키지 목록을 읽는 중... 완료 종속성 트리 작성
상태 정보 읽기 중 ... 완료
다음 추가 패키지가 설치됩니다: bc libreadline7
추천 패키지 :
libncurses-dev | ncurses-dev libqt4-dev
다음 새 패키지가 설치됩니다: bc libreadline7 linux-source-4.9
0개는 업그레이드되고, 3개는 새로 설치되고, 0개는 제거되고, 0개는 업그레이드되지 않습니다. 95.4MB의 아카이브가 필요합니다.
이 작업 후에 95.8 MB의 추가 디스크 공간이 사용됩니다.
계속하시겠습니까? [예/아니요] y
[...]
# ls /usr/src
리눅스-구성-4.9 리눅스-패치-4.9-rt.patch.xz 리눅스-소스-4.9.tar.xz
# 적절한 설치 linux-source-4.9 패키지 목록을 읽는 중... 완료 종속성 트리 작성
상태 정보 읽기 중 ... 완료
다음 추가 패키지가 설치됩니다: bc libreadline7
추천 패키지 :
libncurses-dev | ncurses-dev libqt4-dev
다음 새 패키지가 설치됩니다: bc libreadline7 linux-source-4.9
0개는 업그레이드되고, 3개는 새로 설치되고, 0개는 제거되고, 0개는 업그레이드되지 않습니다. 95.4MB의 아카이브가 필요합니다.
이 작업 후에 95.8 MB의 추가 디스크 공간이 사용됩니다.
계속하시겠습니까? [예/아니요] y
[...]
# ls /usr/src
리눅스-구성-4.9 리눅스-패치-4.9-rt.patch.xz 리눅스-소스-4.9.tar.xz
패키지에는 다음이 포함되어 있습니다. /usr/src/linux-source-4.9.tar.xz, 커널 소스의 압축 아카이브입니다. 이 파일을 새 디렉터리(바로 아래 디렉터리가 아님)에 추출해야 합니다. /usr/src/,
4https://kernel.org/
Linux 커널을 컴파일하는 데 특별한 권한이 필요하지 않기 때문입니다. 대신에, ~/커널/ 더 적절합니다.
$ mkdir ~/커널; CD ~/커널
$ tar -xaf /usr/src/linux-source-4.9.tar.xz
$ mkdir ~/커널; CD ~/커널
$ tar -xaf /usr/src/linux-source-4.9.tar.xz