외부 장치에서 Linux 커널을 컴파일한 후 외부 모듈을 구축하는 데 문제가 있습니다. 라이브 패치 4.19.103이 포함된 4.19.103 커널입니다.
내 온보드 스토리지 디스크는 <3Gb이므로 외부 블록 장치에서 컴파일하고 설치합니다. 이렇게 하면 외부 모듈을 빌드하는 데 필요한 커널 "빌드" 및 "소스" 디렉터리가 이제 설치된 외부 장치를 가리킵니다.
ll /lib/modules/4.19.103-rt42/
lrwxrwxrwx 1 root root 24 Feb 23 17:20 build -> /home/user/mnt/linux-4.19.103
lrwxrwxrwx 1 root root 24 Feb 23 20:15 source -> /home/user/mnt/linux-4.19.103
빌드 디렉터리는 9Gb이고 이를 3Gb 온보드 디스크로 이동해야 합니다.
kernel-devel
기본 커널을 사용하면 "build" 디렉터리가 가리키는 패키지를 설치하여 외부 모듈을 쉽게 추가할 수 있습니다.
ll /lib/modules/4.18.0-147.5.1.el8_1.x86_64/
lrwxrwxrwx. 1 root root 44 Feb 4 18:07 build -> /usr/src/kernels/4.18.0-147.5.1.el8_1.x86_64
이 디렉토리는 91Mb에 불과합니다. (내 9Gb 빌드 디렉토리와 비교)
기본적으로 내가 묻는 것은: 패키지가 디렉터리 kernel-devel
로 수행하는 것과 유사하게 빌드 디렉터리를 축소하는 방법이 있습니까 /usr/src/kernels/4.xxx
? 이 디렉토리에는 Makefiles/Kconfig와 일부 헤더만 있는 것 같습니다. 그러면 모든 빌드 개체와 소스 파일을 삭제 home/user/mnt/linux-4.19.103
하고 루트 파일 시스템으로 이동할 수 있습니까? 설치 중에 make 옵션이 있나요? 나는 현재 다음을 사용합니다:
make modules_install headers_install install