centos、Ubuntu minimal install tuning shell script
该脚本仅支持centos7及Ubuntu1804:
1 #!/bin/bash 2 # 3 #************************************************************************************* 4 #Author: wanghaomiao 5 #QQ: 1074035975 6 #Date: 2022-04-19 7 #FileName reset_1.sh 8 #URL: wanghaomiao.com.cn 9 #Description: The test script 10 #Copyreght (C): 2022 All rightsreserved 11 #************************************************************************************* 12 COLOR='\033[1;'"$[$RANDOM%7+31]"'m' 13 COLOR_END='\e[0m' 14 NETWORK_NAME=`ip a | sed -nr '/^2/s#.* (.*): .*#\1#p'` 15 Ubuntu_NETWORK_DIR="/etc/netplan/00-installer-config.yaml" 16 Centos_NETWORK_DIR="/etc/sysconfig/network-scripts/ifcfg-$NETWORK_NAME" 17 18 19 20 set_sshd(){ 21 #whoami | grep root &> /dev/null 22 #if [ $? -eq 0 ]; then 23 #if [[ `whoami` == "root" ]]; then 24 # sed -ri.bak -e 's/.*(UseDNS ).*/\1no/' -e 's/.*(GSSAPIAuthentication ).*/\1no/' -e 's/.*(PermitRootLogin ).*/\1yes/' /etc/ssh/sshd_config 25 #else 26 sudo sed -ri.bak -e 's/.*(UseDNS ).*/\1no/' -e 's/.*(GSSAPIAuthentication ).*/\1no/' -e 's/.*(PermitRootLogin ).*/\1yes/' /etc/ssh/sshd_config 27 #fi 28 if [ $? -eq 0 ]; then 29 echo -e "$COLOR ssh service setup completed!restart the service! $COLOR_END" 30 else 31 echo -e "$COLOR SSH service setting failed, please try again,exit! $COLOR_END" 32 fi 33 sudo systemctl restart sshd 34 } 35 36 set_vimrc(){ 37 echo -ne "$COLOR" 38 echo -e "Please enter relevant information to set vimrc file" 39 read -p "pleace enter your UserName:" UserName 40 read -p "pleace enter your QQ:" QQ 41 read -p "pleace enter your UserURL:" UserURL 42 echo -ne "$COLOR_END" 43 # 44 #if [[ `whoami` == "root" ]]; then 45 #cat >~/.vimrc <<EOF 46 #set ts=4 47 #set expandtab 48 #set ignorecase 49 #autocmd BufNewFile *.sh exec ":call SetTitile()" 50 #func SetTitile() 51 # if expand("%:e") == 'sh' 52 # call setline(1,"#!/bin/bash") 53 # call setline(2,"#") 54 # call setline(3,"#*************************************************************************************") 55 # call setline(4,"#Author: $UserName") 56 # call setline(5,"#QQ: $QQ") 57 # call setline(6,"#Date: ".strftime("%Y-%m-%d")) 58 # call setline(7,"#FileName ".expand("%")) 59 # call setline(8,"#URL: $UserURL") 60 # call setline(9,"#Description: The test script") 61 # call setline(10,"#Copyreght (C): ".strftime("%Y")." All rightsreserved") 62 # call setline(11,"#*************************************************************************************") 63 # call setline(12,"") 64 # endif 65 #endfunc 66 #autocmd BufNewFile * normal G 67 #EOF 68 #else 69 sudo cat >~/.vimrc <<EOF 70 set ts=4 71 set expandtab 72 set ignorecase 73 autocmd BufNewFile *.sh exec ":call SetTitile()" 74 func SetTitile() 75 if expand("%:e") == 'sh' 76 call setline(1,"#!/bin/bash") 77 call setline(2,"#") 78 call setline(3,"#*************************************************************************************") 79 call setline(4,"#Author: $UserName") 80 call setline(5,"#QQ: $QQ") 81 call setline(6,"#Date: ".strftime("%Y-%m-%d")) 82 call setline(7,"#FileName ".expand("%")) 83 call setline(8,"#URL: $UserURL") 84 call setline(9,"#Description: The test script") 85 call setline(10,"#Copyreght (C): ".strftime("%Y")." All rightsreserved") 86 call setline(11,"#*************************************************************************************") 87 call setline(12,"") 88 endif 89 endfunc 90 autocmd BufNewFile * normal G 91 EOF 92 #fi 93 if [ $? -eq 0 ]; then 94 echo -e "$COLOR .vimrc setup completed! $COLOR_END" 95 else 96 echo -e "$COLOR .vimrc setting failed,please try again,exit! $COLOR_END" 97 exit 98 fi 99 } 100 101 set_selinux_firewalld(){ 102 sudo sed -ri.bak 's/(SELINUX=).*/\1disabled/' /etc/selinux/config 103 sudo systemctl disable --now firewalld 104 if [ $? -eq 0 ];then 105 echo -e "$COLOR SElinux and firewalld are turend off! $COLOR_END" 106 else 107 echo -e "$COLOR SELinux and firewall shutdown failed. Please try again,exit! $COLOR_END" 108 exit 109 fi 110 } 111 112 set_hostname(){ 113 read -p "Please enter the host name to set: " HostName 114 sudo hostnamectl set-hostname $HostName 115 if [ $? -eq 0 ];then 116 echo -e "$COLOR Hostname setting completed,pleace re login! $COLOR_END" 117 else 118 echo -e "$COLOR Hostname setting failed,please try again,exit! $COLOR_END" 119 exit 120 fi 121 } 122 123 set_date(){ 124 read -p "Please enter the time zone to set: " ZONE 125 sudo timedatectl set-timezone $ZONE 126 if [ $? -eq 0 ];then 127 echo -e "$COLOR Time zone $ZONE settings completed! $COLOR_END" 128 else 129 echo -e "$COLOR Time zone $ZONE setting failed, please try again,exit! $COLOR_END" 130 exit 131 fi 132 } 133 134 set_aliyun_yum(){ 135 sudo yum repolist 136 sudo yum -y install wget 137 sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.buckup 138 sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo 139 sudo yum clean all 140 sudo yum makecache 141 142 if [ $? -eq 0 ];then 143 echo -e "$COLOR Alibaba cloud Yum source settings completed! $COLOR_END" 144 else 145 echo -e "$COLOR Alibaba colod Yum source settings failed,please try again,exit! $COLOR_END" 146 exit 147 fi 148 } 149 150 set_qinghuayun_yum(){ 151 sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \ 152 -e 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsinghua.edu.cn|g' \ 153 -i.bak \ 154 /etc/yum.repos.d/CentOS-*.repo 155 sudo yum clean all 156 sudo yum makecache 157 158 if [ $? -eq 0 ];then 159 echo -e "$COLOR Tsinghua mirror Yum source settings completed! $COLOR_END" 160 else 161 echo -e "$COLOR Tsinghua mirror Yum source settings failed,please try again,exit! $COLOR_END" 162 exit 163 fi 164 } 165 166 167 set_yum(){ 168 echo -ne "$COLOR" 169 cat <<EOF 170 1) 阿里镜像源 171 2) 清华镜像源 172 3) 返回上一级目录 173 4) 退出 174 EOF 175 echo -ne "$COLOR_END" 176 read -p "请输入菜单编号(1-4): " YUM_MENU 177 178 case $YUM_MENU in 179 1) 180 set_aliyun_yum 181 ;; 182 2) 183 set_qinghuayun_yum 184 ;; 185 3) 186 set_run 187 ;; 188 4) 189 exit 190 ;; 191 *) 192 echo -ne "$COLOR Input error, please re-enter! $COLOR_END" 193 esac 194 } 195 196 set_aliyun_apt(){ 197 sudo sed -ri.bak 's/cn.archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list 198 if [ $? -eq 0 ];then 199 echo -e "$COLOR Alibaba cloud apt source settings completed! $COLOR_END" 200 else 201 echo -e "$COLOR Alibaba colod apt source settings failed,please try again,exit! $COLOR_END" 202 exit 203 fi 204 sudo apt update 205 } 206 207 set_qinghuayun_apt(){ 208 sudo sed -ri.bak 's@http://cn.archive.ubuntu.com@https://mirrors.tuna.tsinghua.edu.cn@g' /etc/apt/sources.list 209 if [ $? -eq 0 ];then 210 echo -e "$COLOR Tsinghua mirror apt source settings completed! $COLOR_END" 211 else 212 echo -e "$COLOR Tsinghua mirror apt source settings failed,please try again,exit! $COLOR_END" 213 exit 214 fi 215 sudo apt update 216 } 217 218 set_apt(){ 219 echo -ne "$COLOR" 220 cat <<EOF 221 1) 阿里镜像源 222 2) 清华镜像源 223 3) 返回上一级 224 4) 退出 225 EOF 226 echo -ne "$COLOR_END" 227 read -p "请输入菜单编号(1-4): " APT_MENT 228 229 case $APT_MENT in 230 1) 231 set_aliyun_apt 232 set_run 233 ;; 234 2) 235 set_qinghuayun_apt 236 ;; 237 3) 238 set_run 239 ;; 240 4) 241 exit 242 ;; 243 *) 244 echo -ne "$COLOR Input error, please re-enter! $COLOR_END" 245 esac 246 } 247 248 set_aliyun_epel(){ 249 sudo mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup &> /dev/null 250 sudo mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup &> /dev/null 251 sudo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo 252 if [ $? -eq 0 ];then 253 echo -e "$COLOR Alibaba cloud epel source settings completed! $COLOR_END" 254 else 255 echo -e "$COLOR Alibaba colod epel source settings failed,please try again,exit! $COLOR_END" 256 exit 257 fi 258 } 259 260 set_qinghuayun_epel(){ 261 sudo yum install epel-release 262 dudo sed -e 's!^metalink=!#metalink=!g' \ 263 -e 's!^#baseurl=!baseurl=!g' \ 264 -e 's!//download\.fedoraproject\.org/pub!//mirrors.tuna.tsinghua.edu.cn!g' \ 265 -e 's!//download\.example/pub!//mirrors.tuna.tsinghua.edu.cn!g' \ 266 -e 's!http://mirrors!https://mirrors!g' \ 267 -i /etc/yum.repos.d/epel*.repo 268 if [ $? -eq 0 ];then 269 echo -e "$COLOR Tsinghua mirror epel source settings completed! $COLOR_END" 270 else 271 echo -e "$COLOR Tsinghua mirror epel source settings failed,please try again,exit! $COLOR_END" 272 exit 273 fi 274 } 275 276 set_epel(){ 277 echo -ne "$COLOR" 278 cat <<EOF 279 1) 阿里镜像源 280 2) 清华镜像源 281 3) 返回上一级 282 4) 退出 283 EOF 284 echo -ne "$COLOR_END" 285 read -p "请输入菜单编号(1-4):" EPEL_MENT 286 287 case $EPEL_MENT in 288 1) 289 set_aliyun_epel 290 ;; 291 2) 292 set_qinghuayun_epel 293 ;; 294 3) 295 set_run 296 ;; 297 4) 298 exit 299 ;; 300 *) 301 echo -ne "$COLOR Input error, please re-enter! $COLOR_END" 302 esac 303 } 304 305 set_Ubuntu1804_software_install(){ 306 sudo apt -y purge ufw lxd lxd-client lxcfs lxc-common 307 if [ $? -eq 0 ];then 308 sudo apt -y install iproute2 ntpdate tcpdump telnet traceroute nfs-kernel-server nfs-common lrzsz tree openssl libssl-dev libpcre3 libpcre3-dev zlib1g-dev ntpdate tcpdump telnet traceroute gcc openssh-server lrzsz tree openssl libssl-dev libpcre3 libpcre3-dev zlib1g-dev ntpdate tcpdump telnet traceroute iotop unzip zip 309 if [ $? -eq 0 ];then 310 echo -e "$COLOR software installation completed! $COLOR_END" 311 else 312 echo -e "$SOLOR sofrware installation failed,please try again,exit! $COLOR_END" 313 exit 314 fi 315 else 316 echo -e "$SOLOR sofrware installation failed,please try again,exit! $COLOR_END" 317 exit 318 fi 319 } 320 321 set_Centos7_software_install(){ 322 sudo yum -y install gcc make gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel zlib-devel vim lrzsz tree tmux lsof tcpdump wget net-tools iotop bc bzip2 zip unzip nfs-utils man-pages redhat-lsb-core postfix mailx bash-completion man-pages 323 if [ $? -eq 0 ];then 324 echo -e "$COLOR software installation completed! $COLOR_END" 325 else 326 echo -e "$SOLOR sofrware installation failed,please try again,exit! $COLOR_END" 327 exit 328 fi 329 } 330 331 set_Ubuntu1804_eth0(){ 332 eval sudo sed -ri.bak 's/$NETWORK_NAME/eth0/g' $Ubuntu_NETWORK_DIR 333 sudo sed -i -r 's/(GRUB_CMDLINE_LINUX=.*)"/\1net.ifnames=0 biosdevname=0"/g' /etc/default/grub 334 sudo update-grub 335 if [ $? -eq 0 ];then 336 echo -e "$COLOR The network card name has been changed.about to reboot! $COLOR_END" 337 sudo reboot 338 else 339 echo -e "$COLOR The network card name change failed, please try again,exit! $COLOR_END" 340 exit 341 fi 342 } 343 344 set_Centos7_eth0(){ 345 sudo mv /etc/sysconfig/network-scripts/ifcfg-$NETWORK_NAME $Centos_NETWORK_DIR /dev/null 346 sudo sed -ri.bak 's/(GRUB_CMDLINE_LINUX=.*quiet).*/\1 net.ifnames=0 biosdevname=0"/' /etc/default/grub 347 eval sudo sed -ri.bak 's/${NETWORK_NAME}/eth0/g' $Centos_NETWORK_DIR 348 sudo grub2-mkconfig -o /boot/grub2/grub.cfg 349 if [ $? -eq 0 ];then 350 echo -e "$COLOR The network card name has been changed. about to reboot! $COLOR_END" 351 sudo reboot 352 else 353 echo -e "$COLOR The network card name change failed, please try again,exit! $COLOR_END" 354 exit 355 fi 356 } 357 358 359 set_Ubuntu1804_ip(){ 360 read -p "Please enter ip address and netmask(IP/NETMASK): " IP 361 read -p "Please enter gateway address: " GATEWAY 362 read -p "Please enter dns address(DNS1;DNS2;...): " DNS 363 sudo chmod 666 /etc/netplan/00-installer-config.yaml 364 sudo cat > $Ubuntu_NETWORK_DIR << EOF 365 # This is the network config written by 'subiquity' 366 network: 367 ethernets: 368 eth0: 369 dhcp4: no 370 addresses: [$IP] 371 gateway4: $GATEWAY 372 nameservers: 373 addresses: [$DNS] 374 version: 2 375 EOF 376 if [ $? -eq 0 ]; then 377 echo -e "$COLOR IP address settings completed,the network service will be restarted soon.SSH users need to reconnect $COLOR_END" 378 else 379 echo -e "$COLOR IP address settings failed,please try again!exit $COLOR_END" 380 exit 381 fi 382 sudo netplan apply 383 sudo chmod 644 /etc/netplan/00-installer-config.yaml 384 } 385 386 set_Centos7_ip(){ 387 read -p "please input ip address: " IP 388 read -p "please input netmask address: " NETMASK 389 read -p "please input gateway address: " GATEWAY 390 read -p "Please input DNS address: " DNS1 391 sudo cat > $Centos_NETWORK_DIR << EOF 392 TYPE="Ethernet" 393 BOOTPROTO="static" 394 DEFROUTE="yes" 395 NAME="eth0" 396 DEVICE="eth0" 397 ONBOOT="yes" 398 IPADDR="$IP" 399 NETMASK="$NETMASK" 400 GATEWAY="$GATEWAY" 401 DNS1="$DNS1" 402 EOF 403 if [ $? -eq 0 ]; then 404 echo -e "$COLOR IP address settings completed,the network service will be restarted soon.SSH users need to reconnect $COLOR_END" 405 else 406 echo -e "$COLOR IP address settings failed,please try again!exit $COLOR_END" 407 exit 408 fi 409 sudo systemctl restart network 410 } 411 412 413 set_di(){ 414 sudo sed -ri.bak 's/#set bell-style none/set bell-style none/' /etc/inputrc | sudo grep '#set bell-style none' /etc/inputrc 415 if [ $? -eq 1 ];then 416 echo -e "$COLOR Mainboard alarm turned off,about to reboot! $COLOR_END" 417 sudo reboot 418 else 419 echo -e "$COLOR Mainboard alarm closing failed,please try again,exit! $COLOR_END" 420 exit 421 fi 422 } 423 424 set_env(){ 425 sudo echo 'PS1="[\[\e[1;32m\]\t\[\e[0m\] \u@\h \W]\\\$"' >> ~/.bashrc 426 if [ $? -eq 0 ]; then 427 echo -e "$COLOR The command prompt is modified. Please log in again! $COLOR_END" 428 else 429 echo -e "$COLOR Command prompt modification failed, please try again! $COLOR_END" 430 fi 431 } 432 433 set_sudoers(){ 434 echo -ne "$COLOR" 435 read -p "Please enter the name of the user to be authorized: " USERNAME 436 echo -ne "$COLOR_END" 437 cat > /etc/sudoers.d/$USERNAME <<EOF 438 $USERNAME ALL=(ALL) NOPASSWD: ALL 439 EOF 440 if [ $? -eq 0 ];then 441 echo -e "$COLOR The user authorization is completed and needs to log in again! $COLOR_END" 442 else 443 echo -e "$COLOR User authorization failed, please try again! $COLOR_END" 444 fi 445 } 446 447 ubuntu_run(){ 448 #PS3="Please enter the number(1-11):" 449 #MENU=" 450 #优化sshd服务 451 #设置.vimrc文件 452 #设置主机名 453 #时间同步 454 #更改apt源 455 #常用软件安装 456 #设置网卡名称为eth0 457 #设置IP地址 458 #关闭主板报警 459 #设置命令提示符 460 #退出 461 #" 462 463 464 echo -ne "$COLOR" 465 cat << EOF 466 1) 优化sshd服务 467 2) 设置.vimrc文件 468 3) 设置主机名 469 4) 时间同步 470 5) 更改apt源 471 6) 常用软件安装 472 7) 设置网卡名称为eth0 473 8) 设置IP地址 474 9) 关闭主板报警 475 10) 设置命令提示符 476 11) 退出 477 EOF 478 echo -ne "$COLOR_END" 479 480 read -p "Please enter the number(1-11): " MENU 481 #select menu in $MENU;do 482 case $MENU in 483 1) 484 # if [[ `whoami` == "root" ]];then 485 # set_sshd 486 # ubuntu_run 487 # else 488 # systempasswd 489 set_sshd 490 # fi 491 ;; 492 2) 493 # if [[ `whoami` == "root" ]];then 494 # set_vimrc 495 # ubuntu_run 496 # else 497 # systempasswd 498 set_vimrc 499 # fi 500 ;; 501 3) 502 # if [[ `whoami` == "root" ]];then 503 # set_hostname 504 # ubuntu_run 505 # else 506 # systempasswd 507 set_hostname 508 # fi 509 ;; 510 4) 511 # if [[ `whoami` == "root" ]];then 512 # set_date 513 # ubuntu_run 514 # else 515 # systempasswd 516 set_date 517 # fi 518 ;; 519 5) 520 # if [[ `whoami` == "root" ]];then 521 # set_apt 522 # ubuntu_run 523 # else 524 # systempasswd 525 set_apt 526 # fi 527 ;; 528 6) 529 # if [[ `whoami` == "root" ]];then 530 # set_Ubuntu1804_software_install 531 # ubuntu_run 532 # else 533 # systempasswd 534 set_Ubuntu1804_software_install 535 # fi 536 ;; 537 7) 538 # if [[ `whoami` == "root" ]];then 539 # set_Ubuntu1804_eth0 540 # else 541 # systempasswd 542 set_Ubuntu1804_eth0 543 # fi 544 ;; 545 8) 546 # if [[ `whoami` == "root" ]];then 547 # set_Ubuntu1804_ip 548 # ubuntu_run 549 # else 550 # systempasswd 551 set_Ubuntu1804_ip 552 # fi 553 ;; 554 9) 555 # if [[ `whoami` == "root" ]];then 556 # set_di 557 # ubuntu_run 558 # else 559 # systempasswd 560 set_di 561 # fi 562 ;; 563 10) 564 # if [[ `whoami` == "root" ]];then 565 # set_env 566 # ubuntu_run 567 # else 568 # systempasswd 569 set_env 570 # fi 571 ;; 572 11) 573 ## break 574 exit 575 ;; 576 *) 577 echo -e "$COLOR Input error, please re-enter! $COLOR_END" 578 esac 579 #done 580 } 581 582 centos_root_run(){ 583 #PS3="Please enter the number(1-12):" 584 #MENU=" 585 #优化sshd服务 586 #设置.vimrc文件 587 #关闭Selinux及防火墙 588 #设置主机名 589 #时间同步 590 #更改yum源 591 #常用软件安装 592 #设置网卡名称为eth0 593 #设置IP地址 594 #关闭主板报警 595 #设置命令提示符 596 #退出 597 #" 598 599 600 echo -ne "$COLOR" 601 cat << EOF 602 1) 优化sshd服务 603 2) 设置.vimrc文件 604 3) 关闭Selinux及防火墙 605 4) 设置主机名 606 5) 时间同步 607 6) 更改yum源 608 7) 常用软件安装 609 8) 设置网卡名称为eth0 610 9) 设置IP地址 611 10) 关闭主板报警 612 11) 设置命令提示符 613 12) 设置epel源 614 13) 设置普通用户sudo权限 615 14) 退出 616 EOF 617 echo -ne "$COLOR_END" 618 619 read -p "Please enter the number(1-14): " MENU 620 #select menu in $MENU;do 621 case $MENU in 622 1) 623 # if [[ `whoami` == "root" ]];then 624 # set_sshd 625 # centos_run 626 # else 627 # systempasswd 628 set_sshd 629 centos_root_run 630 # fi 631 ;; 632 2) 633 # if [[ `whoami` == "root" ]];then 634 # set_vimrc 635 # centos_run 636 # else 637 # systempasswd 638 set_vimrc 639 centos_root_run 640 # fi 641 ;; 642 3) 643 # if [[ `whoami` == "root" ]];then 644 # set_selinux_firewalld 645 # centos_run 646 # else 647 # systempasswd 648 set_selinux_firewalld 649 centos_root_run 650 # fi 651 ;; 652 4) 653 # if [[ `whoami` == "root" ]];then 654 # set_hostname 655 # centos_run 656 # else 657 # systempasswd 658 set_hostname 659 centos_root_run 660 # fi 661 ;; 662 5) 663 # if [[ `whoami` == "root" ]];then 664 # set_date 665 # centos_run 666 # else 667 # systempasswd 668 set_date 669 centos_root_run 670 # fi 671 ;; 672 6) 673 # if [[ `whoami` == "root" ]];then 674 # set_yum 675 # centos_run 676 # else 677 # systempasswd 678 set_yum 679 centos_root_run 680 # fi 681 ;; 682 7) 683 # if [[ `whoami` == "root" ]];then 684 # set_Centos7_software_install 685 # centos_run 686 # else 687 # systempasswd 688 set_Centos7_software_install 689 centos_root_run 690 # fi 691 ;; 692 8) 693 # if [[ `whoami` == "root" ]];then 694 # set_Centos7_eth0 695 # centos_run 696 # else 697 # systempasswd 698 set_Centos7_eth0 699 # fi 700 ;; 701 9) 702 # if [[ `whoami` == "root" ]];then 703 # set_Centos7_ip 704 # else 705 # systempasswd 706 set_Centos7_ip 707 # fi 708 ;; 709 10) 710 # if [[ `whoami` == "root" ]];then 711 # set_di 712 # centos_run 713 # else 714 # systempasswd 715 set_di 716 # fi 717 ;; 718 11) 719 # if [[ `whoami` == "root" ]];then 720 # set_env 721 # centos_run 722 # else 723 # systempasswd 724 set_env 725 centos_root_run 726 # fi 727 ;; 728 12) 729 set_epel 730 centos_root_run 731 ;; 732 13) 733 set_sudoers 734 centos_root_run 735 ;; 736 14) 737 # break 738 exit 739 ;; 740 *) 741 echo -e "$COLOR Input error, please re-enter! $COLOR_END" 742 esac 743 #done 744 } 745 746 centos_user_run(){ 747 #PS3="Please enter the number(1-12):" 748 #MENU=" 749 #优化sshd服务 750 #设置.vimrc文件 751 #关闭Selinux及防火墙 752 #设置主机名 753 #时间同步 754 #更改yum源 755 #常用软件安装 756 #设置网卡名称为eth0 757 #设置IP地址 758 #关闭主板报警 759 #设置命令提示符 760 #退出 761 #" 762 763 764 echo -ne "$COLOR" 765 cat << EOF 766 1) 优化sshd服务 767 2) 设置.vimrc文件 768 3) 关闭Selinux及防火墙 769 4) 设置主机名 770 5) 时间同步 771 6) 更改yum源 772 7) 常用软件安装 773 8) 设置网卡名称为eth0 774 9) 设置IP地址 775 10) 关闭主板报警 776 11) 设置命令提示符 777 12) 设置epel源 778 13) 退出 779 EOF 780 echo -ne "$COLOR_END" 781 782 read -p "Please enter the number(1-14): " MENU 783 #select menu in $MENU;do 784 case $MENU in 785 1) 786 # if [[ `whoami` == "root" ]];then 787 # set_sshd 788 # centos_run 789 # else 790 # systempasswd 791 set_sshd 792 centos_user_run 793 # fi 794 ;; 795 2) 796 # if [[ `whoami` == "root" ]];then 797 # set_vimrc 798 # centos_run 799 # else 800 # systempasswd 801 set_vimrc 802 centos_user_run 803 # fi 804 ;; 805 3) 806 # if [[ `whoami` == "root" ]];then 807 # set_selinux_firewalld 808 # centos_run 809 # else 810 # systempasswd 811 set_selinux_firewalld 812 centos_user_run 813 # fi 814 ;; 815 4) 816 # if [[ `whoami` == "root" ]];then 817 # set_hostname 818 # centos_run 819 # else 820 # systempasswd 821 set_hostname 822 centos_user_run 823 # fi 824 ;; 825 5) 826 # if [[ `whoami` == "root" ]];then 827 # set_date 828 # centos_run 829 # else 830 # systempasswd 831 set_date 832 centos_user_run 833 # fi 834 ;; 835 6) 836 # if [[ `whoami` == "root" ]];then 837 # set_yum 838 # centos_run 839 # else 840 # systempasswd 841 set_yum 842 centos_user_run 843 # fi 844 ;; 845 7) 846 # if [[ `whoami` == "root" ]];then 847 # set_Centos7_software_install 848 # centos_run 849 # else 850 # systempasswd 851 set_Centos7_software_install 852 centos_user_run 853 # fi 854 ;; 855 8) 856 # if [[ `whoami` == "root" ]];then 857 # set_Centos7_eth0 858 # centos_run 859 # else 860 # systempasswd 861 set_Centos7_eth0 862 # fi 863 ;; 864 9) 865 # if [[ `whoami` == "root" ]];then 866 # set_Centos7_ip 867 # else 868 # systempasswd 869 set_Centos7_ip 870 # fi 871 ;; 872 10) 873 # if [[ `whoami` == "root" ]];then 874 # set_di 875 # centos_run 876 # else 877 # systempasswd 878 set_di 879 # fi 880 ;; 881 11) 882 # if [[ `whoami` == "root" ]];then 883 # set_env 884 # centos_run 885 # else 886 # systempasswd 887 set_env 888 centos_user_run 889 # fi 890 ;; 891 12) 892 set_epel 893 centos_user_run 894 ;; 895 13) 896 # break 897 exit 898 ;; 899 *) 900 echo -e "$COLOR Input error, please re-enter! $COLOR_END" 901 esac 902 #done 903 } 904 905 systempasswd(){ 906 read -p "Pleace enter your system password: " PASSWD 907 echo $PASSWD | sudo -S echo ****** &> /dev/null 908 if [ $? -eq 0 ] ;then 909 set_run 910 else 911 echo -ne "$COLOR Please add sudo permission and try again! $COLOR_END" 912 exit 913 fi 914 } 915 916 system_os(){ 917 sudo sed -nr '/^ID=/s#ID="?([[:alpha:]]+)"?#\1#p' /etc/os-release 918 } 919 920 set_run(){ 921 if [[ `system_os` == 'centos' ]];then 922 if [[ `whoami` == 'root' ]];then 923 centos_root_run 924 else 925 centos_user_run 926 fi 927 elif [[ `system_os` == 'ubuntu' ]];then 928 ubuntu_run 929 else 930 echo -ne "$COLOR 无法识别该系统,请重试! $COLOR_END" 931 fi 932 } 933 934 935 if [[ `whoami` == "root" ]];then 936 set_run 937 else 938 systempasswd 939 set_run 940 fi