本站文章总数为:165
Search Posts

centos6.5升级kernel内核 GCC4.4.7升级GCC6.3.0

内容纲要

1.环境信息

[root@01 ~]# uname -r
2.6.32-754.35.1.el6.x86_64
[root@01 ~]# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)
[root@01 ~]# gcc --version
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

2.需求产生

安装docker 内核太老了
Requires: container-selinux >= 2:2.74
想着升级内核

3.升级内核

升级内核参考教程https://cloud.tencent.com/developer/article/1550150?areaSource=106000.15&traceId=jZePpaN_thSIxOrNikxdc
果不其然事情不会一帆风顺

3.1第一卡

 sh -c ' yes “” | make oldconfig' 

这一步一直报Compile also drivers which will not load (COMPILE_TEST) [N/y/?] (NEW) Y 需要手动make oldconfig然后一直回车,因为会有一些默认项

3.2第二卡

到make bzImage报错

error: #error Sorry, your compiler is too old - please upgrade it

GCC版本4.4.7太低

3.3升级GCC

刚开始想着rpm安装,结果这个centos6.5升级centos7.9是半成品
缺依赖 安依赖,结果又提示libc.so.6(GLIBC_2.17)(64bit) is needed by ,明明系统就是2.17 吐了

最后找到一篇文章 编译安装 (此文有错漏,下面是我自己做些小修改的教程)
https://blog.csdn.net/MicePro/article/details/100139473

3.3.1 下载文件

mpfr原文的下载地址404 变了 以下为正确的

mkdir -p /tmp/gcc                                             #创建目录/data/gcc
cd /tmp/gcc
wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz       #下载gmp6.1.2
wget https://www.mpfr.org/mpfr-3.1.5/mpfr-3.1.5.tar.gz    #下载mpfr3.1.5
wget ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz             #下载mpc1.0.3
wget ftp://ftp.gnu.org/gnu/gcc/gcc-6.3.0/gcc-6.3.0.tar.gz   #下载gcc6.3.0

3.3.2 编译安装gmp

tar -xvf gmp-6.1.2.tar.xz gmp-6.1.2
cd gmp-6.1.2
./configure --prefix=/usr/local/gcc/gmp --build=x86_64-linux
make && make install

3.3.3 编译安装mpfr3.1.5

tar -zxvf mpfr-3.1.5.tar.gz
cd mpfr-3.1.5
./configure --prefix=/usr/local/gcc/mpfr --with-gmp=/usr/local/gcc/gmp
make && make install

3.3.4 编译安装mpc1.0.3

tar -zxvf mpc-1.0.3.tar.gz mpc-1.0.3
cd mpc-1.0.3
./configure --prefix=/usr/local/gcc/mpc --with-gmp=/usr/local/gcc/gmp -with-mpfr=/usr/local/gcc/mpfr
make && make install

3.3.5 添加环境变量

vim /etc/profile
####最后加一行
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gcc/mpc/lib:/usr/local/gcc/gmp/lib:/usr/local/gcc/mpfr/lib

3.3.6 重载刷新动态库

source /etc/profile
ldconfig -v

3.3.7 编译安装gcc 6.3.0

tar xvf gcc-6.3.0.tar.gz
cd gcc-6.3.0
./configure --prefix=/usr/local/gcc --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gcc/gmp --with-mpfr=/usr/local/gcc/mpfr --with-mpc=/usr/local/gcc/mpc
##$(nproc)是cpu核心数 make -j $(nproc)全核心编译,如果上面有跑服务,根据自己需求调整 make 或者make -j 2 什么的
make -j $(nproc) && make install

3.3.8 备份旧GCC

mv /usr/bin/gcc /usr/bin/gcc-bak
mv /usr/bin/g++ /usr/bin/g++-bak
mv /usr/bin/c++ /usr/bin/c++-bak

3.3.9 建立新GCC软链接并刷新

ln -s /usr/local/gcc/bin/gcc /usr/bin/gcc
ln -s /usr/local/gcc/bin/c++ /usr/bin/c++
ln -s /usr/local/gcc/bin/g++ /usr/bin/g++
ln -s /usr/local/gcc/lib64/libstdc++.so.6.0.22 /usr/lib64/libstdc++.so.6
ldconfig -v

泪流满面 6.3.0

[root@01 gcc-6.3.0]# gcc --version
gcc (GCC) 6.3.0
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

3.4 下载编译内核

不同版本的需要的GCC版本不一样 我目前是GCC6.3.0
内核下载地址: https://www.kernel.org/ 下的慢可以迅雷下载 再传到服务器
比较新的内核最好升级openssl到1.1.1 或者 3,本站搜openssl有教程

3.4.1 错误版本踩坑

测试 5.4.271 不行

�[root@t01 linux-5.4.271]# cp /boot/config-2.6.32-754.35.1.el6.x86_64 ./.config
[root@01 linux-5.4.271]# ls
arch     CREDITS        fs       Kbuild   LICENSES     net      security  virt
block    crypto         include  Kconfig  MAINTAINERS  README   sound
certs    Documentation  init     kernel   Makefile     samples  tools
COPYING  drivers        ipc      lib      mm           scripts  usr
[root@01 linux-5.4.271]# make menuconfig
  HOSTCC  scripts/basic/fixdep
  UPD     scripts/kconfig/mconf-cfg
  HOSTCC  scripts/kconfig/mconf.o
  HOSTCC  scripts/kconfig/lxdialog/checklist.o
  HOSTCC  scripts/kconfig/lxdialog/inputbox.o
  HOSTCC  scripts/kconfig/lxdialog/menubox.o
  HOSTCC  scripts/kconfig/lxdialog/textbox.o
  HOSTCC  scripts/kconfig/lxdialog/util.o
  HOSTCC  scripts/kconfig/lxdialog/yesno.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.[ch]
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTLD  scripts/kconfig/mconf
scripts/kconfig/mconf  Kconfig
.config:347:warning: symbol value 'm' invalid for MICROCODE
.config:489:warning: symbol value 'm' invalid for CPU_FREQ_STAT
.config:505:warning: symbol value 'm' invalid for X86_INTEL_PSTATE
.config:574:warning: symbol value 'm' invalid for PCCARD_NONSTATIC
.config:580:warning: symbol value 'm' invalid for HOTPLUG_PCI_SHPC
.config:706:warning: symbol value 'm' invalid for NF_CT_PROTO_DCCP
.config:707:warning: symbol value 'm' invalid for NF_CT_PROTO_GRE
.config:708:warning: symbol value 'm' invalid for NF_CT_PROTO_SCTP
.config:709:warning: symbol value 'm' invalid for NF_CT_PROTO_UDPLITE
.config:2812:warning: symbol value 'm' invalid for MFD_WM8400
.config:2813:warning: symbol value 'm' invalid for MFD_WM831X
.config:2814:warning: symbol value 'm' invalid for MFD_WM8350
.config:2827:warning: symbol value 'm' invalid for MFD_WM8350_I2C
.config:2829:warning: symbol value 'm' invalid for AB3100_CORE
.config:2864:warning: symbol value 'm' invalid for LIRC

*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.

[root@01 linux-5.4.271]# make -j3
/tmp/linux-5.4.271/Makefile:639: include/config/auto.conf: No such file or directory
/tmp/linux-5.4.271/Makefile:685: include/config/auto.conf.cmd: No such file or directory
  HOSTCC  scripts/kconfig/conf.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf  --syncconfig Kconfig
  SYSTBL  arch/x86/include/generated/asm/syscalls_32.h
  SYSHDR  arch/x86/include/generated/asm/unistd_32_ia32.h
  WRAP    arch/x86/include/generated/uapi/asm/bpf_perf_event.h
  WRAP    arch/x86/include/generated/uapi/asm/errno.h
  WRAP    arch/x86/include/generated/uapi/asm/fcntl.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctl.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctls.h
  WRAP    arch/x86/include/generated/uapi/asm/ipcbuf.h
  WRAP    arch/x86/include/generated/uapi/asm/param.h
  WRAP    arch/x86/include/generated/uapi/asm/poll.h
  WRAP    arch/x86/include/generated/uapi/asm/resource.h
  WRAP    arch/x86/include/generated/uapi/asm/socket.h
  WRAP    arch/x86/include/generated/uapi/asm/sockios.h
  WRAP    arch/x86/include/generated/uapi/asm/termbits.h
  WRAP    arch/x86/include/generated/uapi/asm/termios.h
  WRAP    arch/x86/include/generated/uapi/asm/types.h
You are building kernel with non-retpoline compiler.
Please update your compiler.
make[1]: *** [checkbin] Error 1
make[1]: *** Waiting for unfinished jobs....
  SYSHDR  arch/x86/include/generated/asm/unistd_64_x32.h
  SYSTBL  arch/x86/include/generated/asm/syscalls_64.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_32.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_64.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_x32.h
make: *** [sub-make] Error 2

4.19.309 报GCC编译器版本过低

[root@tomratrt01 linux-4.19.309]# cp /boot/config-2.6.32-754.35.1.el6.x86_64  ./.config
cp: overwrite `./.config'? y
[root@tomratrt01 linux-4.19.309]# make menuconfig
  UPD     scripts/kconfig/.mconf-cfg
  HOSTCC  scripts/kconfig/mconf.o
  HOSTCC  scripts/kconfig/lxdialog/checklist.o
  HOSTCC  scripts/kconfig/lxdialog/inputbox.o
  HOSTCC  scripts/kconfig/lxdialog/menubox.o
  HOSTCC  scripts/kconfig/lxdialog/textbox.o
  HOSTCC  scripts/kconfig/lxdialog/util.o
  HOSTCC  scripts/kconfig/lxdialog/yesno.o
  HOSTLD  scripts/kconfig/mconf
scripts/kconfig/mconf  Kconfig
.config:347:warning: symbol value 'm' invalid for MICROCODE
.config:489:warning: symbol value 'm' invalid for CPU_FREQ_STAT
.config:505:warning: symbol value 'm' invalid for X86_INTEL_PSTATE
.config:574:warning: symbol value 'm' invalid for PCCARD_NONSTATIC
.config:580:warning: symbol value 'm' invalid for HOTPLUG_PCI_SHPC
.config:706:warning: symbol value 'm' invalid for NF_CT_PROTO_DCCP
.config:708:warning: symbol value 'm' invalid for NF_CT_PROTO_SCTP
.config:709:warning: symbol value 'm' invalid for NF_CT_PROTO_UDPLITE
.config:848:warning: symbol value 'm' invalid for NF_NAT_PROTO_DCCP
.config:850:warning: symbol value 'm' invalid for NF_NAT_PROTO_UDPLITE
.config:851:warning: symbol value 'm' invalid for NF_NAT_PROTO_SCTP
.config:2812:warning: symbol value 'm' invalid for MFD_WM8400
.config:2813:warning: symbol value 'm' invalid for MFD_WM831X
.config:2814:warning: symbol value 'm' invalid for MFD_WM8350
.config:2827:warning: symbol value 'm' invalid for MFD_WM8350_I2C
.config:2829:warning: symbol value 'm' invalid for AB3100_CORE
.config:2864:warning: symbol value 'm' invalid for LIRC

*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.

[root@tomratrt01 linux-4.19.309]# make -j3
scripts/kconfig/conf  --syncconfig Kconfig
You are building kernel with non-retpoline compiler.
Please update your compiler.
make: *** [checkbin] Error 1

3.4.2可用版本编译

最后找到一篇文章 4.13.2内核可以 命令输出也都有
https://cloud.tencent.com/developer/article/2086797?areaSource=102001.18&traceId=-bfAfNlN-cnDEalS-NtRm

简略命令

wget https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.13.2.tar.gz
tar -zxvf linux-4.13.2.tar.gz 
cd linux-4.13.2
cp /boot/config-2.6.32-754.35.1.el6.x86_64 ./.config
make menuconfig
make -j3
make modules_install
make install
ls /boot
cat /boot/grub/grub.conf
#default改为0
vim  /boot/grub/grub.conf
reboot

具体输出

4.13.2 在title第一个 default值改为0

[root@01 linux-4.13.2]# make menuconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/mconf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTCC  scripts/kconfig/lxdialog/checklist.o
  HOSTCC  scripts/kconfig/lxdialog/util.o
  HOSTCC  scripts/kconfig/lxdialog/inputbox.o
  HOSTCC  scripts/kconfig/lxdialog/textbox.o
  HOSTCC  scripts/kconfig/lxdialog/yesno.o
  HOSTCC  scripts/kconfig/lxdialog/menubox.o
  HOSTLD  scripts/kconfig/mconf
scripts/kconfig/mconf  Kconfig
.config:347:warning: symbol value 'm' invalid for MICROCODE
.config:489:warning: symbol value 'm' invalid for CPU_FREQ_STAT
.config:505:warning: symbol value 'm' invalid for X86_INTEL_PSTATE
.config:574:warning: symbol value 'm' invalid for PCCARD_NONSTATIC
.config:706:warning: symbol value 'm' invalid for NF_CT_PROTO_DCCP
.config:708:warning: symbol value 'm' invalid for NF_CT_PROTO_SCTP
.config:709:warning: symbol value 'm' invalid for NF_CT_PROTO_UDPLITE
.config:848:warning: symbol value 'm' invalid for NF_NAT_PROTO_DCCP
.config:850:warning: symbol value 'm' invalid for NF_NAT_PROTO_UDPLITE
.config:851:warning: symbol value 'm' invalid for NF_NAT_PROTO_SCTP
.config:2812:warning: symbol value 'm' invalid for MFD_WM8400
.config:2813:warning: symbol value 'm' invalid for MFD_WM831X
.config:2814:warning: symbol value 'm' invalid for MFD_WM8350
.config:2827:warning: symbol value 'm' invalid for MFD_WM8350_I2C
.config:2829:warning: symbol value 'm' invalid for AB3100_CORE

*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.

[root@t01 linux-4.13.2]# make -j3
  HOSTCC  scripts/kconfig/conf.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf  --silentoldconfig Kconfig
  SYSTBL  arch/x86/entry/syscalls/../../include/generated/asm/syscalls_32.h
  CHK     include/config/kernel.release
  SYSHDR  arch/x86/entry/syscalls/../../include/generated/asm/unistd_32_ia32.h
  SYSHDR  arch/x86/entry/syscalls/../../include/generated/asm/unistd_64_x32.h
 #太长省略中间输出保留头尾......  
 IHEX    firmware/mts_edge.fw
  IHEX    firmware/edgeport/down3.bin
  IHEX2FW firmware/emi26/loader.fw
  IHEX2FW firmware/emi26/firmware.fw
  IHEX2FW firmware/emi26/bitstream.fw
  IHEX2FW firmware/emi62/loader.fw
  IHEX2FW firmware/emi62/bitstream.fw
  IHEX2FW firmware/emi62/spdif.fw
  IHEX2FW firmware/emi62/midi.fw
  H16TOFW firmware/edgeport/boot.fw
  H16TOFW firmware/edgeport/boot2.fw
  H16TOFW firmware/edgeport/down.fw
  H16TOFW firmware/edgeport/down2.fw
  IHEX2FW firmware/whiteheat_loader.fw
  IHEX2FW firmware/whiteheat.fw
  IHEX2FW firmware/keyspan_pda/keyspan_pda.fw
  IHEX2FW firmware/keyspan_pda/xircom_pgs.fw
  [root@01 linux-4.13.2]# make modules_install
  INSTALL arch/x86/crypto/aes-x86_64.ko
  INSTALL arch/x86/crypto/aesni-intel.ko
  INSTALL arch/x86/crypto/crc32c-intel.ko
  INSTALL arch/x86/crypto/ghash-clmulni-intel.ko
  INSTALL arch/x86/crypto/glue_helper.ko
  INSTALL arch/x86/crypto/salsa20-x86_64.ko
  INSTALL arch/x86/crypto/sha512-ssse3.ko
  INSTALL arch/x86/crypto/twofish-x86_64.ko
  .........
    INSTALL /lib/firmware/edgeport/boot.fw
  INSTALL /lib/firmware/edgeport/boot2.fw
  INSTALL /lib/firmware/edgeport/down.fw
  INSTALL /lib/firmware/edgeport/down2.fw
  INSTALL /lib/firmware/edgeport/down3.bin
  INSTALL /lib/firmware/whiteheat_loader.fw
  INSTALL /lib/firmware/whiteheat.fw
  INSTALL /lib/firmware/keyspan_pda/keyspan_pda.fw
  INSTALL /lib/firmware/keyspan_pda/xircom_pgs.fw
  DEPMOD  4.13.2
[root@01 linux-4.13.2]#  make install
sh ./arch/x86/boot/install.sh 4.13.2 arch/x86/boot/bzImage \
                System.map "/boot"
ERROR: modinfo: could not find module AliSecGuard
ERROR: modinfo: could not find module microcode
[root@tomratrt01 linux-4.13.2]# ls /boot
config-2.6.32-431.23.3.el6.x86_64         symvers-2.6.32-754.35.1.el6.x86_64.gz
config-2.6.32-696.20.1.el6.x86_64         System.map
config-2.6.32-754.12.1.el6.x86_64         System.map-2.6.32-431.23.3.el6.x86_64
config-2.6.32-754.35.1.el6.x86_64         System.map-2.6.32-696.20.1.el6.x86_64
efi                                       System.map-2.6.32-754.12.1.el6.x86_64
grub                                      System.map-2.6.32-754.35.1.el6.x86_64
grub.cfg.aliyun_backup                    System.map-4.13.2
initramfs-2.6.32-431.23.3.el6.x86_64.img  System.map-4.13.2.old
initramfs-2.6.32-696.20.1.el6.x86_64.img  vmlinuz
initramfs-2.6.32-754.12.1.el6.x86_64.img  vmlinuz-2.6.32-431.23.3.el6.x86_64
initramfs-2.6.32-754.35.1.el6.x86_64.img  vmlinuz-2.6.32-696.20.1.el6.x86_64
initramfs-4.13.2.img                      vmlinuz-2.6.32-754.12.1.el6.x86_64
symvers-2.6.32-431.23.3.el6.x86_64.gz     vmlinuz-2.6.32-754.35.1.el6.x86_64
symvers-2.6.32-696.20.1.el6.x86_64.gz     vmlinuz-4.13.2
symvers-2.6.32-754.12.1.el6.x86_64.gz     vmlinuz-4.13.2.old
[root@01 linux-4.13.2]# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,0)
#          kernel /boot/vmlinuz-version ro root=/dev/vda1 net.ifnames=0 console=tty0 console=ttyS0,115200n8
#          initrd /boot/initrd-[generic-]version.img
#boot=/dev/xvda
default=1
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS Linux (4.13.2)
        root (hd0,0)
        kernel /boot/vmlinuz-4.13.2 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-4.13.2.img
title CentOS Linux (2.6.32-754.35.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-754.35.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-754.35.1.el6.x86_64.img
title CentOS (2.6.32-754.12.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-754.12.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-754.12.1.el6.x86_64.img
title CentOS (2.6.32-696.20.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-696.20.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-696.20.1.el6.x86_64.img
title CentOS (2.6.32-431.23.3.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-431.23.3.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-431.23.3.el6.x86_64.img
[root@01 linux-4.13.2]# vim /boot/grub/grub.conf
##4.13.2 在title第一个 default值改为0
[root@t01 itrms-manager]# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You do not have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /, eg.
#          root (hd0,0)
#          kernel /boot/vmlinuz-version ro root=/dev/vda1 net.ifnames=0 console=tty0 console=ttyS0,115200n8
#          initrd /boot/initrd-[generic-]version.img
#boot=/dev/xvda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS Linux (4.13.2)
        root (hd0,0)
        kernel /boot/vmlinuz-4.13.2 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-4.13.2.img
title CentOS Linux (2.6.32-754.35.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-754.35.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-754.35.1.el6.x86_64.img
title CentOS (2.6.32-754.12.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-754.12.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-754.12.1.el6.x86_64.img
title CentOS (2.6.32-696.20.1.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-696.20.1.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-696.20.1.el6.x86_64.img
title CentOS (2.6.32-431.23.3.el6.x86_64)
        root (hd0,0)
        kernel /boot/vmlinuz-2.6.32-431.23.3.el6.x86_64 ro root=UUID=94e4e384-0ace-437f-bc96-057dd64f42ee rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM   net.ifnames=0 console=tty0 console=ttyS0,115200n8
        initrd /boot/initramfs-2.6.32-431.23.3.el6.x86_64.img
[root@t01 ~]$ reboot
[root@01 ~]$ uname -r
4.13.2

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注