centos安装内核源码安装
㈠ 如何在CentOS/RHEL上安装或升级新的内核版本
1、对于CentOS/RHEL系统,尽量使用yum方式或RPM包安装/升级内核,需要注意的是红帽的Red Hat linux服务需要订阅。
2、使用安装新内核而不是直接升级内核,安装新内核不会覆盖旧内核,而升级会导致新内核直接替换旧内核,可能会导致系统无法启动,安装也可以让我们在升级后有回滚的选择。
3、一般地,对于大多数Linux分发版,使用yum/dnf和分发版布官方的存储库来升级内核,这种方式只能升级到该分发版的存储库提供的最新版本,而不是Linux内核组织发布的最新内核。
4、如果想迅速并且安全地使用最新内核,对于CentOS/RHEL系统并不支持yum的方式直接安装或升级。那么此时我们可以使用ELRepo(第三方存储库)进行内核安装升级。
5、下载新内核的源码包进行编译安装,这种方式有助于我们更细致地学习内核底层知识,但在生产环境中不推荐编译安装。
6、尽量使用最新的Linux发行版,新的Liunx发行版包含该发行版维护的新内核,如果有必要,那么请使用如yum upgrade或者yum update来更新你的系统。对于Ubuntu、Debian等发行版,使用apt-get update方式来更新。
㈡ 如何升级centos7内核并且编译
、使用 elrepo rpm包升级
查看前系统内核版本 uname -r
1. 导入key
rpm --import
2. 安装 elrepo yum源
rpm -Uvh
3. 安装内核
yumelrepo源新版本内核直接yum安装即
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
5. 设置系统启顺序
查看系统启项:
cat /boot/grub2/grub.cfg |grep menuentry
发现新版本内核设置新版本内核默认启:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
查看默认启系统版本grub2-editenv list:
显示'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
6. reboot重启再查看 uname -r
二、使用源码编译安装升级
1 载内核源码
载网址
wget xxx
2 解压并进入源码目录
3 更新系统并安装依赖软件
#yum update
#yum upgrade
#yum groups install Development Tools
#yum install ncurses-devel qt-devel hmaccalc zlib-devel binutils-devel elfutils-libelf-devel
4 前内核配置文件拷贝前目录
本应该执行make menuconfig自定义内核配置配置文件.config; 直接使用原系统内核配置拷贝/boot目录配置文件前目录
cp /boot/config-2.6.32-431.11.2.el6.x86_64 .config
5 使用前内核配置
#sh -c 'yes "" | make oldconfig' #centos 6
#sh -c 'y "" | make oldconfig' #centos 7
6 编译安装
#make bzImage
#make moles
#make moles_install
#make install
7 设置系统启顺序
查看系统启项:
cat /boot/grub2/grub.cfg |grep menuentry
发现新版本内核设置新版本内核默认启:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
查看默认启系统版本grub2-editenv list:
显示'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
8 reboot重启再查看 uname -r
-
㈢ 怎样对CentOS安装内核头文件
样对CentOS安装内核头文件
来源:黑云一键重装系统 发布时间:2016-03-02 18:33:25
如果用户想在CentOS中安装内核投文件,对于这样的问题其实安装方法也很简单,不过用户需要注意的是,在安装之前应该先查看下系统当前的内核版本,如果和版本一样可直接安装,要是版本不一样,那么就需要下载相应的安装包进行手动安装,下面就介绍下具体的操作方法吧!
用户可以使用uname -r来查看当前内核版本。
使用yum list | grep kernel-headers来查看当前yum仓库中的kernel-headers的版本是否和内核版本一致。
如果一致,直接yum install kernel-headers
如果不同,则进行手动安装,下载对应的包,如下载kernel-headers-3.10.0-327.el7.x86_64.rpm(http://pkgs.org/centos-7/centos-x86_64/kernel-headers-3.10.0-327.el7.x86_64.rpm.html)
然后进到文件所在目录后在终端中执行 rpm -ivh kernel-headers-3.10.0-327.el7.x86_64.rpm
kernel-headers Download (RPM, TXZ):http://pkgs.org/download/kernel-headers
㈣ centos VM错误 linux/usr/src/kernels 目录下没有内核源码 解决方法【亲测成功】
如你有遇到如下错误,而无法打开Centos 上的VMware.
before you can run vmware several moles must be complied
kernel headers for version were not found if you
C header files matching your running kernel were not found. Refer to your distribution's documentation for installation instruction。
此法肯定有效。网卡说 yum groupinstall -y gcc kernel-devel 或者 ln s 的方法都是无用的。 此方法也能解决linux/usr/src/kernels 目录下没有内核源码问题。
1.安装gcc
yum -y install gcc
2.复制 centosISO镜像(与本机系统版本一致) 至centos系统 图形状态下打开/挂载。找到内核相关文件,为方便,我直接输出包名至/ker.txt
find ./ -name "ker*" > /ker.txt
然后安装包。
yum install -y kernel-devel-3.10.0-1160.el7.x86_64.rpm
yum install -y kernel-tools-libs-3.10.0-1160.el7.x86_64.rpm
yum install -y kernel-3.10.0-1160.el7.x86_64.rpm
yum install -y kernel-abi-whitelists-3.10.0-1160.el7.noarch.rpm
yum install -y kernel-debug-devel-3.10.0-1160.el7.x86_64.rpm
yum install -y kernel-tools-3.10.0-1160.el7.x86_64.rpm
yum install -y kernel-headers-3.10.0-1160.el7.x86_64.rpm
打开虚拟机,问题解决。
㈤ CentOS 7 怎样安装或升级最新的内核
一、使用 elrepo 的rpm包升级
查看当前系统内核版本 uname -r
1. 导入key
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
2. 安装 elrepo 的yum源
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
3. 安装内核
在yum的elrepo源中,有最新版本内核。直接yum安装即可。
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
5. 设置系统启动顺序
查看系统启动项:
cat /boot/grub2/grub.cfg |grep menuentry
可以发现有最新版本的内核,此时可以设置最新版本内核为默认启动:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
此时,查看默认启动的系统版本grub2-editenv list:
显示为'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
6. reboot,重启之后再次查看 uname -r
二、使用源码编译安装升级
1 下载内核源码
下载网址为 https://www.kernel.org/
wget xxx
2 解压并进入源码目录
3 更新系统并安装依赖软件
#yum update
#yum upgrade
#yum groups install Development Tools
#yum install ncurses-devel qt-devel hmaccalc zlib-devel binutils-devel elfutils-libelf-devel
4 将当前内核配置文件拷贝到当前目录
本来是应该执行make menuconfig来自定义内核配置的,生成配置文件.config; 但是可以直接使用原来系统的内核配置,也就是拷贝/boot目录下的配置文件到当前目录。
cp /boot/config-2.6.32-431.11.2.el6.x86_64 .config
5 使用当前内核的配置
#sh -c 'yes "" | make oldconfig' #centos 6
#sh -c 'y "" | make oldconfig' #centos 7
6 编译安装
#make bzImage
#make moles
#make moles_install
#make install
7 设置系统启动顺序
查看系统启动项:
cat /boot/grub2/grub.cfg |grep menuentry
可以发现有最新版本的内核,此时可以设置最新版本内核为默认启动:
grub2-set-default 'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
此时,查看默认启动的系统版本grub2-editenv list:
显示为'CentOS Linux (4.8.5-1.el7.elrepo.x86_64) 7 (Core)'
8 reboot,重启之后再次查看 uname -r
㈥ centos 6 如何安装内核源码包
(1) http 安装 centos 6.2
假设: 1> 本机有grub , 将 iso 中isolinux中的 boot.cat grub.conf isolinux.bin vmlinuz
boot.msg initrd.img isolinux.cfg splash.jpg vesamenu.c32 拷贝到 本机的/boot中
2> 将centos 6.2的光盘复制到 http服务下例如 /var/www/html 下面,将光盘的iso也复制到这个目录下,有时安装过程可能需要iso中的东西,centos会自动从iso文件中寻找
安装步骤:
1> 进入grub的命令行模式,然后
grub> root (hd0, 0 ) #选择boot所在的分区作为根,根据自己的情况来定
grub> kernel vmlinuz
grub> initrd initrd.img
grub> boot #启动
2> 选择url安装,配置ip神马的就行了
(2) 修改源
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
vim /etc/yum.repos.d/CentOS-Base.repo
1.[base]
2.name=CentOS-$releasever - Base
3.#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os 4.baseurl=http://run.hit.e.cn/centos/$releasever/os/$basearch/ 5.gpgcheck=1 6.gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 7.
8.#released updates
9.[updates]
10.name=CentOS-$releasever - Updates
11.
12.#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates 13.
14.baseurl=http://run.hit.e.cn/centos/$releasever/updates/$basearch/ 15.
16.gpgcheck=1 17.
18.gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 19.
20.#additional packages that may be useful
21.
22.[extras]
23.
24.name=CentOS-$releasever - Extras
25.#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras 26.
27.baseurl=http://run.hit.e.cn/centos/$releasever/extras/$basearch/ 28.
29.gpgcheck=1 30.
31.gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 32.
33.#additional packages that extend functionality of existing packages
34.
35.[centosplus]
36.
37.name=CentOS-$releasever - Plus
38.
39.#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus 40.
41.baseurl=http://run.hit.e.cn/centos/$releasever/centosplus/$basearch/ 42.
43.gpgcheck=1 44.
45.enabled=1 46.
47.gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 48.
49.#contrib - packages by Centos Users
50.
51.[contrib]
52.
53.name=CentOS-$releasever - Contrib
54.
55.#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib 56.baseurl=http://run.hit.e.cn/centos/$releasever/contrib/$basearch/ 57.
58.gpgcheck=1 59.
60.enabled=1 61.
62.gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 #yum clean all // 清除缓存
#yum update
#yum install xxx
下载源码包:
wget http://vault.centos.org/6.2/updates/Source/SPackages/kernel-2.6.32-220.7.1.el6.src.rpm
rpm -ivh xx.rpm
cd rpmbuild/SPECS 此rpmbuild是安装后在当前文件夹下的一个文件夹
rpmbuild -bp --target=`uname -m` kernel.spec 此rpmbuild是命令
之后 rpmbuild里有 BUILD,里面就是源代码了
yumdownloaer 的使用。
Ncurses 提供字符终端处理库,包括面板和菜单。
yum install ncurses-devel
yum 中的几个变量
$releasever,发行版的版本,从[main]部分的distroverpkg获取,如果没有,则根据RedHat-release包进行判断。
$arch,cpu体系,如i686,athlon等
$basearch,cpu的基本体系组,如i686和athlon同属i386,alpha和alphaev6同属alpha。
对yum.conf设定完成,我们就可以好好体验yum带来的方便了。
开机自动启动配置文件,一段时间不用都忘了 /etc/rc.local
本篇文章来源于 Linux公社网站(www.linuxidc.com) 原文链接:http://www.linuxidc.com/Linux/2012-03/56876.htm
㈦ 如何在Ubuntu/CentOS上安装Linux内核4.0
在Ubuntu 15.04上安装Linux内核4.0
如果你正在使用Linux的发行版Ubuntu 15.04,你可以直接通过Ubuntu内核网站安装。在你的Ubuntu15.04上安装最新的Linux内核4.0,你需要在shell或终端中在root访问权限下运行以下命令。
在CentOS 7上安装Linux内核4.0
我们可以用两种简单的方式在CentOS 7上安装Linux内核4.0。
从Elrepo软件仓库安装
从源代码编译安装
我们首先用ElRepo安装,这是最简单的方式:
使用 Elrepo 安装
1. 下载和安装ELRepo
我们首先下载ELRepo的GPG密钥并安装relrepo-release安装包。因为我们用的是CentOS 7,我们使用以下命令安装elrepo-release-7.0-2.el7.elrepo.noarch.rpm。
注: 如果你启用了secure boot,请查看这个网页获取更多信息。
添加 Elrepo 源
2. 升级Linux内核到4.0版本
现在,我们准备从ELRepo软件仓库安装最新的稳定版内核4.0。安装它我们需要在CentOS 7的shell或者终端中输入以下命令。
# yum --enablerepo=elrepo-kernel install kernel-ml
从ELRepo安装Linux内核4.0
上面的命令会自动安装为CentOS 7构建的Linux内核4.0。
现在,下面的是另一种方式,通过编译源代码安装最新的内核4.0。
从源代码编译安装
1. 安装依赖软件
首先我们需要为编译linux内核安装依赖的软件。要完成这些,我们需要在一个终端或者shell中运行以下命令。
# yum groupinstall "Development Tools"
# yum install gcc ncurses ncurses-devel
安装内核依赖
然后,我们会升级我们的整个系统。
# yum update
2. 下载源代码
现在我们通过wget命令从Linux内核的官方仓库中下载最新发布的linux内核4.0的源代码。你也可以使用你的浏览器直接从kernel.org网站下载内核。
# cd /tmp/
下载内核源码
3. 解压tar压缩包
文件下载好后我们在/usr/src/文件夹下用以下命令解压。
# tar -xf linux-4.0.tar.xz -C /usr/src/
# cd /usr/src/linux-4.0/
解压内核tar压缩包
4. 配置
配置Linux内核有两种选择的。我们可以创建一个新的自定义配置文件或者使用已有的配置文件来构建和安装Linux内核。这都取决于你自己的需要。
配置新的内核
现在我们在shell或终端中运行make menuconfig命令来配置Linux内核。我们执行以下命令后会显示一个包含所有菜单的弹出窗口。在这里我们可以选择我们新的内核配置。如果你不熟悉这些菜单,那就敲击ESC键两次退出。
# make menuconfig
配置新内核
已有的配置
如果你想用已有的配置文件配置你最新的内核,那就输入下面的命令。如果你对配置有任何调整,你可以选择Y或者N,或者仅仅是按Enter键继续。
# make oldconfig
5. 编译Linux内核
下一步,我们会执行make命令来编译内核4.0。取决于你的系统配置,编译至少需要20-30分钟。
注:如果编译内核的时候出现bc command not found的错误,你可以用yum install bc命令安装bc修复这个错误。
# make
Make 内核
6. 安装Linux内核4.0
编译完成后,我们终于要在你的Linux系统上安装内核了。下面的命令会在/boot目录下创建文件并且在Grub 菜单中新建一个内核条目。
# make moles_install install
7. 验证内核
安装完最新的内核4.0后我们希望能验证它。做这些我们只需要在终端中输入以下命令。如果所有都进展顺利,我们会看到内核版本,例如4.0出现在输出列表中。
# uname -r
结论
好了,我们成功地在我们的CentOS 7操作系统上安装了最新的Linux内核版本4.0。通常并不需要升级linux内核,因为和之前版本运行良好的硬件可能并不适合新的版本。我们要确保它包括能使你的硬件正常工作的功能和配件。但大部分情况下,新的稳定版本内核能使你的硬件性能更好。
㈧ centos 7如何获取完整内核源码
1. 下载内核
内核官网获得了(不让加链接,搜索linux内核官网 )
tar.xz 是完整的内核包
pgp 是.tar.sign后缀的文件,用于校验类似于MD5
patch 是补丁包
2. 解压文件,现在一般采用 .tar.xz 的压缩格式(压缩率最高,但是压缩时间较长)。
/usr/src 一般而言、我们制做linux内核的时候源码一般放在这个路径下,
可以使用 # tar -Jxvf linux-3.13.2.tar.xz -C /usr/src/ 把文件解压到 /usr/src/ 中(在root用户下才有效)
3. 如果是第一次编译内核,并没有上次的残留文件可以可以跳过
# make mrproper
这个步骤
注意:make clean 删除大多数的编译生成文件, 但是会保留内核的配置文件.config, 还有足够的编译支持来建立扩展模块
make mrproper 删除所有的编译生成文件, 还有内核配置文件, 再加上各种备份文件
make distclean mrproper删除的文件, 加上编辑备份文件和一些补丁文件。
4. 接下来是 make config 。
具体参照 《make config 的几种类型》
一般采用 # make menuconfig 的方式
此处需要两个包,选择最简单的yum安装
# yum -y install gcc 和
# yum install ncurses ncurses-devel。
具体选项的作用参考 《Linux-3.10-x86_64 内核配置选项简介 》
对新的内核功能选择,并生成一个 .config 的文件
5. 编译内核
# make 和 # make moles_install (此处命令必须进入/usr/src/linux-x-x-x/才有效,否则会报错)
注意:2.6内核作了优化,不必显示的执行make dep 和make bzImage,只需要直接执行
make 就行,系统会自动完成make dep 和 make bzImage 所做的工作。
6. 安装内核
# make install
7. 修改默认启动的内核(把光标处的default值改成0,就为默认启动,编译成功后默认为1)
# vim /boot/grub/grub.conf
用 cat /boot/grub/grub.conf 验证并测试
# cat /boot/grub/grub.conf
看是否添加成功
8. 重启机器,查看效果
默认的内核就是刚才编译成功的。。。