CentOS7測試linux
哈哈c++
#!/bin/bash #************************************************************** #Author: 28 #QQ: 123445678 #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 "${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
#!/bin/bash #************************************************************** #Author: 28 #QQ: 123445678 #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 "${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