25
2025
03
11:42:29

一键初始化Linux系统脚本

注:本文使用的系统为Rocky_Linux9,其他系统请自行修改测试。

安装虚拟机时,每次都需要重复性操作关闭防火墙、SELINUX、关闭swap分区、修改时区、修改网卡命名规则等操作。为了快速初始化系统使用shell脚本,实现一键初始化。

运行截图

图片

完整脚本

#!/usr/bin/env bash
# **********************************************************
# * Author        : 青菜浪人
# * Create time   : 2024-07
# * Description   : 一键初始化系统
# **********************************************************

function random_color(){
    random_color_code=$((RANDOM % 256))
    echo -e "\033[38;5;${random_color_code}m${1}\033[0m"
}

function os_initial(){
  random_color "---Rocky_Linux9初始化脚本---"
  random_color "---关闭防火墙和selinux---"
  sleep 3
  systemctl stop firewalld
  systemctl disable firewalld
  setenforce 0
  sed -i 's/SELINUX=.*/SELINUX=permissive/' /etc/selinux/config 

  random_color "---替换yum源---"
  sed -e 's|^mirrorlist=|#mirrorlist=|g' \
      -e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g' \
      -i.bak \
      /etc/yum.repos.d/rocky*.repo
  dnf makecache


  random_color "---修改系统时区---"
  sleep 3 
  timedatectl set-timezone Asia/Shanghai 
  systemctl start chronyd
  systemctl enable chronyd



  random_color "---修改系统最大打开文件数---"
  sleep 3
  if ! cat /etc/security/limits.conf |grep "65535" &>/dev/null ;then
      echo "* soft nofile 65535" >>/etc/security/limits.conf
      echo "* hard nofile 65535" >>/etc/security/limits.conf
  fi


  random_color "---关闭系统swap分区---"
  swapoff -a
  sed -i '/swap/s/^/#/' /etc/fstab
}


if [ "$#" -eq 0 ];then
 random_color "执行时请跟上要修改的网卡名,以及新的网卡名称(sh xx eth1 eth2)"
 exit 1
fi

eth=$1
neweth=$2
function rename_grub(){
  random_color "---使用传统网卡名称来命名---"
 if grep -o "net.ifnames=0" /etc/default/grub >/dev/null 2>&1 ;then
      random_color "===当前系统已使用传统网卡名称来命名==="
       grep  "net.ifnames=0" /etc/default/grub
       exit 1
 else
            sed -i 's#\(GRUB_CMDLINE_LINUX="[^"]*\)"#\1 net.ifnames=0"#' /etc/default/grub
            if [ ! -f  /boot/efi/EFI/redhat/grub.cfg ] ;then
            random_color  "---当前系统基于BOIS引导模式---"
            random_color "---正在更新grub.cfg文件---"
            grub2-mkconfig -o /boot/grub2/grub.cfg
            else
            random_color "---当前系统基于UEFI引导模式---"
            random_color"---正在更新grub.cfg文件---"
            grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
            fi
 fi
}

function main(){
 local eth_config="/etc/NetworkManager/system-connections"
 if cat /etc/os-release |grep -o "Rocky Linux" 1>/dev/null ;then
  rename_grub
  nmcli c modify $eth con-name $neweth ifname $neweth
  mv ${eth_config}/$eth.nmconnection ${eth_config}/$neweth.nmconnection
  nmcli c reload
  random_color "配置文件修改完毕,请手动重启系统."
 else
  rename_grub
  sed -i "s/NAME=.*/NAME=$neweth/;s/DEVICE=.*/DEVICE=$neweth/" /etc/sysconfig/network-scripts/ifcfg-$eth
  mv /etc/sysconfig/network-scripts/ifcfg-$eth /etc/sysconfig/network-scripts/ifcfg-$neweth
  random_color "配置文件修改完毕,请手动重启系统."
 fi
}

os_initial
main




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/9715.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: