linux内核高级优化脚本

可以用于hadoop生态圈环境的组件安装 linux内核调优

具体的每一步的解释请参考

03搭建cdh

备注:使用与centos6和centos7两个系统版本执行

[[email protected] scripts]# pwd

/opt/scripts

[[email protected] scripts]# ll

total 12

-rw-r--r-- 1 root root 3837 Apr 22 14:34 adlinuxopt.sh

-rw-r--r-- 1 root root 7215 Apr 22 13:32 initialization.sh

[[email protected] scripts]# cat adlinuxopt.sh

#!/bin/bash

#adlinuxopt scripts

#author majihui

#date 20190422

#by Advanced linux optimization for hadoop

echo "在执行此脚本之前需要先执行 initialization.sh 等待5s确认"

echo "若没执行请 ctrl+c 退出执行"

sleep 1

echo "1S"

sleep 2

echo "2S"

sleep 3

echo "3S"

sleep 4

echo "4S"

sleep 5

echo "5S"

if [ ! -d "/opt/scripts" ]; then

mkdir -p /opt/scripts

fi

echo "等待1s:#1/判断centos7还是centos6系统"

sleep 1

VERSION=`cat /etc/redhat-release|awk -F " " ‘{print $3}‘|awk -F "." ‘{print $1}‘`

if [ "$VERSION" == "6" ];then

VERSION=‘6‘

echo "centos6"

else

VERSION=‘7‘

echo "centos7"

fi

echo "-----------------------------华丽分隔符----------------------------------------"

echo "#2/调整Linux磁盘缓存和性能"

if [ "`egrep "vm.dirty_background_ratio = 5" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "vm.dirty_background_ratio = 5" >> /etc/sysctl.conf

else

echo "Linux磁盘缓存和性能 vm.dirty_background_ratio 设置成功或者之前已经设置过了"

fi

if [ "`egrep "vm.dirty_ratio = 10" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "vm.dirty_ratio = 10" >> /etc/sysctl.conf

sysctl -p

else

echo "Linux磁盘缓存和性能 vm.dirty_ratio设置成功或者之前已经设置过了"

fi

echo "-----------------------------华丽分隔符----------------------------------------"

echo "#3/是否禁用ipv6"

echo "等待3秒:"

sleep 3

cat << EOF

**********************

1.[disable ipv6]

2.[no disable ipv6]

3.[exit]

pls input the num you want:

**********************

EOF

read -t 30 -p "pls input the num you want:" a

[ -n "`echo $a|sed ‘s#[0-9]##g‘`" ] && {

echo "Input error"

exit 1

}

iffuncation(){

if [ $a -eq 1 ];then

echo "disable ipv6"

echo "等待3S"

sleep 3

if [ "`egrep "net.ipv6.conf.all.disable_ipv6=1" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "net.ipv6.conf.all.disable_ipv6=1" >> /etc/sysctl.conf

fi

if [ "`egrep "NETWORKING_IPV6=no" /etc/sysconfig/network|wc -l`" == "0" ];then

echo "NETWORKING_IPV6=no" >> /etc/sysconfig/network

fi

pathnetwork=`ls /etc/sysconfig/network-scripts/ifcfg-e*`

echo NETWORKING_IPV6=no >> $pathnetwork

sysctl -p

echo "等待3S"

sleep 3

elif [ $a -eq 2 ];then

echo "no disable ipv6"

elif [ $a -eq 3 ];then

exit 1

else

echo "Input error"

exit 1

fi

}

iffuncation

echo "-----------------------------华丽分隔符----------------------------------------"

echo "#4/socket读写缓冲区调优"

if [ "`egrep "net.core.wmem_default=256960" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "net.core.wmem_default=256960" >> /etc/sysctl.conf

fi

if [ "`egrep "net.core.rmem_default=256960" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "net.core.rmem_default=256960" >> /etc/sysctl.conf

fi

if [ "`egrep "net.core.wmem_max=2097152" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "net.core.wmem_max=2097152" >> /etc/sysctl.conf

fi

if [ "`egrep "net.core.rmem_max=2097152" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "net.core.rmem_max=2097152" >> /etc/sysctl.conf

fi

if [ "`egrep "net.ipv4.tcp_wmem=8760 256960 4088000" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "net.ipv4.tcp_wmem=8760 256960 4088000" >> /etc/sysctl.conf

fi

if [ "`egrep "net.ipv4.tcp_rmem=8760 256960 4088000" /etc/sysctl.conf|wc -l`" == "0" ];then

echo "net.ipv4.tcp_rmem=8760 256960 4088000" >> /etc/sysctl.conf

sysctl -p

else

echo "socket读写缓冲区调优 设置成功或者之前已经设置过了"

fi

echo "-----------------------------华丽分隔符----------------------------------------"

echo "#5/预读缓冲调优"

DF=`df |sed -n 2p |awk ‘{print $1}‘`

blockdev --setra 8192 $DF

blockdev --getra $DF

执行结果如下

[[email protected] scripts]# sh adlinuxopt.sh

在执行此脚本之前需要先执行 initialization.sh 等待5s确认

若没执行请 ctrl+c 退出执行

1S

2S

3S

4S

5S

等待1s:#1/判断centos7还是centos6系统

centos6

-----------------------------华丽分隔符----------------------------------------

#2/调整Linux磁盘缓存和性能

Linux磁盘缓存和性能 vm.dirty_background_ratio 设置成功或者之前已经设置过了

Linux磁盘缓存和性能 vm.dirty_ratio设置成功或者之前已经设置过了

-----------------------------华丽分隔符----------------------------------------

#3/是否禁用ipv6

等待3秒:

**********************

1.[disable ipv6]

2.[no disable ipv6]

3.[exit]

pls input the num you want:

**********************

pls input the num you want:1

disable ipv6

等待3S

net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

net.ipv4.tcp_syncookies = 1

error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key

error: "net.bridge.bridge-nf-call-iptables" is an unknown key

error: "net.bridge.bridge-nf-call-arptables" is an unknown key

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.shmmax = 68719476736

kernel.shmall = 4294967296

vm.swappiness = 1

vm.dirty_background_ratio = 5

vm.dirty_ratio = 10

net.ipv6.conf.all.disable_ipv6 = 1

net.core.wmem_default = 256960

net.core.rmem_default = 256960

net.core.wmem_max = 2097152

net.core.rmem_max = 2097152

net.ipv4.tcp_wmem = 8760 256960 4088000

net.ipv4.tcp_rmem = 8760 256960 4088000

等待3S

-----------------------------华丽分隔符----------------------------------------

#4/socket读写缓冲区调优

socket读写缓冲区调优 设置成功或者之前已经设置过了

-----------------------------华丽分隔符----------------------------------------

#5/预读缓冲调优

8192

参考链接为:03搭建cdh 生产环境前的Linux 优化(涉及到Linux内存参数优化)

https://blog.51cto.com/12445535/2365948

linux内核优化脚本,linux内核高级优化脚本相关推荐

  1. Linux内核启动速度优化,嵌入式Linux启动时间优化的秘密之五-Bootloader

    描述 本文主要讲述嵌入式Linux启动时间优化的秘密,我们继续上篇没有讲完的嵌入式Linux启动时间优化方法,本文主要会讲Bootloader.想看上一篇的请查看本文结尾的链接. Bootloader ...

  2. linux 安装 加入内核参数,Linux 实现自动安装服务组件以及优化内核参数

    安装好Linux裸机后(安装请参考: http://www.linuxidc.com/Linux/2014-12/111062.htm),还需要在其上安装一些基础组件,一般是手动一个个安装,比较繁复也 ...

  3. linux 内核优化实战,Linux编译优化必须掌握的几个姿势总结

    01.编译选项和内核编译 Linux内核(英语:linux kernel),是一种计算机操作系统内核,已C语言和汇编语言写成,匹配POSIX标准,以GNU通用公共许可证发布.从技术上说Linux只是一 ...

  4. Linux 实现自动安装服务组件以及优化内核参数

            安装好Linux裸机后(安装请参考:http://blog.itpub.net/26230597/viewspace-1380155/),还需要在其上安装一些基础组件,一般是手动一个个 ...

  5. linux tcp文件分包_Linux内核参数优化

    前言: 1:介绍下linux内核的整个知识体系,(学会它,你肯定对linux内核有不一样的理解.) 2:谈谈Linux内核参数优化 一:linux内核技术点 Linux内核知识体系分为五个部分 1:l ...

  6. Linux系统工程师--(1)Vsftpd服务的部署及优化与linux中内核级加强型火墙的管理

    Linux系统工程师 实验所用系统为Redhat-rhel8.2. 目录 Linux系统工程师 Linux的系统工程师--Vsftpd服务的部署及优化 一.ftp介绍 二.vsftpd安装及启用 三. ...

  7. oracle税务运维脚本练习,荣欣Linux运维+Oracle DBA初级+高级全套实战训练

    第一阶段:企业版Linux系统运维基础.项目实战:112课时xa0 第二阶段:基于互联网门户Linux应用集群与Mysql数据库集群架构设计与维护,项目实战:112课时 第三阶段:Oracle DBA ...

  8. [转]Linux 2.6.19.x 内核编译配置选项简介

    Linux 2.6.19.x 内核编译配置选项简介 作者:金步国,转载地址:http://lamp.linux.gov.cn/Linux/kernel_options.html 版权声明 本文作者是一 ...

  9. Windows程序员初学Linux内核(附Linux内核各版本历史纪年表)

    我是荔园微风,作为一名在IT界整整25年的老兵,最近受邀给年轻人讲了一场Windows内核和Linux内核相关的讲座.大家听得非常认真.下面我把其中一些PPT放上来和大家分享. Windows内核(右 ...

最新文章

  1. ip设置 kali 重置_在 Windows 系统中如何重置 TCP/IP 协议堆栈修复网络连接问题
  2. Creating Apps With Material Design —— Defining Custom Animations
  3. 修改Kali Linux终端主题
  4. tenflow数据集_计算机视常用的数据集 Data sets
  5. linux处理机调度实验报告,处理机调度试验
  6. 有三AI小程序上线,把你的代码show给世界
  7. codeforces 1060a(思维水题)
  8. P2522-[HAOI2011]Problem b【莫比乌斯反演】
  9. 【POJ - 2376】Cleaning Shifts (贪心)
  10. Linux备份全攻略
  11. HDU 5701:中位数计数
  12. L3-015 球队“食物链” (30 分)
  13. 用html制作圆的周长,几何画板制作圆周长展开动画
  14. 定时任务Quartz 之 cron表达式(时间表达式)
  15. 淘宝买家和卖家的经典对话
  16. 基于Nextcloud,挂载Google drive,搭建Aria2+AriaNg,实现在线下载BT磁链/在线观看/全功能文件管理/无限容量云盘
  17. html里面超链接alt_怎样用HTML代码在图片插入超链接
  18. pink老师 JS p61课后作业
  19. LabVIEW创建的PDA应用程序不是一个合法的Pocket PC应用程序
  20. UE4编译错误:Unable to delete XXX

热门文章

  1. Apache的Access.log分析总结
  2. c 形参 可变 入门
  3. CCNA配置试验之六 标准ACL和扩展ACL的配置
  4. oracle 区管理系统,oracle区管理和段空间管理详细介绍
  5. 信息学奥赛一本通(2018:【例4.3】输出奇偶数之和)
  6. 图论 —— 生成树 —— 最小生成树 —— Kruskal
  7. 暑期训练日志----2018.8.22
  8. 动态规划 —— 状压 DP
  9. python中import星_【已解决】Python中递归import导入:ImportError: cannot import name
  10. mac自带python升级_mac升级Python失败?