前题:

  在前几个月的时候,写了一篇笔记,说的是kernel compile的事情,当时经验不足,虽说编译过了,但有些地方写的有错误--因为当时的理解是有错误的。今天一一更正,记录如下:

前文笔记链接:  ubuntu 12.04编译安装linux-3.6.10内核笔记

NO 1:

  内核清洁工作。

  一般的清洁可能会立刻想到make clean.但这个确实不完整,make clean只能清楚一部分东西。而有一个命令是做的非常彻底的,那就是make mrproper。对于这两个的差别,可以在进入kernel source 目录的时候,make help.

 xxx@linux-3.6.:%make help
Cleaning targets:
clean - Remove most generated files but keep the config and
enough build support to build external modules
mrproper - Remove all generated files + config + various backup files
distclean - mrproper + remove editor backup and patch files

make clean: 会清除大部分以前留下来的东西,但是不会清楚配置文件,也就是那个  .config文件;

make mrproper:是会连配置文件都清除的。

而我前文的操作步骤就是,先把配置文件从/boot目录下导入到/usr/src/linux-3.6.10/  然后再次执行make mrproper。这样,就把导入的配置文件给删除了嘛,根本就没保持系统原来的配置文件了。但是为啥能成功呢? 因为linux kernel source 默认的是x86的配置吧。---这其实是很危险的,所以纠正这一步这么做:先make mrproper,然后再导入系统原来的配置文件。

NO 2:

  配置文件。

  配置文件有三个大的来源:一个是自己按照自己的硬件平台,自行的配置编写---这个要求有点高,对于新手不是很合适;一个来源于别人成熟的配置文件--在别人成熟的配置基础上,做一些小动作的修改;第三个是使用kernel source自带的一个配置文件,如果需要使用的话,使用如下:

make defconfig 

  而借助别人的配置文件,有两种方式添加到现有的kernel source目录下--第一,直接cp命令,比如将/boot/config-3.5这个文件copy到现在将要编译的这个内核中,那么就这个样子:

 sudo cp /boot/config-3.5 /usr/src/linux-3.6./.config

这里注意,要编译的配置文件是  .config,而非其他格式。

第二种方法就是  make menuconfig 后,在第一个界面有一个  Load选项:

    Load an Alternate Configuration File  

在这里写入/boot/config-3.5,然后保存为.config文件。

这两种方法适合于:第一种,是完全不做修改了,直接拿来用;第二种是自己还想做一些修改---其实也不啦,第一种直接再make menuconfig后,一样的可以修改。

再次说明的是:

make mrproper会删除配置文件的,所以配置文件一定要在make mrproper进行之后进行。

以此修正。

对<< ubuntu 12.04编译安装linux-3.6.10内核笔记>>的修正的更多相关文章

  1. Ubuntu 16.04.2 安装Linux kernel 4.10 内核并解决 VMware 问题

    http://www.linuxidc.com/Linux/2017-03/141456.htm

  2. ubuntu 12.04 编译安装 nginx

    下载源码包 nginx 地址:http://nginx.org/en/download.html 编译前先安装两个包: 直接编译安装会碰到缺少pcre等问题,这时候只要到再安装两个包就ok sudo ...

  3. (转)Ubuntu 12.04 LTS安装VMware Tools实现linux和window 互相复制:无法找到kernel header path的问题

    Ubuntu 12.04 LTS安装VMware Tools无法找到kernel header path的问题   ubuntuvmware Ubuntu 12.04 安装 VMware Tools, ...

  4. Angularjs学习---angularjs环境搭建,ubuntu 12.04下安装nodejs、npm和karma

    1.下载angularjs 进入其官网下载:https://angularjs.org/‎,建议下载最新版的:https://ajax.googleapis.com/ajax/libs/angular ...

  5. Ubuntu 12.04上安装R语言

    Ubuntu 12.04上安装R语言 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ R的安装 sudo gedit /etc/apt/sources. ...

  6. [转载] Ubuntu 12.04下安装git,SSH及出现的Permission denied解决办法

    如何安装ssh http://os.51cto.com/art/201109/291634.htm 仅需要阅读至成功开启ssh服务即可 http://www.linuxidc.com/Linux/20 ...

  7. ubuntu 12.04下安装Qt出现cannot execute binary file的解决方案

    最近在ubuntu 12.04下安装QT的过程中,遇到一个问题. ./qt-opensource-linux-x64-5.7.0.run出现了bash: ./qt-opensource-linux-x ...

  8. 如何在ubuntu 12.04 中安装经典的 GNOME桌面

    这次介绍的是如何在ubuntu 12.04 中安装经典的 GNOME桌面,默认的 Ubuntu 12.04 默认unity桌面,一些用户不喜欢 Unity 桌面,所以想找回昔日的经典Gnome桌面. ...

  9. Ubuntu 12.04 下安装 Eclipse

    方法一:(缺点是安装时附加openjdk等大量程序并无法去除,优点是安装简单) $ sudo apt-get install eclipse 方法二:(优点是安装内容清爽,缺点是配置麻烦)1.安装JD ...

随机推荐

  1. 查看Vim的option变量的值

    以t_Co变量为例,最好用 :echo &t_Co 也可以使用 :set t_Co?,但是漏打?的话就会设置,得不偿失 要想知道在哪里这个变量被设置的,用 :verbose set t_Co? ...

  2. .woff 文件404,配置到web.config

    <staticContent>        <remove fileExtension=".woff" />        <mimeMap fil ...

  3. [信息OJ 2467] Asakura的难题

     2467: G Asakura的难题 Time Limit:2000MS Memory Limit:65536KB Description Asakura是班里有名的捣蛋鬼,所以经常有同学到老师那里 ...

  4. HTTP编程(六)

    此为网络编程的一个系列,后续会把内容补上.....

  5. VISUAL SVN安装 及客户端使用

    1.为什么要用VisualSVN Server,而不用Subversion? 回答: 因为如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Serve ...

  6. 积和式Permanent在Mathematica中的运算

    Permanent[m_List] := With[{v = Array[x, Length[m]]}, Coefficient[Times @@ (m.v), Times @@ v]] 参考资料:  ...

  7. QTP安装和破解

    (1)底版本QTP安装破解 安装:http://bbs.51testing.com/thread-527025-1-1.html 进行破解: 1.创建文件夹C:/Program Files/Commo ...

  8. bzoj 3197 [Sdoi2013]assassin(Hash+DP+KM)

    Description Input Output Sample Input 4 1 2 2 3 3 4 0 0 1 1 1 0 0 0 Sample Output 1 HINT [思路] Hash,D ...

  9. 【暑假】[深入动态规划]UVa 10618 Tango Tango Insurrection

    UVa 10618 Tango Tango Insurrection 题目: Problem A: Tango Tango Insurrection You are attempting to lea ...

  10. C#调用C++ DLL类方法(转)

    http://hi.baidu.com/game_dev/item/ba29ecf67bd5f6cf521c26fc