Docker-01 无人值守升级 CentOS 6.x 系统内核到 3.10.x 长期支持版
1 #!/bin/bash 2 3 # 4 # 无人值守升级 CentOS 6.x 系统内核到 3.10.x 长期支持版 5 # 6 7 # 8 # 1、检查操作系统是否为 CentOS 6.x 9 # 10 11 cat /etc/centos-release |grep -i centos |egrep '6.[[:digit:]]+' &>/dev.null 12 if [[ $? != 0 ]] 13 then 14 echo -e "不支持的操作系统,该脚本只适用于 CentOS 6.x 操作系统" 15 exit 1 16 fi 17 18 # 19 # 2、检查当前内核版本是否满足安装 Docker 的要求: 20 # 如果满足直接退出脚本,如果不满足将自动升级系统内核 21 # 22 23 if [[ $(uname -r |awk -F '.' '{print $1}') -ge 3 ]] 24 then 25 if [[ $(uname -r |awk -F '.' '{print $2}') -ge 10 ]] 26 then 27 echo "该操作系统内核版本已满足安装 Docker 的要求,无需升级" 28 exit 1 29 fi 30 fi 31 32 # 33 # 3、导入 ELRepo 公钥 34 # 35 36 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 37 38 if [[ $? != 0 ]] 39 then 40 echo "导入 ELRepo 公钥失败" 41 exit 1 42 fi 43 44 # 45 # 4、安装 ELRepo YUM 源 46 # 47 48 rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm 49 50 # 51 # 5、升级内核到 3.10.x 长期支持版 52 # 53 54 yum --enablerepo=elrepo-kernel install kernel-lt -y 55 56 if [[ $? != 0 ]] 57 then 58 echo "升级内核到 3.10.x 长期支持版失败" 59 exit 1 60 fi 61 62 # 63 # 6、配置 GRUB ,下次启动时加载新的内核 64 # 65 66 sed -i 's/default=1/default=0/' /etc/grub.conf && sed -i 's/default=1/default=0/' /boot/grub/grub.conf 67 68 if [[ $? != 0 ]] 69 then 70 echo "配置 GRUB ,下次启动时加载新的内核失败" 71 exit 1 72 fi 73 74 # 75 # 7、重启操作系统,重新加载内核 76 # 77 78 echo -en "\n\t" 79 read -p "立即重启操作系统,加载内核 3.10.101 [y/N]" rebootnow 80 if [[ $rebootnow == y ]] 81 then 82 reboot 83 else 84 echo -e "\n\t稍后手动重启操作系统加载内核 3.10.101\n" 85 fi