【ca335亚洲城官网】编译内核过程,环境Linux内核升级过程

下载Linux 内核,从以下网站

明天给服务器晋级内核,实验碰着rhel6.2,进级前基本版本2.6.26,晋级后根本版本3.3.6.手续如下:

下边简单讲一下在 rhel6 中编写翻译 Linux Kernel 3.0.1
的经过。因为编写翻译内核的历程都差不离,所以理论上上边包车型客车长河还要也适用于其余发行版(比如大便铺天盖地的
Ubuntu
11.04,上面笔者会同期注出使用大便多重编写翻译的争论),因为只要编写翻译后的内核有标题恐怕利用本身编写翻译的新水源运维不了计算机,所以要封存当前应用的基业。

ca335亚洲城官网 1

1、下载内核源码,可在

1、下载并解压缩 Linux Kernel 3.0.1 源代码
到官方 下载,获得 linux-3.0.1.tar.bz2
文件,把它移动到别的你有读写权限的文本夹,运维下边发号施令解压缩并跻身解压后的文件夹:
$ tar jxvf linux-3.0.1.tar.bz2
$ cd linux-3.0.1

上传kernel文件到/usr/src/kernels/ 目录下,此处也可以挑选其余目录

2、将下载的基石代码拷贝至/usr/src下,cp linux-3.3.6.tar.gz /usr/src/。

2、配置基本编写翻译参数
先安装 ncurses 工具,那是字符版配置工具所依据的:
$ sudo yum install ncurses ncurses-devel #(红帽层层条件)
$ apt-get install libncurses5 libncurses5-dev #(大便雨后冬笋条件)

ca335亚洲城官网 2

3、解压,tar -zxvf linux-3.3.6.tar.gz。

本人曾经在本机手动配置了 sudoers 所以怎样提醒当前用户不是 sudoer 请配置
sudoers 或可用root(小编没测试过)
加多用户到sudo实践权限 :

怎样在 Ubuntu 上安装
Linux 3.11 内核
http://www.linuxidc.com/Linux/2013-09/89674.htm

【ca335亚洲城官网】编译内核过程,环境Linux内核升级过程。4、创立软链接,ln -s linux-3.3.6 rhel。

  1. chmod u+w /etc/sudoers
  2. vim /etc/sudoers
  3. 在 root ALL=(ALL) ALL 下添加 [user] ALL=(ALL) ALL ([user]
    为赋予权力的用户)
  4. chmod 440 /etc/sudoers

Ubuntu 13.10 (Saucy Salamander) 内核已升任至 Linux Kernel 3.10 智跑C5
http://www.linuxidc.com/Linux/2013-06/86110.htm

5、进入rhel目录,cd /usr/src/rhel。

新本子配置工具会自动寻觅当前系统际遇的布署新闻(即位于 /boot 下以
config-XXX 伊始的文书),所以接下去可以直接运维字符版的配置工具:
$ make menuconfig

Linux Kernel 3.4.62 LTS 现已经提供下载
http://www.linuxidc.com/Linux/2013-09/90368.htm

6、把原本编写翻译爆发的文本删除,make
mrproper。尽管从前编写翻译过基础,会发出上述文件,将会招致编译的曲折。

这里有大多计划选项,假诺是尝试性的心境,则可不要理会它,直接当选菜单下边包车型客车“Save”然后退出,配置工具会生成贰个“.config”文件。

如何在Ubuntu 13.10上安装Linux内核 3.12
http://www.linuxidc.com/Linux/2013-11/92930.htm

7、配置基本,从底下选拔一种,一般采用make menuconfig。

3、开头编写翻译
$ make

解压kernel文件

make config 古板的文书内核编写翻译形式,但失误后不恐怕回去。

编写翻译进度从十几分钟到1、2个钟头不等,视乎你Computer运维的进程。若是CPU是4核的,可以在
make
命令前边加上“-j4”参数让编写翻译程序同不经常间使用4核编译,那样编写翻译所急需的时间能减倍。

[root@apache kernels]# tar -xJvf linux-3.16.1.tar.xz

make menuconfig 基于文本的木本编写翻译形式,出错可重回,建议选择此等方式。

假诺编写翻译中途竟然中断,然后想再一次起初编写翻译,必要先实行上面发号施令清理一下编译现场然后再编写翻译:
$ make mrproper

安装包 gcc、ncurses-devel

make xconfig 基于图形化的水源编写翻译格局

(这里是绵绵的等候历程)

[root@apache yum.repos.d]# yum -y install gcc ncurses-devel

make oldconfig 只对脚下基本稍作修改

4、安装编写翻译好的模块和水源
内核编译好之后,使用上面发号施令安装 modules:
$ sudo make modules_install

Failed to set locale, defaulting to C

计划后“exit”,系统了然“Do you wish to save your new kernel
configuration?”,选拔“yes”。

地点的命令会将编写翻译好的 modules 复制到 “/lib/modules/3.0.1”
文件夹,在那之中“3.0.1”是基础的本子号,你会在“/lib/modules”文件夹中看出别的版本内核的
modules,包蕴近来系统意况的。这是个很重大的文本夹,不要手痒把那个文件夹删除了。

Loaded plugins: langpacks, product-id, subscription-manager

8、分明倚赖关系,make dep。

下一场安装编写翻译好的内核印象文件:
$ sudo make install

This system is not registered to Red
Hat Subscription
Management. You can use subscription-manager to register.

9、分明内核源码中并未有公文,make clean。

上面包车型地铁下令会把编写翻译文件夹里面包车型地铁“arch/x86/boot/bzImage”文件复制到“/boot”,同一时候还也许会复制
init 和 System.map 文件,最后在“/boot”会多出如下3个公文:

Repository ‘y’ is missing name in configuration, using id

10、编译内核,make bzImage。时间较长

/boot/initramfs-3.0.1.img
/boot/System.map-3.0.1
/boot/vmlinuz-3.0.1
近些日子重启机器就能够选择3.0.1的根本来运维Linux

y | 4.1 kB 00:00:00

11、编写翻译内核模块,make modules。时间不短。

但英特网还会有一说安装时少 initrd.img
文件(开始ram磁盘文件)?使用下边发号施令创造二个就可以:
$ sudo mkinitrd initramfs-3.0.1.img 3.0.1 #(红帽层层条件)
$ sudo mkinitramfs 3.0.1 -o /boot/initrd.img-3.0.1 #(大便密密麻麻条件)

Resolving Dependencies

12、安装模块,make modules_install。

5、修改 GRUB 运转菜单,扩张使用新基础运维的品类
这一步能够行使 GRUB2 的自动生成工具完结
$ sudo grub2-mkconfig #(红帽多元条件)
$ sudo update-grub2 #(大便类别条件)

–> Running transaction check

13、安装内核,make install。

假定你(对新水源没什么把握)不希望修改 GRUB 运维菜单,则足以一贯在运行Linux 时手动钦点新水源,方法如下:
重启计算机,在 GRUB
菜单界面(借使没有看出的话则重启计算机时按下ESC键)按“c”进入命令方式,先安装运转文件的分区,上边假若“/boot”位于第一块硬盘第一个分区,借使在其他分区则把下面包车型大巴数字“1”改成“2,3,5,6,7……”等:
set root=(hd0, 1)

—> Package gcc.x86_64 0:4.8.2-16.el7 will be installed

那条命令首要成就以下专门的学问:(1)把减掉内核映象拷贝到/boot目录下,
并创立相应的System.map符号链接;(2)调用mkinitrd程序创制基础的initrd映象。修改GRUB配置文件,
/etc/grub.conf或/boot/grub/grub.conf。

钦点内核印象和虚拟ram磁盘文件地点:
linux /boot/vmlinuz-3.0.1 root=/dev/sda1
initrd /boot/initrd.img-3.0.1

–> Processing Dependency: cpp = 4.8.2-16.el7 for package:
gcc-4.8.2-16.el7.x86_64

部分相爱的人手动完结“make
install”所形成的劳作。作者尝试了弹指间,蒙受一些难点。小编对此grub认知不是很透顶,个人感觉依旧使用make
install稳妥一些。

留神,在 GRUB
命令形式下也足以按“TAB”键自动补完的,不要八个字二个字地敲。最终输入“boot”运转。

–> Processing Dependency: glibc-devel >= 2.2.90-12 for package:
gcc-4.8.2-16.el7.x86_64

14、重启就能够。

ca335亚洲城官网 3

–> Processing Dependency: libmpc.so.3()(64bit) for package:
gcc-4.8.2-16.el7.x86_64

ca335亚洲城官网 4

–> Processing Dependency: libmpfr.so.4()(64bit) for package:
gcc-4.8.2-16.el7.x86_64

—> Package ncurses-devel.x86_64 0:5.9-13.20130511.el7 will be
installed

–> Running transaction check

—> Package cpp.x86_64 0:4.8.2-16.el7 will be installed

—> Package glibc-devel.x86_64 0:2.17-55.el7 will be installed

–> Processing Dependency: glibc-headers = 2.17-55.el7 for package:
glibc-devel-2.17-55.el7.x86_64

–> Processing Dependency: glibc-headers for package:
glibc-devel-2.17-55.el7.x86_64