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

#!/bin/bash
#
#Filename:postinstall_init.sh
#Description:系统安装完成后,对系统进行一些配置,以符合自己的试验环境
#Author:renpingsheng
#Email:995883352@qq.com
#Version:1.0
#Date:2017.5.5


setenforce 0

#更改selinux的配置文件,禁用selinux,成功则打印“配置完成”
sed -i.bak '1,$s@SELINUX=enforcing@SELINUX=disabled@g' /etc/selinux/config && echo "SElinux is setting OK!"

#定义一些常用的别名
cat <<EOF >>/root/.bashrc && echo "The file bashrc is setting ok!"
alias "cdnet"="cd /etc/sysconfig/network-scripts/"
alias "grep"="grep --color=auto"
alias "renet"="service network restart"
EOF


#备份系统已有的repo文件
cd /etc/yum.repos.d/
[ -d repo_bak ] || mkdir repo_bak
mv *.repo repo_bak
echo "The old repo file is backup ok!"

#配置内网的yum源
cat <<EOF > CentOS-base.repo
[CentOS-base]
name=CentOS-base
baseurl=http://172.16.0.1/cobbler/ks_mirror/CentOS-6.8-x86_64/
enabled=1
gpgcheck=0

[epel]
name=CentOS-epel
baseurl=http://172.16.0.1/fedora-epel/6/x86_64/
enabled=1
gpgcheck=0
EOF
echo "The repository is setting ok!"

#清空yum缓存,生成新的yum缓存
yum clean all && yum makecache &> /dev/null

#安装一些常用的软件
for software in vim createrepo psmisc tree lftp htop lrzsz nmap wget traceroute; do
    rpm -q $software
    #判断软件是否已经安装
    if [ $? == 1 ]; then 
        yum install -y $software >> /dev/null && echo "The package $software is install OK!"
    else
        echo "The Package $software is already installed!"
    fi
done
#释放定义的变量
unset software

#安装系统开发组件
yum groupinstall -y "Development tools" >> /dev/null && echo "Development tools suite is installed ok!"

#配置vim别名
echo "alias vi=vim" >> /root/.bashrc

#配置vim环境
cat <<EOF >> /root/.vimrc && echo "The vimrc file is setting ok!"
set hlsearch
set nu
set ai
set ic
set sm
syntax on
set fileformat=unix
EOF

#使.bashrc文件立即生效
source /root/.bashrc

#使.vimrc文件立即生效
source /root/.vimrc

#重启系统
shutdown -r now

原创文章,作者:renpingsheng,如若转载,请注明出处:http://www.178linux.com/74868

(0)
renpingshengrenpingsheng
上一篇 2017-05-07 08:53
下一篇 2017-05-07 10:03

相关推荐

  • 查找find及压缩与解压

    find  根据时间戳:以“天”为单位;              -atime [+|-]#,                #: [#,#+1)   2 那就是大于等于二天小于…

    2017-08-12
  • Linux基础知识之网络配置

    基本网络配置:     将Linux主机接入到网络,需要配置网路相关设置。         IP/NETMASK:本地通信         路由(网关):跨网络…

    Linux干货 2016-09-07
  • shell脚本小练习..

    刚刚接触vim和shell脚本,用几个小脚本练练手。 1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。 2、编写脚本/root/bin/backup.sh,可实现每日将/etc/目录备份到/root/etcYYYY-mm-dd中。 3、编写脚本…

    2017-04-13
  • 软件包管理(rpm篇)

    软件包管理(rpm篇)静态和动态链接    链接主要作用是把各个模块之间相互引用的部分处理好,使得各个模块之间能够正确地衔接,分为静态链接和动态链接    静态链接        把程序对应的依赖库复制一份到包&nbsp…

    Linux干货 2017-04-24
  • shell脚本编程

    shell俗称壳(用来区别于核),提供使用者使用界面(命令解析器),它接受用户命令,然后调用相应的应用程序。 同时它还是一种程序设计语言,作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设计好的一连串的命令。作为程序涉及语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。 一、shell脚本基础概念 …

    Linux干货 2016-08-16
  • N25-第六周作业

    第六周 请详细总结vim编辑器的使用并完成以下练习题 文本编辑器: vim:     模式化的编辑器         基本模式:          &…

    Linux干货 2016-12-28