1.查看ubuntu版本号:

xdj@xdj-MS-:~$ sudo lsb_release -a
[sudo] password for xdj:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04. LTS
Release: 12.04
Codename: precise

2.查看内核版本号:

xdj@xdj-MS-:~$ cat /proc/version
Linux version 3.8.--generic (buildd@akateko) (gcc version 4.6. (Ubuntu/Linaro 4.6.-1ubuntu5) ) #~precise1-Ubuntu SMP Wed Aug :: UTC

The Linux Kernel Archiveshttps://www.kernel.org/

转自:http://blog.csdn.net/liuqinstudy/article/details/9055935

步骤:

1、首先下载你想要编译的内核版本:linux-3.2.1.tar.bz2。

2、进入root权限把刚下载的内核代码复制到/usr/src目录下面去。

3、在/usr/src目录下面解压刚才下载的内核代码:tar   -xjvf  linux-3.2.1.tar.bz2,解压完成后进入相应的linux-3.2.1           目录,以后的工作都会在这个目录下面完成。

4、开始编译前的工作:

4.1  使用命令:make mrproper

作用是在每次配置并重新编译内核前需要先执行”make mrproper”命令清理源代码树,包括过去曾经配置的内核配置文件”.config”都将被清除。即进行新的编译工作时将原来老的配置文件给删除,以 免影响新的内核编译。(但是一般情况也可https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.15.4.tar.xz以不执行这条命令,因为内核编译是增量编译,清除之后又要从头开始编译,浪费时间).

4.2   使用命令:make menuconfig,进行内核定制,配置编译信息。

输入命令:make menuconfig  。然后再出现的界面中移动鼠标选中file system项目
 然后再出现的界面中移动鼠标选中file system项目,进入其中,把second extended fs suppor前面的 *
好改成M(修改这个的目的是让在编译内核的时候以模块的方式进行编译,而不是编译进内核)。这里可能会提醒安装ncurses相应的包。安装这个包的命令
如下:sudo
apt-get install libncurses5-dev

4.3    保存退出

5、  make dep命令生成内核功能间的依赖关系。一般会提示unecessary.
    6、  make命令 编译内核。(若过程不出现问题,大约1-2个小时编译完成) 。

这个相当于手工执行下面两步:
           #make bzImage(编译出核心)
           #make modules(编译可加载模块)

7、  等编译内核完成之后就是安装模块。使用命令:make modules_install

8、 安装核心。 使用命令:make install

9、  创建initrd文件  使用命令:mkinitramfs -o /boot/initrd.img-3.2.1(后面的数字是自己需要编译的内核的版本,根据自己的版本不同来书写).*****后面出现的一个错误在重新用另外的方法生成initrd.img-3.2.1文件后解决,不知道是不是这里的生成方法有错,但是可以用这种方法试一试,出错了再改。因为我也只试了一次,说不定是我操作失误了。*****
   10、 更新grub来显示自己安装的内核。进入/boot/grub目录,然后输入命令:update-grub即可。
    经过以上的步骤,内核基本上已经编译成功并且已经安装上了。


了看自己的内核是否安装上了可以通过以下步骤来看:进入/boot/grub/目录,然后打开grub.cfg文件,看你自己编译的版本是否已经在里面
了,如果在里面了,就说明你自己编译的内核就完成了。这是后重启就可以进入你自己编译的内核里面了。(但是为了选择自己安装的内核或者是选择进入以前系统
自带的内核还必须更改/boot/grub/目录下面的文件grub.cfg,把里面的所有的timeout的值都更改成10)。然后重新启动就可以选择
了。

以上就是编译和安装自己内核的步骤。

http://blog.163.com/zhe_wang_2009/blog/static/172282121201151002742650

Linux 软件管理(RPM,Dpkg,APT)

http://blog.sina.com.cn/s/blog_484572870100c3pg.htmlhttp://blog.csdn.net/on_1y/article/details/8598385

今天把linux 2.6.16内核编译成功了
第一次成功编译内核

大略步骤:
0.准备

cp linux-2.6.16.tar.bz2 /usr/src/kernels
tar jxvf linux-2.6.16.tar.bz2
上边是将源码copy到/usr/src/kernels里边,旁边还有个2.6.11.1369_FC4.i686
我的是P4的CPU,所有是i686,解压完成后,有个linux2.6.16文件夹

ln -s /usr/src/kernels/linux-2.6.16 /usr/src/linux
软链接,在/usr/src里建个linux链接

rm -dfr /usr/include/arm
rm -dfr /usr/include/linux
rm -dfr /usr/include/scsi
删除/usr/include下边的这3个文件夹,GCC默认调用这里边的库函数,改成最新版本的,直接链接过来就行了,链接如下:

ln -s /usr/src/linux/inhttp://blog.sina.com.cn/s/blog_484572870100c3pg.htmlclude/arm-i386 /usr/include/arm
ln -s /usr/src/linux/include/linux /usr/include/linux
ln -s /usr/src/linux/include/scsi /usr/include/scsi
ln -s /usr/src/linux/include/arm-generic /usr/include/arm-generic

1.make menuconfig
一些配置,对应自己的机器,我是将/boot/config-2.6.11-1.1369_FC4 copy到/usr/src/linux里边,用的命令是
cp /boot/config-2.6.11-1.1369_FC4 /usr/src/linux/.config
然后
make menuconfig
load配置文件,之后修改CPU类型,支持NTFS什么的...

2.make
编译,最漫长的等待时间,我是用了将近1个小时,然后将这两个文件copy到/boot里边,
cp /usr/src/linux/Syshttp://blog.sina.com.cn/s/blog_484572870100c3pg.htmltem.map /boot/System.map-2.6.16
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.16
3.
make modules
make modules_install
notes: 终于明白了,make modules_install是将modules安装到/lib/modules,然后mkinitrd就可以有2.6.16这个参数了.
make modules可以省略,在make里边,已经把modules编译好了.可以直接安装modules.
4.mkinitrd /boot/initrd-2.6.16.img 2.6.16
5.vi /boot/grub/grub.conf
修改grub,用新内核引导
应这个朋友,我把内核给详细的写了写,我就是这么编译成功的.
下边还有一个编译内核的详细文档,可以参考.

http://blog.sina.com.cn/s/blog_484572870100c3pg.html

修改内核时候总是遇到make: ***/root/build_kernel/linux-2.6.14.1/arch/arm 是一个目录.停止的错误

2010-01-08 11:56 1171人阅读 评论(6) 收藏 举报

nnd,原来是因为 ARCH ?= arm后面多了一个空格的缘故,害的我查了一个多小时

2.6内核编译

http://blog.sina.com.cn/s/blog_484572870100c3pg.html

inux内核的编译与安装 (转)的更多相关文章

  1. ubuntu内核的编译安装

    原创声明:转载请注明出处. 一.操作环境: 1.ubuntu版本 2.linux原有内核版本 3.要安装的linux内核版本 linux-3.16.39 二.新内核的编译和安装 1.首先下载linux ...

  2. Linux内核-模块编译和安装

    我安装Ubuntu的时候是没有安装源码的,在没有安装源码前 /usr/src/ 目录下是只有两个包含内核的头文件的文件夹的: 我的内核版本是: 所以接下来就是先安装内核源码: 执行后,/usr/src ...

  3. 在Ubuntu上下载、编译和安装Android最新内核源代码(Linux Kernel)

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6564592 在前一篇文章提到,从源代码树下载下 ...

  4. Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装

    原文:Linux内核分析(一)---linux体系简介|内核源码简介|内核配置编译安装 Linux内核分析(一) 从本篇博文开始我将对linux内核进行学习和分析,整个过程必将十分艰辛,但我会坚持到底 ...

  5. Linux内核编译与安装

    2013-04-16    Linux内核介绍  Linux内核是一个用C语言写成的,符合POSIX标准的类Unix操作系统.内核是操作系统中最基本的一部分,提供了众多应用程序访问计算机硬件的机制.L ...

  6. Linux内核的编译安装

    前言 Linux内核是Linux操作2347系统的核心,也是整个Linux功能体现的核心,就如同发动机在汽车中的重要性.内核主要功能包括进程管理.内存管理.文件管理.设备管理.网络管理等.Linux内 ...

  7. Linux内核编译、安装流程

    原文链接:https://blog.csdn.net/qq_28437139/article/details/83692907 此处只讲linux内核编译步骤至于安装虚拟机,安装ubuntu操作系统请 ...

  8. Linux内核@系统组成与内核配置编译

    Linux系统由什么组成? 由用户空间(应用程序+GNU C标准库)和内核空间(系统调用接口+内核+内核架构代码)组成. Linux内核到底是什么?以及组成. ARM的七种操作级别? 内核网络协议栈( ...

  9. Linux中编译、安装nginx

    Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP 代理服务器. Nginx 是由Igor Sysoev为俄罗斯访问 ...

随机推荐

  1. 也谈TDD,以及三层架构、设计模式、ORM……没有免费的午餐,选择了,必付出代价

    想在园子里写点东西已经很久了,但一直没有落笔,忙着做 一起帮 的开发直播,还有些软文做推广,还要做奶爸带孩子,还要……好吧,我承认,真正的原因是: 太特么的难写了! 但再难写也要写啊,要等到“能写好了 ...

  2. 笔记:使用 Protel 99 SE 改一块车充 PCB

    笔记:使用 Protel 99 SE 改一块车充 PCB Protel 99 SE N 多年前用过,之前就再没有碰过了. 今天由于特殊原因又使用了一下. 还好有些有印象,现记录一下以免忘记. 元件转向 ...

  3. BroadcastReceiver用法

    动态注册广播接收器 1.创建一个Receiver继承BroadcastReceiver,并重写onReceiver() 2.在Activity的OnCreate()中添加广播接收器想要接收的actio ...

  4. FTP,FTPS,FTPS与防火墙

    昨天搭建了一台FTPS服务器,过程中学习了很多不清楚的知识点,还有遇到的问题,记录一下. (大部分内容汇集.整理自网络) 一. 关于FTP传输模式 众所周知,FTP传输有两种工作模式,Active M ...

  5. ByteBuf 类——Netty 的数据容器

    1.堆缓冲区 2.直接缓冲区 3.复合缓冲区 —CompositeByteBuf——实现了这个模式,它提供了一 个将多个缓冲区表示为单个合并缓冲区的虚拟表示 适用于 JDK 所使用的一种称为分散/收集 ...

  6. Pycharm快速复制当前行到下一行Ctrl+D

    Pycharm快速复制当前行到下一行Ctrl+D

  7. ARM-Linux内核移植之(一)——内核启动流程分析

    内核版本:2.6.22  为什么要采用这样一个较低的版本进行移植了,因为韦东山大牛说了,低版本的才能学到东西,越是高版本需要移植时做的工作量越少,学的东西越少. 内核启动分为三个阶段,第一是运行hea ...

  8. C++11 类的六个默认函数及其使用

    六个默认函数: 构造函数(construct) 析构函数(destruct) 复制构造函数(copy construct) 赋值(assign) 移动构造函数(move construct) 移动赋值 ...

  9. dd命令的高级应用

    dd是Linux上的一个常用的命令.例如:dd if=/1.txt of=/tmp/2.txt     (其中, if代表input file:of代表output file, 命令的结果就是将根目录 ...

  10. Three.js创建运动立体几何体示例

    效果图 安装 帧率统计工具 变量控制GUI demo 效果图 安装 npm install three 帧率统计工具 // 监听动画帧率 var Stats = function () { var m ...