CentOS의 소스 코드에서 새 버전의 커널을 컴파일하고 설치하는 방법은 무엇입니까?
업무상 새로운 기술 솔루션을 사용해야 하는 경우가 많으므로 새로운 기능을 지원하려면 최신 버전의 커널이 필요합니다. CentOS 시스템에 포함된 커널 버전은 일반적으로 비교적 오래되었으므로 업데이트가 필요합니다. 시스템 커널을 업그레이드하고 새 버전의 커널을 설치합니다. 여기서는 CentOS 7 시스템을 예로 들어 최신 버전의 커널을 컴파일하고 설치하는 과정을 다음과 같이 요약합니다.
1. 최신 안정 버전의 커널 소스 코드 패키지를 /usr에 다운로드합니다. /local/src
, 그리고 현재 디렉터리에 압축을 푼다 /usr/local/src
,并解压到当前目录
2、解压内核源码包
3、从 /boot 目录将现有版本的内核编译config配置文件拷过来到放到新的内核源码解压目录内并重命名为.config的隐藏文件
[root@localhost src]# cd linux-5.2.11 [root@localhost linux-5.2.11]# cp /boot/config-3.10.0-957.el7.x86_64 ./.config
从boot目录拷贝原内核的config文件过来主要是为了方便,这个文件保存了在安装系统时内核所安装的模块配置信息(否则需要重新手动指定每一个模块的编译配置)。
4、安装依赖包
安装开发工具包组
[root@localhost linux-5.2.11]# yum -y groupinstall "development tools"
安装ncurse-devel包 (make menuconfig 文本界面窗口依赖包)
[root@localhost linux-5.2.11]# yum -y install ncurses-devel
5、运行 make menuconfig,开启文本界面的编译选项菜单窗口,可以对内核加载的模块编译选项进行调整,如修改编译后的内核名称、新添加之前系统缺少的模块等。
修改内核名称:
General setup --->local version -append to kernel release
此处修改内核名称为 5.2.11-001.el7.x86_64
新添加NTFS文件系统支持模块:
File systems --->DOS/FAT/NT Filesystems --->NTFS file system support
2. 커널 소스 패키지의 압축을 푼다
3. 커널 컴파일 구성 구성 파일의 기존 버전을 /boot 디렉터리에서 새 디렉터리로 복사합니다. 커널 소스 코드 압축 해제 디렉터리를 .config로 이름을 바꿉니다. 숨겨진 파일[root@localhost linux-5.2.11]# make -j 4 #根据CPU核数开启多线程编译以加快编译速度
부팅 디렉터리에서 원본 커널 구성 파일을 복사하는 것은 주로 편의를 위한 것입니다. 이 파일은 시스템을 설치할 때 커널이 설치한 모듈 구성 정보를 저장합니다. 각 모듈의 컴파일 구성을 다시 수동으로 지정해야 합니다.)
4. 종속성 패키지 설치
개발 도구 패키지 그룹 설치
[root@localhost linux-5.2.11]# yum -y install openssh-devel elfutils-libelf-devel bc
ncurse-devel 패키지 설치(menuconfig 텍스트 인터페이스 창 종속성 패키지 만들기)[root@localhost linux-5.2.11]# make modules_install
커널 이름 수정:
[root@localhost linux-5.2.11]# make install
여기에서 커널 이름을 5.2.11-001.el7.x86_64
새롭게 추가된 NTFS 파일 시스템 지원 모듈:파일 시스템 --- > ;DOS/FAT/NT 파일 시스템 --->NTFS 파일 시스템 지원
grub2-set-default 0 #0表示 /boot/grub2/grub.cfg 文件中排在第一位的 menuentry 段
[root@localhost ~]# uname -r 5.2.11-001.el7.x86_64
위 내용은 CentOS의 소스 코드에서 새 버전의 커널을 컴파일하고 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!