#!/bin/bash

 # get OS verison

 RELEASEVER=$(rpm -q --qf "%{Version}"  $(rpm -q --whatprovides readhat-release) )

 #configure yum

 if [ $RELEASEVER == 6 ];then

     wget http://mirrors.163.com/.help/CentOS6-Base.repo

 fi

 if [ $RELEASEVER == 7 ];then

     wget http://mirrors.163.com/.help/CentOS7-Base.repo

 fi

 yum clean all

 yum makecache

 #install base rpm package

 yum -y install vim iftop iotop htop ntpdate

 #update rpm package and kernel

 yum -y update

 #ulimit

 > /etc/security/limits.conf

 cat >> /etc/security/limits.conf <<EOF

 * soft nproc 65535

 * hard nproc 65535  #最大进程数

 * soft nofile 65535

 * hard nofile 65535  #最大文件打开数

 EOF

 #time zone

 [ -f /etc/localtime ] && rm -rf /etc/localtime

 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

 #update time

 if [ $RELEASEVER == 6 ];then

     /usr/bin/ntpdate pool.ntp.org

     grep -q ntpdate /var/spool/cron/root

     if [ $? -ne 0 ];then

 #iptables

 if [ $RELEASEVER == 6 ];then

     /sbin/iptables -F

     service iptables save

     chkconfig iptables off

 fi

 if [ $RELEASEVER == 7 ];then

     systemctl disable firewalld

 fi

 #SELINUX
setenforce 0
sed -i 's/SELINUX=enabled/SELINUX=disabled/' /etc/selinux/config #DNS
> /etc/resolv.conf
cat >> /etc/resolv.conf <<EOF
nameserver 114.114.114.114
nameserver 8.8.8.8
EOF
#sysctl
cat >> /etc/sysctl.conf << EOF
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_recycle=0
EOF
sysctl -p

在实际工作中,一台服务器安装完系统后还需要做完很多初始化的工作才能正式交付。包括但不限于:

1、安装常用软件包便于工作,如gcc、cmake等

2、关闭不必开启的服务来节约资源,如关闭IPv6、SELINUX

3、优化系统参数,如修改TIME_WAIT值

为了省去重复性操作,可以把这一系列的操作写成一个通用脚本,脚本内容大致如上

PS:

需要注意:直接粘贴复制到linux机器的脚本需要如下操作

安装:

yum install -y  dos2unix

转换

dos2unix **.sh

实际情况中代码中的一些参数须自己更改,如有疑问可私信或私信加QQ

centos7andcentos6初始化脚本的更多相关文章

  1. ubuntu系统安装初始化脚本

    ubuntu系统安装初始化脚本 经常安装卸载ubuntu,每次系统安装完成后要安装好多软件,一个个命令输很麻烦浪费时间,一个sh文件全搞定! 1. flashplayer下载:点击这里 2. Auda ...

  2. 分析MariaDB初始化脚本mysql_install_db

    在初始化MySQL的过程中经常会碰到各种问题,如 FATAL ERROR: Could not find ./bin/my_print_defaults ERROR: Can't create/wri ...

  3. jeecg安装——mysql数据库创建+手动执行初始化脚本

    国产的开源项目官方文档写得那么详细,已经是很厚道了,可惜俺这种菜鸟还是会碰到各种"小"问题,做个笔记先! 1.新建数据库: CREATE DATABASE jeecg DEFAUL ...

  4. centos7 系统初始化脚本

    现在自己的本地虚拟机系统,直接安装的是centos7.2 mini版,安装完成发现好多东西都没有安装,所以写了一个简单的系统初始化脚本,让自己可以省一些力气,哈哈 人懒主要是. 下面贴出写的脚本,脚本 ...

  5. Openwrt 初始化脚本

    Openwrt 使用自己的初始化脚本系统,所有的初始化脚本位于 /etc/init.d 目录下. 任何一个初始化脚本必须包含基本的 start() 和 stop() 函数.当系统启动或用户拉起对应的进 ...

  6. 分享我自己的一个最小化安装CentOS6的初始化脚本

    在自己的虚拟机上使用的基于CentOS6的系统初始化脚本 #!/bin/bash # #Filename:system_init.sh #Description:系统安装完成后,对系统进行一些配置,以 ...

  7. Centos7初始化脚本

    今天分享一个自己写的一个初始化的小脚本. 编写初始化系统要考虑到系统的版本问题,现在用的比较多的就是centos6和centos7,所以首先要判断一下系统的版本. cat /etc/redhat-re ...

  8. linux系统最小化安装后的初始化脚本

    作为运维人员,经常会初始化系统,系统在安装过程中基本都会选择最小化安装,这样安装好的系统里会缺少很多环境. 下面分享一个系统安装后的初始化脚本: #!/bin/bash #系统时最小化安装的,这里要安 ...

  9. Centos7系统初始化脚本

    前言: 因公司业务增加,陆续新增服务器,时不时的来几台,手动地一台台对服务器初始化操作感觉太麻烦. 于是乎,根据初始化需求整合了一个初始化脚本,实现批量脚本初始化操作. 说明: 本脚本根据自身需求编写 ...

随机推荐

  1. [spring boot]idea中实现热部署的方法

    发生了任何修改之后,必须关闭后再启动Application类才能够生效,显得略微麻烦. Springboot提供了热部署的方式,当发现任何类发生了改变,马上通过JVM类加载的方式,加载最新的类到虚拟机 ...

  2. maven循环引用的问题

    多模块的maven工程,有时候由于设计的不合理或者需求的变更.会导致模块之间产生循环依赖,编译的时候会报如下的错误: [INFO] Scanning for projects... [ERROR] T ...

  3. Python中第三方库Requests库的高级用法详解

    Python中第三方库Requests库的高级用法详解 虽然Python的标准库中urllib2模块已经包含了平常我们使用的大多数功能,但是它的API使用起来让人实在感觉不好.它已经不适合现在的时代, ...

  4. Spring Boot默认日志logback配置解析

    前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日志输出格式以及输出方式如何配置? 代码中如何使用? 正文 Sp ...

  5. Git提交本地项目文件到GitHub的详细操作

    因最近在使用git命令提交代码到github的操作,网上找了下教程,记录下过程,便于查看 添加整个文件夹及内容 git add 文件夹/ 添加目录中所有某种类型的文件 git add *.文件类型 `

  6. Apache配置同一IP使用多域名对应多个网站

    CentOS下的Apache的配置是/etc/httpd/conf/httpd.conf vi /etc/httpd/conf/httpd.conf 添加 <VirtualHost *:80&g ...

  7. 基于模板匹配的目标跟踪(OpenCV)

    基于VS2010+ OpenCV2.代码可以读入视频,也可以读摄像头,两者的选择只需要在代码中稍微修改即可.对于视频来说,运行会先显示第一帧,然后我们用鼠标框选要跟踪的目标,然后跟踪器开始跟踪每一帧. ...

  8. oracle报:ORA-01034和ORA-27101的解决办法

    出现ORA-01034和ORA-27101的原因是多方面的:主要是oracle当前的服务不可用,shared memory realm does not exist,是因为oracle没有启动或没有正 ...

  9. IDEA自动生成的注释模板

    使用效果如下: * * @功能描述 : $params$ * @return $returns$ * @author xuetao */ 其中 $params$的表达式如下: groovyScript ...

  10. 通过using声明改变个别成员的可访问性

    C++的语法中通过在派生类中使用using声明可以忽略继承方式 , 而让派生类对于基类的私有和保护成员具有特殊的访问权限 , 甚至可以改变派生类对象对于基类成员的访问权限 . 个人认为这种语法很容易让 ...