DannyWu带你学习Linux 内核编译,高效不走坑

  • 时间:2018-11-13 23:28 作者:DannyWu 来源:DannyWu 阅读:706
  • 扫一扫,手机访问
摘要:前言Linux操作系统最重要的部分莫过于内核了,它负责管理系统的进程、内存、驱动程序、文件系统和网络系统,系统的性能和稳固性也由内核来决定。因为Linux是开源的,因而Danny就在想,能不能自己将Linux内核源码进行编译,根据自己的需求打造一个更高效、更稳固的Linux内核呢?下面Danny以U

前言

  • Linux操作系统最重要的部分莫过于内核了,它负责管理系统的进程、内存、驱动程序、文件系统和网络系统,系统的性能和稳固性也由内核来决定。因为Linux是开源的,因而Danny就在想,能不能自己将Linux内核源码进行编译,根据自己的需求打造一个更高效、更稳固的Linux内核呢?下面Danny以Ubuntu为例带你学习如何编译Linux内核。

1.下载Linux内核源码压缩包

  • 首先去Linux内核官网(http://www.kernel.org)下载Linux内核的压缩文件。

2.解压内核源码并复制到/usr/src下

  • 在此说明一下,一般都将内核源码放到/usr/src下,并创立链接linux,相似快捷方式,便于切换到内核路径下。**

  • 我下载的内核版本是:linux-4.19.1.tar.xz;接着将内核源码压缩包解压并复制到/usr/src路径下,此时可能需要1-2分钟时间;解压时注意一下你的内核源码所在的路径,例如我的是在虚拟机的共享文件夹下;之后切换到/usr/src路径下,再创立一个名为linux的链接:**

root@dannylinux:/# tar xf /mnt/hgfs/Desktop/ubuntu/linux-4.19.1.tar.xz -C /usr/src/
root@dannylinux:/usr/src# ln -sv linux-4.19.1 linux
  • 此时,输入:
root@dannylinux:/usr/src# ls
  • 即可以看到生成了一个名为linux-4.19.1的文件夹和一个名为linux的链接。

3.安装编译环境

  • 因为Danny在编译Linux内核时遇到了各种坑,为了让大家少走坑,我们先安装编译时需要的依赖环境:
root@dannyLinux:/# sudo apt-get install gccroot@dannyLinux:/# sudo apt-get install make root@dannyLinux:/# sudo apt-get install ncurses-devroot@dannyLinux:/# sudo apt-get install bisonroot@dannylinux:/# sudo apt-get install flexroot@dannylinux:/# sudo apt-get install libssl-devroot@dannyLinux:/# sudo apt-get install libelf-dev

4.配置

root@dannylinux:/usr/src/linux# make menuconfig`
  • 使用默认配置,save 后 exit


    image
imageimageimage
  • 注意:在我踩过深坑之后,才知道,Makefile是有问题的,要修改595行在开头加一横杠“-”,不然你会白费n多小时。
image

5.编译(4线程编译)

  • 编译时间大概在两个小时左右,根据你的电脑配置来决定。**
root@dannylinux:/usr/src/linux# make -j 4
  • 编译好之后,我们将进行下一步安装内核板块。

6.安装内核板块

root@dannylinux:/usr/src/linux# sudo make modules_install
  • 此步完成之后,在/lib/modules/路径下就会生成一个以版本号命名的一个内核板块了,快大功告成了,继续安装内核。

7.安装内核

root@dannylinux:/usr/src/linux#  sudo make install
  • 安装完内核之后,会在/boot/路径下生成一个内核文件vmlinuz-4.19.1和其余几个文件。

  • 到此Linux内核就编译完了,可以打开grub.cfg配置文件看一下,会有一个新的版本:

root@dannylinux:/usr/src/linux# vim /boot/grub/grub.conf
  • 别焦急,你以为重启就好了吧(假如是安在物理机上重启是可以了),但是假如安装在虚拟机上,要将内存调至4G才可以,不然会报内存不足的错误。

  • 而后重启吧,进入启动项会提醒你选择内核版本,这时候你选择ubuntu4.19.1即可以使用你新编译的Lniux内核了!

                                     **DannyWu博客**
image
                               长按二维码关注公众号

原创申明:本文为DannyWu原创,转载务必注明本文链接,否则视为侵权!

  • 全部评论(0)
最新发布的资讯信息
【系统环境|】Fortigate飞塔防火墙如何开启DNS转发/DNS代理(2025-10-14 23:58)
【系统环境|】有了它,再也不用担心电脑弹窗广告和病毒啦!(2025-10-14 23:57)
【系统环境|】如何关闭恼人的电脑弹窗广告?2招搞定(2025-10-14 23:55)
【系统环境|】实用软件推荐:电脑广告弹窗多?用他,都给你屏蔽掉!(2025-10-14 23:55)
【系统环境|】Nginx篇01——基本安装配置和静态页面设置(2025-10-14 23:54)
【系统环境|】Linux端口开放,查看,删除,防火墙(2025-10-14 23:53)
【系统环境|】安全HTTP头部配置: 基于CSP与HSTS的Web安全策略(2025-10-14 23:52)
【系统环境|】老K:做私域过1000万的赛道全部都聚焦在女性身上!(2025-10-14 23:51)
【系统环境|】JavaScript跨域问题: 如何解决跨域访问和资源共享的安全策略(2025-10-14 23:51)
【系统环境|】家庭七级财务防火墙(2025-10-14 23:50)
手机二维码手机访问领取大礼包
返回顶部