首页 > 其他分享 >系统初始化脚本

系统初始化脚本

时间:2023-11-08 11:33:40浏览次数:32  
标签:脚本 初始化 系统 dev echo repo etc yum null

#!/bin/bash
#1.显示系统版本
check_system_version() {
awk '{print $(NF-1)}' /etc/redhat-release
}
#2.更新yum源
check_yum() {
tt=$(awk '{print $(NF-1)}' /etc/redhat-release)
if [ ${tt%%.*} -eq "6" ];then
    mkdir -p /etc/yum.repos.d/backup
    \mv /etc/yum.repos.d/.*repo /etc/yum.repos.d/backup/
    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
    curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
elif [ ${tt%%.*} -eq "7" ];then
mkdir -p /etc/yum.repos.d/backup
\mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
fi
yum clean all && yum makecache
}
#3.安装基础软件包
package_install() {
yum install -y net-tools vim tree htop iftop \
    iotop lrzsz wget unzip telnet nmap nc ntpdate \
    bash-completion bash-completion-extra sysstat rsync nfs-utils -y
}
#4.关闭selinux
disable_selinux() {
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
setenforc 0 &> /dev/null
}
#5.关闭firewalld
disable_firewalld() {
systemctl stop firewalld.service
systemctl disable firewalld.service
}
#6.配置sshd服务
ssh_config() {
sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config
}
#7.加大文件描述符
limit_conf() {
    echo '* - nofile 65535 ' >>/etc/security/limits.conf
}
#8.时间同步
date_time() {
    echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com &>/dev/null' >/var/spool/cron/root
}
menu() {
cat <<EOF
##########################################
##     1、操作系统发行版本                  ##
##     2、部署yum源                      ##
##     3、安装系统软件包                  ##
##     4、关闭Selinux              ##
##     5、关闭Firewalld                  ##
##     6、配置SSHD服务          ##
##     7、加大文件描述符          ##
##     8、同步系统时间                        ##
##     9、打印菜单                             ##
##     q、退出程序          ##
##########################################
EOF
}
#打印菜单
menu
while true
do
read -p "您想干什么?就请输入上面对应的字符:" n
case $n in
    1)
        check_system_version
        ;;
    2)
        check_yum &>/dev/null
                echo $? &>/dev/null && echo "yum源更新完成" || echo "yum源更新失败"
         ;;
    3)
                echo "安装软件包需要一部分时间,请耐心等待,正在安装中......."
                package_install    &>/dev/null
                echo $? &>/dev/null && echo "基础软件包安装完成" || echo "基础软件包安装报错"
     ;;
        4)
                disable_selinux &>/dev/null
                echo $? &>/dev/null && echo "Selinux 关闭成功" || echo "Selinux 关闭失败"
                ;;
        5)
                disable_firewalld &>/dev/null
                echo $? &>/dev/null && echo "Firewalld 关闭成功" || echo "Firewalld 关闭失败"
                ;;
        6)    
                ssh_config &>/dev/null
                echo $? &>/dev/null && echo "sshd服务配置完成" || echo "sshd服务配置报错"
                ;;
        7)    
                limit_conf &>/dev/null
                echo $? &>/dev/null && echo "文件描述符数量修改成功" || echo "文件描述符数量修改失败"
                ;;
        8)    
                date_time &>/dev/null
                echo $? &>/dev/null && echo "定时任务添加成功" || echo "定时任务添加失败"
                ;;
        9)
                clear
                menu
                ;;
q)
        echo "您即将退出程序!"
            exit 1
esac
done

标签:脚本,初始化,系统,dev,echo,repo,etc,yum,null
From: https://www.cnblogs.com/xiutai/p/17817003.html

相关文章

  • 医院HIS手术麻醉临床信息管理系统源码 实现术前、术中、术后全流程管理
    手术麻醉系统是一套以数字形式与医院信息系统(如HIS、EMR、LIS、PACS等)和医疗设备等软、硬件集成并获取围手术期相关信息的计算机系统,其核心是对围手术期患者信息自动采集、储存、分析并呈现。该系统通过整合围手术期中病人信息、人员信息、手术信息、物品信息等内容,可提供全套标准......
  • 依赖关系指的在Linux操作系统中,如何解决软件依赖关系?
    通常我们所需要安装的软件需要另外一个软件来支撑,两者相互依赖,所以,我们安装软件会十分麻烦,因为有的软件有很多种依赖关系。红帽开发一个解决RPM软件依赖的问题的软件,名称YUM,简称黄狗更新器。YUM可以自动查找并解决RPM之间的依赖关系,无需用户逐个手动的去安装或者卸载。YUM必须在根......
  • 镜像是什么,重装系统的原理
    镜像镜像(Mirroring)是一种文件存储形式,可以把许多文件做成一个镜像文件,常见的镜像文件格式有ISO、BIN、IMG、TAO、DAO、CIF、FCD。简单粗暴的理解:镜像文件就是ISO文件,ISO文件就是镜像文件iso文件iso是一种光盘映像文件,它实际上是使用刻录软件或者光盘映像文件工具软件将一个光......
  • Linux操作系统 虚拟机连接网络和xshell连接虚拟机
    虚拟机连接网络:桥接模式:1.编辑--虚拟网络编辑器--桥接模式--自动或指定具体网卡 2.设置--网络适配器--桥接模式 3.查看宿主机ip地址 4.配置linuxip地址5.配置的linux,ip地址和宿主机的IP地址,子网掩码,默认网关,dns都是一样6.重启网卡7.互ping8.pingwww.baidu.co......
  • 学生毕业管理系统-计算机毕业设计源码+LW文档
    摘 要对学生毕业管理的流程进行科学整理、归纳和功能的精简,通过软件工程的研究方法,结合当下流行的互联网技术,最终设计并实现了一个简单、易操作的学生毕业管理小程序。内容包括系统的设计思路、系统模块和实现方法。系统使用过程主要涉及到管理员,教师和学生三种角色,主要包含系统......
  • Linux文件系统的功能规划
    对于运行的进程来说,内存就像一个纸箱子,仅仅是一个暂存数据的地方,而且空间有限。如果我们想要进程结束之后,数据依然能够保存下来,就不能只保存在内存里,而是应该保存在外部存储中。就像图书馆这种地方,不仅空间大,而且能够永久保存。我们最常用的外部存储就是硬盘,数据是以文件的形式保存......
  • 《信息安全系统设计与实现》第十周学习笔记
    第六章信号和信号处理信号和中断“中断”是从I/O设备或协处理器发送到CPU的外部请求,它将CPU从正常执行转移到中断处理。与发送给CPU的中断请求一样,“信号”是发送给进程的请求,将进程从正常执行转移到中断处理。进程:一个“进程”就是一系列活动广义的“进程”包括:从事日常......
  • 农业电商服务系统-计算机毕业设计源码+LW文档
    摘要时代在飞速进步,每个行业都在努力发展先进技术,通过这些先进的技术来提高自己的水平和优势,农业电商服务系统当然不能排除在外。农业电商服务系统是在实际应用和软件工程的开发原理之上,运用Java语言以及ssm框架进行开发。首先要进行需求分析,分析出农业电商服务系统的主要功能,然......
  • 微信小程序的图书管理系统-计算机毕业设计源码+LW文档
    摘 要对图书管理的流程进行科学整理、归纳和功能的精简,通过软件工程的研究方法,结合当下流行的互联网技术,最终设计并实现了一个简单、易操作的图书管理小程序。内容包括系统的设计思路、系统模块和实现方法。系统使用过程主要涉及到管理员和用户两种角色,主要包含个人信息修改,用户......
  • 均线系统---大家必须知道的最常用的均线系统(全集)
    大家必须知道的最常用的均线战法 温馨提示:短期操盘线:5日均线:攻击线10日均线:操盘线中期操盘线:20日均线:辅助线30日均线:生命线长期操盘线:60日均线:决策线120日均线:趋势线惯用的5均线、10均线、20均线、30均线、60均线、120均线,操盘手对此有特定称谓,考虑这些均线大多是主......