CentOS7 reset脚本,用于初始化新的虚拟机
admin
2023-03-01 21:42:05
0

能用,有待完善
CentOS7测试

哈哈

reset2.0.sh(20190906)
#!/bin/bash
#**
#Author: 28
#QQ: ×××
#Date: 2019-08-01
#FileName: reset.sh
#URL: https://blog.51cto.com/14012942
#Description: The test script
#Copyright (C): 2019 Copyright © 站点名称 版权所有
#****
#set -e
RED="\033[0;31m"
GREEN="\033[0;32m"
NO_COLOR="\033[0m"

修改别名

modify_alias() {
cat >> ~/.bashrc <alias cdnet='cd /etc/sysconfig/network-scripts/'
alias editnet='vim /etc/sysconfig/network-scripts/ifcfg-ens33'
alias rm='rm -i'
alias scandisk="echo ' - - - ' > /sys/class/scsi_host/host0/scan;echo ' - - - ' > /sys/class/scsi_host/host1/scan;echo ' - - - ' > /sys/class/scsi_host/host2/scan"
EOF
}

修改命令提示符

modify_PS1() {
echo 'PS1="[\e[1;34m][\u@\h \W]\$[\e[0m] "' >> /etc/profile.d/env.sh
}

安装基本软件

install_software() {
yum install gcc gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel zlib-devel vim lrzsz tree screen lsof tcpdump wget ntpdate net-tools iotop bc zip unzip nfs-utils -y
}

替换yum源

replace_yum() {
#wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
#wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum makecache
}

vim

vimrc复制过来

modify_vimrc() {
cat > ~/.vimrc <set ignorecase
set cursorline
set autoindent
set ai
autocmd BufNewFile *.sh exec ":call SetTitle()"

func SetTitle()
if expand("%:e") == 'sh'
call setline(1,"#!/bin/bash")
call setline(2,"#**")
call setline(3,"#Author: Linus")
call setline(4,"#QQ: ×××")
call setline(5,"#Date: ".strftime("%Y-%m-%d"))
call setline(6,"#FileName: ".expand("%"))
call setline(7,"#URL: https://blog.51cto.com/14012942")
call setline(8,"#Description: Initialize the new server")
call setline(9,"#Copyright (C): ".strftime("%Y")." Copyright © 站点名称 版权所有")
call setline(10,"#****")
call setline(11,"")
endif
endfunc
autocmd BufNewFile * normal G
EOF
}

关闭selinux和firewalld

iptables_selinux_stop() {
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0

systemctl stop firewalld
systemctl disable firewalld

}

判断是不是root

judge_root() {
[ $(id -u) != "0" ] && { echo -e "${RED}Error:${NO_COLOR} You must be root to run this script."; exit 1; }
}

判断是不是CentOS7

Check_release() {
if [ -f /etc/redhat-release ];then
release="centos"
version=sed -r 's/.* ([0-9]+)\..*/\1/' /etc/redhat-release
if [ "$version" = "7" ];then
echo "Current release: CentOS7."
else {
echo -e "[${RED}Error${NO_COLOR}] This script can only be running on CentOS7."
exit 1
}
fi
else {
echo -e "[${RED}Error${NO_COLOR}] This script can only be running on CentOS7."
exit 1
}
fi
}

########################时区调整########################
timezone_adjust(){
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
}

#修改网卡为eth0
modify_eth_card() {
ip a | grep -q eth0
if [ "$?" -eq 1 ];then
sed -ri '/^GRUB_CMDLINE/s/(.*)"/\1 net.ifnames=0"/' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
fi
}

#自动补全
bash_completion() {
yum install bash-completion -y
source /usr/share/bash-completion/bash_completion
}

#时间同步
time_sync(){
yum install chrony -y
sed '/^server/s/^/#/' /etc/chrony.conf -i
sed '1a server ntp.aliyun.com iburst' /etc/chrony.conf -i
sed '1a server 0.cn.pool.ntp.org iburst' /etc/chrony.conf -i
sed '1a server ntp1.aliyun.com iburst' /etc/chrony.conf -i
systemctl restart chronyd
systemctl enable chronyd

echo '/30 * /usr/sbin/ntpdate ntp.aliyun.com &>/dev/null' >> /var/spool/cron/root

}

#ssh调优
ssh_adjust(){
cp /etc/ssh/sshd_config{,_bak}
sed '/^GSSAPIAuthentication/d' /etc/ssh/sshd_config -i
sed '/^UseDNS/d' /etc/ssh/sshd_config -i
echo "GSSAPIAuthentication no" >> /etc/ssh/sshd_config
echo "UseDNS no" >> /etc/ssh/sshd_config
systemctl restart sshd
}

#最大文件打开数
limits_tune(){
echo '

  • soft nofile 128000
  • hard nofile 256000

root soft nofile 128000
root hard nofile 256000
' >> /etc/security/limits.conf
}

main() {
judge_root
Check_release
replace_yum
install_software
iptables_selinux_stop
modify_alias
modify_vimrc
timezone_adjust
time_sync
limits_tune
ssh_adjust
modify_PS1
modify_eth_card
bash_completion
}

main
reset1.0.sh(20190808)
#!/bin/bash
#**
#Author: 28
#QQ: ×××
#Date: 2019-08-01
#FileName: reset.sh
#URL: https://blog.51cto.com/14012942
#Description: The test script
#Copyright (C): 2019 Copyright © 站点名称 版权所有
#****
#set -e
RED="\033[0;31m"
GREEN="\033[0;32m"
NO_COLOR="\033[0m"

修改别名

modify_alias() {
cat >> ~/.bashrc <alias cdnet='cd /etc/sysconfig/network-scripts/'
alias editnet='vim /etc/sysconfig/network-scripts/ifcfg-ens33'
alias rm='rm -i'
alias scandisk="echo ' - - - ' > /sys/class/scsi_host/host0/scan;echo ' - - - ' > /sys/class/scsi_host/host1/scan;echo ' - - - ' > /sys/class/scsi_host/host2/scan"
EOF
}

修改命令提示符

modify_PS1() {
echo 'PS1="[\e[1;34m][\u@\h \W]\$[\e[0m] "' >> /etc/profile.d/env.sh
}

安装基本软件

install_software() {
yum install gcc gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel zlib-devel vim lrzsz tree screen lsof tcpdump wget ntpdate net-tools iotop bc zip unzip nfs-utils -y
}

替换yum源

replace_yum() {
#wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
#wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum makecache
}

vim

vimrc复制过来

modify_vimrc() {
cat > ~/.vimrc <set ignorecase
set cursorline
set autoindent
set ai
autocmd BufNewFile *.sh exec ":call SetTitle()"

func SetTitle()
if expand("%:e") == 'sh'
call setline(1,"#!/bin/bash")
call setline(2,"#**")
call setline(3,"#Author: Linus")
call setline(4,"#QQ: ×××")
call setline(5,"#Date: ".strftime("%Y-%m-%d"))
call setline(6,"#FileName: ".expand("%"))
call setline(7,"#URL: https://blog.51cto.com/14012942")
call setline(8,"#Description: Initialize the new server")
call setline(9,"#Copyright (C): ".strftime("%Y")." Copyright © 站点名称 版权所有")
call setline(10,"#****")
call setline(11,"")
endif
endfunc
autocmd BufNewFile * normal G
EOF
}

关闭selinux和firewalld

iptables_selinux_stop() {
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0

systemctl stop firewalld
systemctl disable firewalld

}

判断是不是root

judge_root() {
[ $(id -u) != "0" ] && { echo -e "${RED}Error:${NO_COLOR} You must be root to run this script."; exit 1; }
}

判断是不是CentOS7

Check_release() {
if [ -f /etc/redhat-release ];then
release="centos"
version=sed -r 's/.* ([0-9]+)\..*/\1/' /etc/redhat-release
if [ "$version" = "7" ];then
echo "Current release: CentOS7."
else {
echo -e "[${RED}Error${NO_COLOR}] This script can only be running on CentOS7."
exit 1
}
fi
else {
echo -e "[${RED}Error${NO_COLOR}] This script can only be running on CentOS7."
exit 1
}
fi
}

########################时区调整########################
timezone_adjust(){
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
}

#修改网卡为eth0
modify_eth_card() {
ip a | grep -q eth0
if [ "$?" -eq 1 ];then
sed -ri '/^GRUB_CMDLINE/s/(.*)"/\1 net.ifnames=0"/' /etc/default/grub
grub2-mkconfig -o /boot/grub2/grub.cfg
fi
}

#自动补全
bash_completion() {
yum install bash-completion -y
source /usr/share/bash-completion/bash_completion
}

main() {
judge_root
Check_release
replace_yum
install_software
iptables_selinux_stop
modify_alias
modify_vimrc
timezone_adjust
modify_PS1
modify_eth_card
bash_completion
}

main

相关内容

热门资讯

终于明白“青松游戏.真的有挂吗... 您好:青松游戏这款游戏可以开挂,确实是有挂的,需要了解加客服微信【4282891】很多玩家在这款游戏...
【第一资讯】“火神牛牛.怎么开... 有 亲,根据资深记者爆料火神牛牛是可以开挂的,确实有挂(咨询软件无需打开...
今日重大消息“大庆划水麻将.有... 网上科普关于“大庆划水麻将有没有挂”话题很是火热,小编也是针对大庆划水麻将作*弊开挂的方法以及开挂对...
今日重大通报“同城跑胡子.到底... 网上科普关于“同城跑胡子有没有挂”话题很是火热,小编也是针对同城跑胡子作*弊开挂的方法以及开挂对应的...
【第一消息】“灯塔麻将.辅助开... 家人们!今天小编来为大家解答灯塔麻将透视挂怎么安装这个问题咨询软件客服徽9752949的挂在哪里买很...
【第一消息】“沧海麻将.到底是... 网上科普关于“沧海麻将有没有挂”话题很是火热,小编也是针对沧海麻将作*弊开挂的方法以及开挂对应的知识...
京东:近期有不法分子冒名邮寄虚... 【大河财立方消息】 12月22日,京东发言人微博发文称,近期,发现有不法分子冒充京东向用户邮寄低价值...
整改超1万亿元!2024年度审... 12月22日下午,十四届全国人大常委会第十九次会议听取国务院关于2024年度中央预算执行和其他财政收...
玩家最新攻略“八闽福建麻将.究... 玩家最新攻略“八闽福建麻将.究竟有挂吗?”其实是有挂您好,八闽福建麻将这个游戏其实有挂的,确实是有挂...
日本高官宣称日本应该拥有核武器... 12月22日,外交部发言人林剑主持例行记者会。有记者问:近日,日本首相官邸一位负责安保政策的高官向媒...