linux内核解压

linux内核解压,第1张

linux内核解压说明:

首先下载内核linux-4.12.4.tar.xz

然后下载工具7z.rar

然后用winrar解压7z.rar

然后安装7z

然后用7z解压linux-4.12.4.tar.xz得到linux-4.12.4.tar

最后用winrar解压更多Linux介绍可查看《Linux就该这么学》。

在Debian上安装完整的内核源码

在下载内核源码之前,先安装dpkg-dev,其中包含你在Debian上生成源代码时需要的开发工具套件。不仅如此,dpkg-dev中还包含在用来解压Debian源码包并自动打补丁的工具dpgk-source。

$ sudo apt-get install dpkg-dev

然后,运行以下命令下载完整的内核源码。

$ apt-get source linux-image-$(uname -r)

伴随着完整内核源码(linux_X.X.XX.orig.tar.xz)的还有一些可用的内核补丁(linux_X.X.X+XXX.debian.tar.xz)和源码控制文件(linux_XXXX.dsc),这些都将被下载并存储到当前目录。在.dsc文件中会指出如何给内核源码打补丁。

当下载完成,以上的命令将会自动调用工具dpkg-source将下载的内核源码解压到当前的目录中,与此同时根据.dsc文件来下补丁。

最终完整的内核源码树将会以"linux-X.X.XX"的形式呈现在当前目录中。

在Ubuntu上安装完整内核源码

如果你想安装完整内核源码的话,以上在Debian上的那一套做法在Ubuntu上仍然奏效。

在Ubuntu上还有另一套方法安装完整内核源码。事实上,你可以查一下由Canonical为Ubuntu不同发行版维护的内核源码树。

$ sudo apt-get install git$ git clone git://kernel.ubuntu.com/ubuntu/ubuntu-$(lsb_release --codename | cut -f2).git

举个例子,如果你使用的是Ubuntu 14.04,以上的命令将会查看Git的"ubuntu-trusty"仓库中的代码。

一旦在你对Git仓库的查询结束后,使用以下的命令来安装用来访问生成内核源码树所需依赖的重要开发包。

首先要有大约5G的空闲空间吧

*** 作步骤

1、 环境配置

安装必备软件编译工具:

#apt-get install libncurses5-dev build-essential kernel-package

注意:

(1)libncurses5-dev是为之后配置内核能运行 make menuconfig程序做准备

Build-essential为编译工具,kernel-package是编译内核工具

(2)如果系统显示无法查找到这三个文件,输入#apt-get update更新数据源。

进入root用户权限(本文全程超级用户 *** 作):

#sudo passwd root (第一次进入超级用户需设置密码)

#su (设置完超级用户密码后命令su直接登录)

2、下载内核

登录www.Kernel.org下载最新版本内核,本文下载linux-2.6.36.tar.bz2,ubuntu默认下载目录为/home/XX(your name)/Downloads/

3、解压缩

#cd /usr/src

/usr/src# tar xrf /home/XX/Downloads/linux-2.6.36.tar.bz2

4、配置内核

/usr/src# cd linux-2.6.36

/usr/src/linux-2.6.36#make menuconfig

注:

可以直接save,exit直接生成.config文件,也可以使用当前系统配置文件,使用当前系统配置文件方法:/linux-2.6.36#cp /boot/config-XX ./.config,然后进入menuconfig选择load选项。

5、编译内核

/usr/src/linux-2.6.36#make (也可以用make –j4命令据说可以节约时间,但是个人用下来觉得没什么区别。 )

Ps:这个过程时间很长,有时要三个小时

6、加入模块

/usr/src/linux-2.6.36#make modules_install

Ps:这步也很漫长,不过和前一步相比,小巫见大巫了。

7、生成可执行的内核引导文件

/usr/src/linux-2.6.36#make bzImage(i字母要大写)

/usr/src/linux-2.6.36#cp arch/x86/boot/bzImage /boot/vmlinuz-2.6.36

8、将System.map复制到/boot下:

/usr/src/linux-2.6.36#cp System.map /boot/System.map-2.6.36

9、生成initrd.img文件

/usr/src/linux-2.6.36#cd /lib/modules/2.6.36

/lib/modules/2.6.36#update-initramfs –c –k 2.6.36

10、自动查找新内核,并添加至grub引导:

#update-grub

11、清除多余的创建文件(可以不用理)

#cd /usr/src/linux-2.6-36

#make clean

12、重启系统

#reboot 或者shutdown –r now

上面使用的linux内核是linux-2.6.36版本的,你要换成相应你的版本。

PS:上面的步骤我也是在网上弄得,具体来源忘了,不过很好用,我已成功编译。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8617366.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存