The Linux Kernel Archives Index of /pub/linux/kernel/
我下载的版本为:linux-5.9.1.tar.xz
解压后的大小为:
du -sh linux-5.9.1/ 1.1G linux-5.9.1/或者
yum group install "Development Tools"安装
yum install ncurses-devel bison flex elfutils-libelf-devel openssl-devel需要更新较新的GCC编译器,否则会报错如下:
CC /usr/src/kernels/linux-5.9.1/tools/objtool/librbtree.o CC scripts/mod/empty.o In file included from ././include/linux/compiler_types.h:74:0, from <命令行>:0: ./include/linux/compiler-gcc.h:15:3: 错误:#error Sorry, your compiler is too old - please upgrade it. # error Sorry, your compiler is too old - please upgrade it. ^ make[2]: *** [scripts/mod/empty.o] 错误 1 make[1]: *** [prepare0] 错误 2 make[1]: *** 正在等待未完成的任务.... LD /usr/src/kernels/linux-5.9.1/tools/objtool/objtool-in.o LINK /usr/src/kernels/linux-5.9.1/tools/objtool/objtool创建缓存
yum makecache列出可安装的工具组
yum grouplist安装对应的工具组
yum groupinstall "Development Tools"安装高版本的gcc编译器 安装 CentOS SCLo RH 仓库:
yum install centos-release-scl-rh安装 devtoolset-9-gcc rpm 包:
yum install devtoolset-9-gcc使devtoolset-9生效
scl enable devtoolset-9 bash gcc --version或者
## use 4 core/thread ## $ make -j 4 ## get thread or cpu core count using nproc command ## $ make -j $(nproc)进入漫长的编译过程
... CC [M] drivers/pci/hotplug/acpiphp_ibm.o CC [M] sound/core/isadma.o AR drivers/pci/hotplug/built-in.a AR drivers/pci/controller/dwc/built-in.a CC kernel/crash_dump.o CC [M] sound/core/sound_oss.o AR drivers/pci/controller/mobiveil/built-in.a CC drivers/pci/controller/vmd.o ... CC [M] fs/nfs/super.o CC drivers/pci/probe.o CC [M] sound/core/pcm.o ...我在安装过程中遇到存储不足的情况,用下面命令查看并清理对应文件
du -h -x --max-depth=1这会安装三个后续grub会用到的文件
initramfs-5.9.1.imgSystem.map-5.9.1/boot/vmlinuz-5.9.1如果是CentOS/RHEL/Oracle/Scientific and Fedora Linux
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg $ sudo grubby --set-default /boot/vmlinuz-5.9.1 #安装自己定义的名称来设置如果是Debian/Ubuntu Linux
$ sudo update-initramfs -c -k 5.9.1 $ sudo update-grub可以用下面的命令确认是否执行成功:
grubby --info=ALL | more grubby --default-index grubby --default-kernel进入系统后:
uname -mrs Linux 5.9.1 x86_64《How to compile and install Linux Kernel 5.1.2 from source code》
以上内容由RTOAX翻译整理自网络。