今天分享一个自己写的一个初始化的小脚本.

  编写初始化系统要考虑到系统的版本问题,现在用的比较多的就是centos6和centos7,所以首先要判断一下系统的版本。

      cat /etc/redhat-release                       //查看系统版本
      cat /etc/redhat-release | awk '{print $(NF-1)}' | awk -F "." '{print $1}'
                                  //将centos是6还是7筛选出来,方便后面针对不同系统进行初始化

  因为我是从centos7开始学的,对centos6不是很熟悉,centos6与centos7有一些命令会有一些差别,所以这里就不对centos6进行过多的讲述,有想对CentOS6进行初始化的,可以对我下面对centos7的命令更改为centos6的命令

1)   配置镜像源(可以选择阿里云的或者163,默认的国外源速度比较慢)     

      rm -rf /etc/yum.repos.d/*.repo                                              //删除默认的源
      curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo //下载基础源
      curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo       //下载epel源
      yum makecache                                             //重建缓存 

  可以根据自己所需选择适合的镜像源,此处,我选择的是阿里云的镜像源。

    阿里云的开源网站    https://opsx.alibaba.com/mirror
    网易的开源网站 http://mirrors.163.com/

  

2)对防火墙进行更改

      systemctl stop firewalld                          //将防火墙关闭
      systemctl enable firewalld               //将防火墙设置为开机不启动

 有人会说,为什么要关闭防火墙,关闭防火墙不是安全性降低了吗? 解释一下,现在很多公司都是关闭防火墙的,因为他们采用了安全性能跟更好的物理防火墙,当然如果你选择不关闭防火墙也没有问题,只是在你开启其他服务的时候,要在防火墙上打开相应的服务,不然无法正常启用服务。

 3)关闭SELinux(99%的人都选择关闭,不过在红帽认证的考试中,是开启的,所以做红帽题的时候,一定要注意SELinux的影响)

      sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config      //修改selinux的配置文件
      setenforce 0  //临时关闭selinux,因为修改完selinux,只有重启电脑,才能加载selinux,所以可以在第一次的时候可以先临时关闭一次

  第一次防止自己改错的话,可以先不加i,确定修改无误后再加 i

4)设置ssh(设置ssh让远端ssh连接这台机器的时候,速度更快一些)

      sed -ri  '/^GSSAPIAuthentication/cGSSAPIAuthentication no' /etc/ssh/sshd_config
      sed -ri '/DNS/cUseDNS no' /etc/ssh/sshd_config

5)下载基础软件

      yum -y install wget tree lftp vim bash-com*

  大家有什么意见或者哪里有错误,都欢迎大家评论

附件,我一般使用的初始化脚本

#! /bin/bash
# 初始化脚本 # 颜色定义
cl_red='\e[31m'
cl_green='\e[32m'
cl_blue='\e[34m'
cl_reset='\e[0m' # 文件位置
dir_yum=/etc/yum.repos.d echo -e "${cl_green}开始初始化!${cl_reset}"
echo -e "${cl_blue}开始更换Yum源...${cl_reset}"
if [ ! -d ${dir_yum}/backup ];then
mkdir ${dir_yum}/backup
fi mv ${dir_yum}/*.repo ${dir_yum}/backup if [ ! -f ${dir_yum}/aliyun.repo ];then
curl -o /etc/yum.repos.d/aliyun.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum makecache
fi if [ $? -eq 0 ];then
rm -rf ${dir_yum}/backup
fi echo -e "${cl_blue}开始下载基础包....${cl_reset}"
rpm -qa | grep wget || yum -y install wget
rpm -qa | grep tree || yum -y install tree
rpm -qa | grep bash-com* || yum -y install bash-com*
rpm -qa | grep psmisc || yum -y install psmisc
rpm -qa | grep vim-enhanced || yum -y install vim
rpm -qa | grep ntp || yum -y install ntp
rpm -qa | grep lsof || yum -y install lsof
rpm -qa | grep ifconfg || yum -y install net-tools echo -e "${cl_blue}关闭防火墙和selinux....${cl_reset}"
systemctl stop firewalld
systemctl disable firewalld &>/dev/null
sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config
setenforce 0 &>/dev/null echo -e "${cl_blue}设置ssh${cl_reset}"
sed -ri '/DNS/cUseDNS no' /etc/ssh/sshd_config
sed -ri '/^GSSAPIAuthentication/cGSSAPIAuthentication no' /etc/ssh/sshd_config
sed -ri '/StrictHostKeyChecking/cStrictHostKeyChecking no' /etc/ssh/ssh_config echo -e "${cl_blue}设置主机名${cl_reset}"
# 必须让\[\]的括号住,不然可能会不自动换行
echo export PS1="[\[\e[35m\]\u\[\e[33m\]@\[\e[36m\]"$(ifconfig eth0 | grep "inet " | awk '{print $2}')" \[\e[0m\]\W]\\$ " > /etc/profile.d/env.sh
source /etc/profile echo > /etc/profile.d/rc.sh <<-EOF
if [ -d ~/.bashrc ];then
/bin/mkdir ~/.trash
fi
alias rm=del
del(){
mv $@ ~/.trash/
}
cleardel(){
echo -en "\e[31mAre you sure clear? (y/n)\e[0m"
read confirm
[ ${confirm} == "y" ] || [ ${confirm} == "Y" ] && /bin/rm -rf ~/.trash/*
[ ${confirm} == "n" ] || [ ${confirm} == "N" ] && exit 1
}
EOF echo -e "${cl_blue}同步时间...${cl_reset}"
ntpdate time1.aliyun.com &>/dev/null
echo -e "${cl_green}同步完成!${cl_green}" echo -e "${cl_red}系统已经初始化完成${cl_reset}"
echo -e "${cl_red}rm----> del${cl_reset}"

  

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

  1. centos7 初始化脚本

    #!/bin/bash # 时间: 2018-11-21 # 作者: HuYuan # 描述: CentOS 7 初始化脚本 # 加载配置文件 if [ -n "${1}" ];t ...

  2. centos7初始化脚本(转)

    #!/bin/bash # 描述: CentOS 初始化脚本 # 加载配置文件 if [ -n "${1}" ];then /bin/} fi # 可接受配置(shell 变量格式 ...

  3. centos7 系统初始化脚本

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

  4. Centos7系统初始化脚本

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

  5. centos7最小安装初始化脚本

    #!/bin/bash #zhangsen #lovexlzs@qq.com if [[ "$(whoami)" != "root" ]]; then exit ...

  6. centos7初始化bashshell脚本

    centos7初始化bashshell脚本 #!/bin/bash if [[ "$(whoami)" != "root" ]]; then echo &quo ...

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

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

  8. centos 7 初始化脚本

    #!/bin/bash # 时间: 2018-11-21 # 作者: HuYuan # 描述: CentOS 7 初始化脚本 # 加载配置文件 if [ -n "${1}" ];t ...

  9. liunx用户环境初始化脚本

          liunx用户环境初始化脚本 编写生成脚本基本格式,包括作者,联系方式,版本,时间,描述等 [root@magedu ~]# vim .vimrc set ignorecase set c ...

随机推荐

  1. ArcGIS AddIn 图斑比例分割工具,调用捕捉功能

    最近做一个图斑按比例分割的工具,需要绘制一条用以切割的方向线,通过Tool的方式实现 绘制时希望能够使用捕捉功能,查阅相关资料如下: 使用该文章,第Implementing snapping in a ...

  2. python 第三方扩展库的安装

    主要就是采用 easy_install 和pip安装,一定要把这两个东西安装好.http://peak.telecommunity.com/DevCenter/EasyInstall下载ez_setu ...

  3. C#winform窗体实现对sql server数据库的增删改查

    1.运行效果截图 2.输入用户名,密码进行查询 查找成功则显示 查找不成功显示用户信息不存在 3.输入用户名与密码,向数据库中添加用户信息 添加后数据库表信息 4.查看全部信息 5.根据编号信息进行查 ...

  4. 怎么将APE转MP3,APE转MP3的方法

    怎样实现APE转MP3的问题呢?很多时候我们从网上所下载的音乐格式,可能并不是我们所需要的音乐格式.如APE音乐格式,那么当我们下载了自己并不需要的APE音乐格式我们应该如何将其转换为自己需要的MP3 ...

  5. Consul的应用

    Consul在集群上的每一个节点(包括Server和Client)都运行一个Agent,通过这个Agent可以进行对Consul所提供的功能的操作,通过调用一系列HTTP API与Agent的交互即可 ...

  6. java的几种对象(PO,VO,DAO,BO,POJO,DTO)解释

    一.PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何对数 ...

  7. 前端模板 artTemplate之辅助方法template.helper

    var labelMap = { onlinePayment:{ label:"在线支付", desc:"支持大部分储蓄卡.信用卡及第三方平台支付", name ...

  8. 网络对抗实验一 逆向及Bof基础实践

    网络对抗实验一 逆向及Bof基础实践 一.实验目的 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. ...

  9. Ecplise通过Git将项目提交到GitHub

    一.参考https://blog.csdn.net/bendanany/article/details/78891804 二.注意点: 1.仓库名必须和项目名相同: 2.若提交出现Can't conn ...

  10. 一个少女心满满的例子带你入门canvas

    https://blog.csdn.net/sunshine940326/article/details/76572850 本文首发于我的个人博客:http://cherryblog.site/ gi ...