Linux内核编译过程
2018-01-10 15:51
435 查看
环境配置:在虚拟机Oracle VM Virtual中运行Ubuntu 12。
获取内核,可以在https://www.kernel.org/下载最新版本的内核,笔者下载的是linux-4.5.2.tar.xz。笔者使用共享文件功能在Windows系统和ubuntu系统间交换文件,在windows系统用迅雷下载Linux内核,下载完成之后,放入到共享文件中。(在虚拟机中添加共享文件功能可百度)。
打开终端,使用命令sudo su获得root权限,进入到共享文件目录下/media/sf_share_file(sf_share_file为自己定义的共享文件夹名字),使用mv linux-4.5.2.tar.xz /usr/src 命令将内核压缩包移动到usr/src目录下(.xz与/usr之间有一个空格),使用tar -Jxvf linux-4.5.2.tar.xz解压内核,注意不能在共享文件夹中解压内核,否则编译过程中会出现错误。
执行命令:apt-get install build-essential kernel-package libncurses5-dev fakeroot;apt-get install libssl-dev;安装编译内核所需的程序。
编译配置:make menuconfig;配置内核,可以选择默认的,然后退出,生成.config文件,可以用vim打开。若编译过多次,可执行make mrproper命令,清除之前编译产生的文件,首次编译则不需要。一般为了保证当前ubuntu系统
的正常使用,可以使用当前系统的 配置文件,配置文件在/boot目录下,配置文件名为config-3.13.0-32-generic,3.13.0-32为当前内核的版本号。在/boot目录下,执行命令cp config-3.13.0-32-generic /usr/src/.config 替换生成的.config文件。
或者执行make menuconfig ,点击load,删除.config,输入/boot/config-3.13-32-generic 替换生成的.config,保存并退出。
开始编译:make bzImage;编译启动映像
make modules;编译模块
这两个过程需花费两个小时左右。
安装内核:make modules_install;安装模块
make install;安装内核
更改启动grub:mkinitramfs 4.5.2 -o /boot/initrd.img-4.5.2;制作initrd.img
update-grub2;更改grub
重启系统,uname -a 查看内核版本号
获取内核,可以在https://www.kernel.org/下载最新版本的内核,笔者下载的是linux-4.5.2.tar.xz。笔者使用共享文件功能在Windows系统和ubuntu系统间交换文件,在windows系统用迅雷下载Linux内核,下载完成之后,放入到共享文件中。(在虚拟机中添加共享文件功能可百度)。
打开终端,使用命令sudo su获得root权限,进入到共享文件目录下/media/sf_share_file(sf_share_file为自己定义的共享文件夹名字),使用mv linux-4.5.2.tar.xz /usr/src 命令将内核压缩包移动到usr/src目录下(.xz与/usr之间有一个空格),使用tar -Jxvf linux-4.5.2.tar.xz解压内核,注意不能在共享文件夹中解压内核,否则编译过程中会出现错误。
执行命令:apt-get install build-essential kernel-package libncurses5-dev fakeroot;apt-get install libssl-dev;安装编译内核所需的程序。
编译配置:make menuconfig;配置内核,可以选择默认的,然后退出,生成.config文件,可以用vim打开。若编译过多次,可执行make mrproper命令,清除之前编译产生的文件,首次编译则不需要。一般为了保证当前ubuntu系统
的正常使用,可以使用当前系统的 配置文件,配置文件在/boot目录下,配置文件名为config-3.13.0-32-generic,3.13.0-32为当前内核的版本号。在/boot目录下,执行命令cp config-3.13.0-32-generic /usr/src/.config 替换生成的.config文件。
或者执行make menuconfig ,点击load,删除.config,输入/boot/config-3.13-32-generic 替换生成的.config,保存并退出。
开始编译:make bzImage;编译启动映像
make modules;编译模块
这两个过程需花费两个小时左右。
安装内核:make modules_install;安装模块
make install;安装内核
更改启动grub:mkinitramfs 4.5.2 -o /boot/initrd.img-4.5.2;制作initrd.img
update-grub2;更改grub
重启系统,uname -a 查看内核版本号
相关文章推荐
- linux内核编译过程的最终总结版
- linux系统2.6内核编译全过程
- 走向Linux系统高手之路 内核编译过程解析
- 【Linux】Linux添加系统调用以及内核编译过程
- Linux 2.6内核编译过程
- 菜鸟浅谈Linux内核编译过程...
- Linux内核编译完整过程
- Linux内核编译过程分析
- 一个Linux爱好者的2.6.11内核编译过程
- 【学习笔记】编译Linux内核(上)--编译基于x86平台的Linux内核的过程
- 走向Linux系统高手之路 内核编译过程解析
- linux内核编译过程的最终总结版
- Linux 内核编译过程
- Linux 内核编译过程说明 (以PC Linux为例)
- linux内核编译过程中出现两个错误的解决方法~!
- Linux内核编译过程详解(kernel2.6.7) 转
- fedoral 17-x86编译linux-4.5.4内核浅析及编译过程
- Linux嵌入式内核编译过程
- 内核编译过程:linux-3.0.8
- 打造自己的专属linux(四):Linux内核编译过程简介