linux编译内核
来源:互联网 发布:快看漫画mac 编辑:程序博客网 时间:2024/06/08 04:31
1. 安装编译内核所需要的软件
命令:
# apt-get update:必须先update
#apt-get install build-essential kernel-package libncurses5-dev fakeroot
2. 下载安装包
命令:
# wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.4.6.tar.xz
3.解压文件
命令:
#xz -d linux-4.4.6.tar.xz: 将 linux-4.4.6.tar.xz解压成 linux-4.4.6.tar
#tar xvf linux-4.4.6.tar:将linux-4.4.6.tar解压成linux-4.4.6
4.配置内核
4-1进入源码
# cd /home/a-zhang/linux-4.4.6 (cd命令进入源码目录)
4-2 净化源码
# make mrproper (得到源代码后,将其净化)
4-3 拷贝原来的配置
# cp /boot/config-'uname -r'-generic ./.config ('uname -r'-generic指现版本内核)
4-4 对内核选项进行配置
# make menuconfig (对内核选项进行配置,不需要配置,直接enter)(进去后save->ok->load->ok->exit)
4-5 建立依赖信息
# make dep:建立模块间的依赖信息.(不需要)
4-6 删除多余文件
# make clean 删除配置时留下的一些不用的文件(此步第一次不需要 第二次编译才需要)
5.编译内核
5-1 编译内核
#make bzImage (大写I)编译内核.
当然,在编译内核时,可通过make-j<n>来加速内核的编译,n一般等于CPU数量的两倍。单核,n=2;双核,n=4.即执行sudo make -j4就可以编译了!
5-2 编译内核模块
#make modules 编译内核模块.
5-3 出现的错误
6.安装新内核
# make modules_install (安装内核模块)
# make install(安装内核)
7.制作启动盘
7-1 更改内核
#mkinitramfs /lib/modules/4.4.6 -o /boot/initrd.img-4.4.6-generic
7-2 拷贝映像
7-2-1 内核映像
# cp arch/x86_64/boot/bzImage /boot/vmlinuz-4.4.6
注意:# cp /usr/src/linux-4.4.6/arch/i386/boot/bzImage
/boot/vmlinuz-4.4.6-generic(有额外的情况,i386文件夹里面有可能找不到bzImage文件,可以去x86-64里面找,一般会找到)
7-2-2 System.map
# cp System.map /boot/System.map-4.4.6
注意:# cp System.map /boot/System.map-KERNEL_VERSION(自己新内核版本号如:4.4.6)
7-2-3 System.map的软链接
#sudo ln -s /boot/System.map-KERNEL_VERSION /boot/System.map
7-3 修改grub配置文件
7-3-1 更新grub
#cd /boot/grub/ :切换目录
# sudo update-grub:将刚才编译的内核加入了Grub(此时就可以重启了,重启后在Grub启动项里多了Ubuntu, Linux 4.4.6-generic)
8.重启,使用新内核
(不是注销哦,是重启)
使用命令# uname -r 查看内核版本
命令:
# apt-get update:必须先update
#apt-get install build-essential kernel-package libncurses5-dev fakeroot
2. 下载安装包
命令:
# wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.4.6.tar.xz
3.解压文件
命令:
#xz -d linux-4.4.6.tar.xz: 将 linux-4.4.6.tar.xz解压成 linux-4.4.6.tar
#tar xvf linux-4.4.6.tar:将linux-4.4.6.tar解压成linux-4.4.6
4.配置内核
4-1进入源码
# cd /home/a-zhang/linux-4.4.6 (cd命令进入源码目录)
4-2 净化源码
# make mrproper (得到源代码后,将其净化)
4-3 拷贝原来的配置
# cp /boot/config-'uname -r'-generic ./.config ('uname -r'-generic指现版本内核)
4-4 对内核选项进行配置
# make menuconfig (对内核选项进行配置,不需要配置,直接enter)(进去后save->ok->load->ok->exit)
4-5 建立依赖信息
# make dep:建立模块间的依赖信息.(不需要)
4-6 删除多余文件
# make clean 删除配置时留下的一些不用的文件(此步第一次不需要 第二次编译才需要)
5.编译内核
5-1 编译内核
#make bzImage (大写I)编译内核.
当然,在编译内核时,可通过make-j<n>来加速内核的编译,n一般等于CPU数量的两倍。单核,n=2;双核,n=4.即执行sudo make -j4就可以编译了!
5-2 编译内核模块
#make modules 编译内核模块.
5-3 出现的错误
6.安装新内核
# make modules_install (安装内核模块)
# make install(安装内核)
7.制作启动盘
7-1 更改内核
#mkinitramfs /lib/modules/4.4.6 -o /boot/initrd.img-4.4.6-generic
7-2 拷贝映像
7-2-1 内核映像
# cp arch/x86_64/boot/bzImage /boot/vmlinuz-4.4.6
注意:# cp /usr/src/linux-4.4.6/arch/i386/boot/bzImage
/boot/vmlinuz-4.4.6-generic(有额外的情况,i386文件夹里面有可能找不到bzImage文件,可以去x86-64里面找,一般会找到)
7-2-2 System.map
# cp System.map /boot/System.map-4.4.6
注意:# cp System.map /boot/System.map-KERNEL_VERSION(自己新内核版本号如:4.4.6)
7-2-3 System.map的软链接
#sudo ln -s /boot/System.map-KERNEL_VERSION /boot/System.map
7-3 修改grub配置文件
7-3-1 更新grub
#cd /boot/grub/ :切换目录
# sudo update-grub:将刚才编译的内核加入了Grub(此时就可以重启了,重启后在Grub启动项里多了Ubuntu, Linux 4.4.6-generic)
8.重启,使用新内核
(不是注销哦,是重启)
使用命令# uname -r 查看内核版本
0 0
- Linux内核:编译内核
- 【LINUX内核】LINUX内核编译
- Android编译 & Linux内核编译
- linux内核编译kernel编译
- Linux编译内核详解
- Linux编译内核详解
- linux内核编译
- 菜鸟编译Linux内核
- linux内核编译详解
- LINUX内核编译(ZT)
- Linux 内核编译 全功略
- 第一次编译linux内核
- linux内核编译步骤
- Linux内核编译步骤
- Linux 内核编译详解
- Linux内核编译详解
- Linux内核编译
- linux内核编译
- mongodb和robomongo
- zzulioj 1905 小火山的跳子游戏(GCD+思维)
- c、c++写数据到文件
- 栈区,堆区,全局区,文字常量区,程序代码区 详解
- 并查集--HDU 3974Assign the task--带权
- linux编译内核
- 【zzuliOJ】1913 - 小火山的计算能力(模拟)
- Python 重点快捷键
- ZZULI-1905 小火山的跳子游戏 【GCD+LCM】
- POJ - 2010 Moo University - Financial Aid(二分)
- 1013: 字母排列
- 如何快速开发一个支持高效、高并发的分布式ID生成器(三)
- [Linux]互斥机制(中断屏蔽、原子操作、自旋锁、信号量)
- 内购