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

下面贴出写的脚本,脚本里面有好多地方写的不是特别完善,希望大家给出意见,让我来完善它。

#!/bin/bash

function readme()
{
echo ==========编写一个关于centos7 最小化系统安装后 需要设置的东西 ==========
echo ==========1、默认执行dhclient,获取IP地址 ========== (这句写的太废话了,自己承认错误)
echo ==========2、安装基本的包,包括ifconfig、netstat、wget、vim命令 ==========
echo ==========3、更换阿里云yum源"(可选择更换,也可选择不更换)" ==========
echo ==========4、设置自动更新时间,"自动更新时间为每天1点" ==========
echo ==========5、安装常用系统工具 ==========
echo ==========6、配置基础java环境 ==========
echo ==========输入任意字符、执行退出操作 ==========
echo "请输入您的选择"
read num
#sleep 5
}

function one(){
echo "系统安装以后 直接先使用dhclient来进行获取IP地址"
sleep 2
dhclient
echo "获取到的IP地址为" +`ip addr | grep inet | grep 192.*.*.*` 
}

function two(){
echo "确认网络没有问题了,安装一些常用的类库包"
sleep 2
yum install -y vim wget ntpdate sysstat wget man mtr lsof iotop net-tools
}

function three(){
 echo "更换阿里云yum源"
 sleep 2
 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
 yum makecache
}
function four(){
   echo "设置自动更新时间"
   if [ `cat  /etc/crontab | grep ntpdate | wc -l` -gt 0 ]
   then
       echo "您已经设置自动时间同步的服务器"
   else
       echo "0 0 * * * root /usr/sbin/ntpdate cn.pool.ntp.org" >> /etc/crontab
   fi
}
function five(){
    echo "安装常见的开发类库"
    yum install -y gcc gcc-c++ make cmake autoconf bzip2 bzip2-devel curl openssl openssl-devel rsync gd zip perl unzip lrzsz
}
function six(){
    echo "安装java jdk 环境"
    tar -zxvf java.tar.gz -C /usr/local/
    java_version=jdk1.8.0_91
cat >> /etc/profile << END
    export JAVA_HOME=/usr/local/$java_version
    export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
END

source /etc/profile

echo "java 环境安装完成请查看"
}

#调用readme函数
readme
while [ $num -lt 7 ]
do
case $num in
   1)
     one
     readme
   ;;
   2)
     two
     readme
   ;;
   3)
     three
     readme
   ;;
   4)
     four
     readme
   ;;
   5)
     five
     readme
   ;;
   6)
    six
    readme
   ;;
   *)
     echo "欢迎您的使用"
   ;;
esac
done

脚本大概就这样,基本满足我自己的需要,其他的会再单独配置。

centos7 系统初始化脚本的更多相关文章

  1. Centos7系统初始化脚本

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

  2. 基于CentOS7系统添加自定义脚本服务及参数说明【转】

    概述 centos6如果要添加自定义脚本服务只需要把脚本放到/etc/init.d然后授权后用chkconfig添加后就可以管理了,那么centos7又是怎么添加自定义脚本服务呢? CentOS7添加 ...

  3. 简单的 centos7&rhel7 系统初始化脚本

    #!/bin/bash #描述: 基于RHEL7&centos7的初始化配置 #读取用户输入的ip read -p "输入你当前Linux的IP地址:" LAST #截取网 ...

  4. centos6、7系统初始化脚本

    #!/bin/bash # #******************************************************************** #encoding -*-utf ...

  5. centos系统初始化脚本

    #!/bin/bash #检测是否为root用户 ];then echo "Must be root can do this." exit fi #检测网络 echo " ...

  6. centos7系统初始化

    echo "# swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间" >> /etc/sysctl.conf echo -e "v ...

  7. LINUX 系统初始化脚本

    #!/bin/bash ######the system first start configuretion #####for install  ####copy right by donglei## ...

  8. Linux系统初始化脚本

    #查看centos的版本号 CentOS_version=`cut -d /etc/centos-release | cut -d` #改变PS3格式 PS3="Please enter t ...

  9. 给公司个别安装好的系统环境处理-相当half系统初始化脚本shell

    #!/bin/bash# Used for other system-environment update! echo -e '\n\033[35m~~请使用root权限运行此脚本~~\033[0m\ ...

随机推荐

  1. ListView 的使用

    一.ListView:不同视图中一种显示想的集合,显示表格样式的数据信息1.视图:            在其右上方小箭头点击将视图改为Details:或者右键属性在外观View将其改为Details ...

  2. a链接中套a链接

    <a href="baidu.com"> <div> <div class="title">百度</div> & ...

  3. [转] c# 模拟Asp.net页面中的某个按钮的点击,向web服务器发出请求

    在没有做题目中所述的内容的时候,感觉这应该是很简单的东西,但是当真正开始做的时候却发现,有很多问题现在在这里写出来,供和我一样水平不高的参考一下. 在写本文之前参照了一下文章 欢迎使用CSDN论坛阅读 ...

  4. asp.net链接数据库问题,设置收藏本站,设置主页

    SQL Server 2008附加数据库失败:无法打开物理文件拒绝访问解决方法 无法打开物理文件 "E:\SQLDATA\EMSXDB.mdf".操作系统错误 5:"5( ...

  5. 用 QGIS 画矢量交通路线图

    一.准备工作 1.安装插件 为了方便画图,我们安装了OpenLayers,QuickOSM两个插件. 如何安装插件,度娘上都有答案.下图中打勾的部分为安装好的插件: OpenLayers提供了一些开放 ...

  6. javascript 手势缩放 旋转 拖动支持:hammer.js

    原文: https://cdn.rawgit.com/hammerjs/hammer.js/master/tests/manual/visual.html /*! Hammer.JS - v2.0.4 ...

  7. Git 分支

    Git 保存的不是文件的变化或者差异,而是一系列不同时刻的文件快照,某一次的提交指向这处时刻的文件快照,看起来就像每次提交都保存了当时的文件,连续的提交形成一条长链 分支 指向某一个特定的提交,不同的 ...

  8. C#开发系统服务时用的定时器组件

    写服务时,都需要为定时器写不少的代码,感觉很麻烦,今天把这些代码封装一下,希望能简化一下这方面的工作,把精力都集中在功能上 本定时器组件,每次只启动一个服务实例进行处理,而不会同时多次执行服务代码. ...

  9. SpringMVC RequestMapping & 请求参数

    SpringMVC 概述 Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一 Spring3.0 后全面超越 Struts2,成为最优秀的 MVC ...

  10. Android中的slidingmenu

    简介 SlidingMenu作为滑动侧边栏主要用来代替Android传统的Menu菜单. 导入方法 SlidingMEnu以前依赖于另一个开源库ActionBarSherlock,但是现在被AppCo ...