CentOS7 reset脚本,用于初始化新的虚拟机
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7 reset脚本,用于初始化新的虚拟机相关的知识,希望对你有一定的参考价值。
能用,有待完善CentOS7测试
哈哈
#!/bin/bash
#**************************************************************
#Author: 28
#QQ: 599503252
#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 <<EOF
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 <<EOF
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: 599503252")
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 "$REDError:$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 "[$REDError$NO_COLOR] This script can only be running on CentOS7."
exit 1
fi
else
echo -e "[$REDError$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
以上是关于CentOS7 reset脚本,用于初始化新的虚拟机的主要内容,如果未能解决你的问题,请参考以下文章
用于虚拟内存管理的新 Windows 8.1 API:`DiscardVirtualMemory()` 与 `VirtualAlloc()` 和 `MEM_RESET` 和 `MEM_RESET_UN