分享我自己的一个最小化安装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

相关推荐

  • 从Linux小白到大牛——与狼共舞的日子12(下)

    马哥教育网络班21期+第12周课程练习 5、为第4题中的第2个虚拟主机提供https服务,使得用户可以通过https安全的访问此web站点; (1)要求使用证书认证,证书中要求使用的国家(CN)、州(HA)、城市(ZZ)和组织(MageEdu); (2)设置部门为Ops,主机名为www2.stuX.com,邮件为admin@stuX.com; 1.CA生成私…

    Linux干货 2016-12-26
  • Net22-第一周作业-linux基础知识

    1、描述计算机的组成及其功能。    计算机硬件由五大部件组成,分别是运算器、控制器、存储器、输入和输出设备组成。 其中,运算器和控制器合称为cpu,接受指令,加工数据。 存储器又分为内存和外存(硬盘、U盘等等),这里指的是内存,给cpu提供数据和指令。 输入设备对数据进行输入,如鼠标,键盘等。 输出设备对计算结果进行显示或者打印等,如显…

    Linux干货 2016-08-22
  • yum使用和源码编译进程

    yum 是通过分析RPM的标头数据,根据各软件的依赖关系制作出有依赖关系时的解决方案,然后自动处理软件的依赖性问题,以解决软件安装或升级的问题。  yum使用方法: yum [options] [command] [packages …] install package .. 通过yum安装软件包 update package .. 更新软件包 u…

    Linux干货 2016-08-24
  • Linux文件管理及bash脚本特性

    马哥教育网络班23期+第2周课程练习 Linux文件管理及bash脚本特性 概述,经过前三天的学习,想必我们已经对Linux 有了一个初步的了解,接下来这讲我们要讲述一下Linux至关重要的文件管理和bash脚本特性等知识要点 一、Linux 文件管理 1.1 原理概述   文件管理对于Linux系统来说至关重要,因为Linux 的哲学思想就是一切…

    Linux干货 2016-09-19
  • 条件判断if、case与文件查找locate、find及相关练习

    一、条件选择 1、if:按条件执行脚本中的内容,可以使用嵌套结构,有单分支、双分支和多分支结构,每个条件中可以有不止一条语句,如果有多条语句,可以用and(-a)或or(-o)连接在一起,但不能使用&&或||: if COMMANDS; then     COMMANDS;   &n…

    Linux干货 2016-08-18
  • Redis 代理服务Twemproxy

    1、twemproxy explore       当我们有大量 Redis 或 Memcached 的时候,通常只能通过客户端的一些数据分配算法(比如一致性哈希),来实现集群存储的特性。虽然Redis 2.6版本已经发布Redis Cluster,但还不是很成熟适用正式生产环境。 Redis 的 Clust…

    Linux干货 2015-04-04