첫 번째 단계에서는 먼저 커널 소프트웨어 패키지를 다운로드해야 합니다.
두 번째 단계는 현재 디렉토리에 Linux* 버전에 해당하는 소프트웨어 패키지의 압축을 푸는 것입니다.
tar xvf linux-4.12.tar.xz
세 번째 단계는 cd linux-4.12와 같은 압축이 풀린 디렉터리로 전환하고 후속 컴파일 및 설치 작업은 이 디렉터리에서만 수행할 수 있습니다. 네 번째 단계는 커널 모듈 기능을 복사하는 것입니다.
cp /boot/config-$(uname -r) .config
yum -y groupinstall "Development Tools"
여섯 번째 단계는 컴파일을 수행하고 메뉴를 사용하여 오류가 발생하면 구성하는 것입니다. 컴파일 중에 보고된 내용은 오류 메시지에 따라 해당 소프트웨어 패키지를 설치하세요
make menuconfig
7번째 단계는 커널을 컴파일하는 것입니다. 컴파일 과정이 조금 길기 때문에 인내심을 갖고 작업을 종료하지 마세요.
make -j 2 使用2个CPU多线程同时编译
8번째 단계입니다. 아래와 같이 오류 프롬프트에 따라 소프트웨어 패키지를 설치하는 것입니다
10단계를 계속 컴파일하는 것입니다. 컴파일이 완료되고, 데이터베이스를 업데이트하면 커널에 컴파일한 모듈이 성공했는지 확인할 수 있습니다openssl-devel 소프트웨어 패키지를 설치하라는 메시지가 표시됩니다
yum -y install openssl-devel 根据错误提示安装相应的软件开发包아홉 번째 단계는 make -j 2
updatedb 更新数据库 locate ntfs.ko 查看我们编译进内核的ntfs模块是否存在于内核中
make modules_install
Twelve 1단계: 커널을 /boot 디렉토리에 복사하고 grub 파일을 수정합니다. Make가 실행 시 오류를 보고합니다. 오류가 보고되면 프롬프트에 따라 해당 소프트웨어 패키지를 설치합니다.
make install 将内核拷贝到/boot目录下并修改grub文件 报错信息如下
yum -y install elfutils-libelf-devel 安装elfutils-libelf-devel包 make install 继续执行13단계 /boot 디렉토리 -4.12.0-danran 커널 파일에 vmlinuz가 생성되었는지 확인하고 grub.cfg 또는 grub.conf 파일이 변경되었는지 확인하세요
/boot/vmlinuz-4.12.0-danran cat /boot/grub2/grub.cfg 查看grub配置文件,里面多了一个新内核菜单
14단계 재부팅 시스템을 재부팅하고 시작할 새 커널을 선택하세요
커널 컴파일로 생성된 파일을 정리하세요
cd linux-4.12 make clean:清理大多数编译生成的文件,但会保留config文件等; make mrproper:清理所有编译生成的文件、config及某些备份文件 make distclen:mrproper、patches以及编辑器备份文件
위 그림과 같이 openssl-devel 소프트웨어 패키지를 설치하라는 메시지가 표시됩니다
.ko" 새로 컴파일된 모든 ko 모듈 파일 보기 kernel
make install 커널을 /boot 디렉터리에 복사하고 grub 파일을 수정합니다. Make 실행 시 프롬프트에 따라 해당 소프트웨어 패키지를 설치합니다.
yum -y install elfutils-libelf- devel elfutils-libelf-devel 패키지 설치
ll /boot/vmlinuz-4.12.0-danran vmlinuz-4.12.0-danran 커널 파일이 /boot 디렉토리에 생성되었는지 확인
cat /boot /grub2/grub.cfg grub 구성 파일을 확인하세요. 새 커널 메뉴가 있습니다.
reboot 시스템을 재부팅하고 시작할 새 커널을 선택하세요
ls linux-4.12/fs/ntfs /ntfs.ko ntfs 모듈이 설치되어 있는지 확인
cd linux-4.12 커널 디렉터리로 들어갑니다
make fs/ntfs/ntfs.ko ntfs를 다시 컴파일합니다. ko 모듈 파일
ll fs/ntfs/ntfs.ko ntfs.ko 모듈 보기 파일이 컴파일되어 생성되었는지 여부
cp fs/ntfs/ntfs.ko /lib/modules 모듈 파일을 별도로 복사합니다. /lib/modules
커널에 대한 관련 지식 포인트를 보려면 링크를 클릭하세요
위 내용은 커널 컴파일 단계의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!