Ubuntu12.04建立内核树实现过程详解

 更新时间:2020年09月11日 11:30:35   作者:陌鉎こ城sHi  
这篇文章主要介绍了Ubuntu12.04建立内核树实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

先查看自己使用的内核版本

lin@lin-virtual-machine:~$ uname -r
3.2.0-23-generic

如果安装系统时,自动安装了源码。在 /usr/src 目录下有对应的使用的版本目录。

lin@lin-virtual-machine:~$ cd /usr/src
lin@lin-virtual-machine:/usr/src$ ls
linux-headers-3.2.0-23 linux-headers-3.2.0-23-generic

查看一下可一下载的源码包

lin@lin-virtual-machine:/usr/src$ apt-cache search linux-source
linux-source - Linux kernel source with Ubuntu patches
linux-source-3.2.0 - Linux kernel source for version 3.2.0 with Ubuntu patches

我这里选择所以“linux-source-3.2.0 - Linux kernel source for version 3.2.0 with Ubuntu patches”直接 install

lin@lin-virtual-machine:/usr/src$ sudo apt-get install linux-source-3.2.0

下载完成后,在/usr/src下,文件名为:linux-source-3.2.0.tar.bz2,是一个压缩包,解压缩既可以得到整个内核的源代码。

使用pwd来查看当前路径

ls来查看文件夹中有哪些文件

lin@lin-virtual-machine:/usr/src$ pwd
/usr/src
lin@lin-virtual-machine:/usr/src$ ls
linux-headers-3.2.0-23 linux-source-3.2.0
linux-headers-3.2.0-23-generic linux-source-3.2.0.tar.bz2

解压缩

lin@lin-virtual-machine:/usr/src#sudo tar jxvf linux-source-3.2.0.tar.bz2

进入该目录(cd linux-source-3.2.0)

lin@lin-virtual-machine:/usr/src$ cd linux-source-3.2.0/
lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ pwd
/usr/src/linux-source-3.2.0

开始配置内核 选择最快的原版的配置(默认)方式

lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ sudo make oldconfig

make需要等一个小时多。。。

lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ sudo make

数小时后

...System is 4826 kB
CRC d5a51584
Kernel: arch/x86/boot/bzImage is ready (#1)
 Building modules, stage 2.
 MODPOST 3304 modules
ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
WARNING: modpost: Found 4 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2

解决方法:来自http://ubuntuforums.org/showthread.php?t=1931029

lin@lin-virtual-machine:/usr/src/linux-source-3.2.0$ sudo gedit .config

估计是RTS5139驱动的问题.反正没有使用这个驱动,不要加入编译, 编辑.config, 将

CONFIG_RTS5139=m

修改成如下的形式:

CONFIG_RTS5139=n

继续make

编译压缩形式的内核

make bzImage

编译模块:

make modules

安装模块:

make modules_install

执行结束之后,会在/lib/modules下生成新的目录

lin@lin-virtual-machine:/lib/modules$ ls
3.2.0-23-generic 3.2.79

成功后重启。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Apache 支持CGI程序和SSI程序的设置方法

    Apache 支持CGI程序和SSI程序的设置方法

    在这里,网页教学网和大家探讨如何修改服务器选项让服务器能提供简单的动态网页内容,也就是支持CGI程序及 Server-Side Include(SSI)程序。
    2009-10-10
  • Linux服务器上安装JDK全过程

    Linux服务器上安装JDK全过程

    文章内容总结:本文详细介绍了在Linux服务器上安装Java的步骤,包括下载JDK、上传服务器、解压缩、配置环境变量等,并提供了一个简单的命令来验证安装是否成功,希望本文能为读者提供有用的参考
    2024-11-11
  • CentOS 6.7系统下安装配置JDK的方法

    CentOS 6.7系统下安装配置JDK的方法

    这篇文章主要给大家介绍的是在CentOS 6.7系统下如何安装配置JDK的方法,文中给出了详细的安装配置方法,有需要的朋友们可以参考借鉴,下面来跟着小编一起学习学习吧。
    2016-11-11
  • LAMP服务器性能优化技巧之Mysql优化

    LAMP服务器性能优化技巧之Mysql优化

    目前LAMP (Linux + Apache + MySQL + PHP) 近几年来发展迅速,已经成为Web 服务器的事实标准。本文我们将介绍基于LAMP组合的服务器的性能优化技巧:Mysql优化
    2012-02-02
  • Linux vim全局替换的实现方法

    Linux vim全局替换的实现方法

    这篇文章主要介绍了Linux vim全局替换的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Centos7搭建sftp服务流程

    Centos7搭建sftp服务流程

    本篇文章给大家详细分析了Centos7搭建sftp服务的全过程以及相关命令分享,一起需要下。
    2018-02-02
  • Linux系统下移植busybox中mkfs.vfat命令

    Linux系统下移植busybox中mkfs.vfat命令

    为了延长磁盘寿命来存储音视频文件,打发在格式化磁盘过程中将簇的大小设置大点。这接下来通过本文给大家介绍移植busybox中mkfs.vfat命令,需要的朋友可以参考下
    2019-07-07
  • linux挂载新磁盘后原数据文件不见的解决办法

    linux挂载新磁盘后原数据文件不见的解决办法

    linux挂载新磁盘后原数据文件不见了,丢失了吗,没有,这篇文章就教你找回解决办法,文章中有详细的操作步骤,有不会找的小伙伴可以参考阅读本文
    2023-08-08
  • Vscode远程连接Ubuntu出错问题的解决方法

    Vscode远程连接Ubuntu出错问题的解决方法

    这篇文章主要给大家介绍了关于Vscode远程连接Ubuntu出错问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • linux中chmod命令用法详解

    linux中chmod命令用法详解

    在本篇文章里小编给大家分享了关于linux中chmod命令用法和相关知识点,需要的朋友们跟着学习下。
    2019-04-04

最新评论