最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux虛擬機系統(tǒng)化部署母盤流程

 更新時間:2026年02月24日 09:56:10   作者:feng68_  
文章介紹了系統(tǒng)化部署母盤的原因和方法,包括配置vim個性化軟件倉庫、自動掛載光盤映像、配置網(wǎng)絡(luò)和關(guān)閉SELinux及防火墻

為什么要系統(tǒng)化部署母盤?

為了后續(xù)使用更加方便(直接克隆母盤即可得一臺新虛擬機),省時間,好管理。

實驗?zāi)副P目標(biāo):

  • vim個性化
  • 軟件倉庫要配好(本地、網(wǎng)絡(luò)、第三方、源碼)
  • 網(wǎng)絡(luò)配置(后續(xù)節(jié)點實驗機IP平凡變動,用腳本配)
  • selinux、firewalld要關(guān)閉

1. vim個性化

[root@server ~]# vim /usr/bin/my_script/vimset.sh
 #!/bin/bash
 # 在vim全局配置文件中追加個性化設(shè)置
 cat >> /etc/vimrc <<EOF
 set tabstop=4
 set softtabstop=4
 set shiftwidth=4
 set backspace=2
 set nu
 set hlsearch
 set selection=exclusive
 set selectmode=mouse,key
 EOF
[root@server ~]# chmod +x /usr/bin/my_script/vimset.sh

2. 軟件倉庫配置

配置思路:

1.使用mount命令掛載本地光盤映像(臨時掛載、開機自啟動掛載、開機執(zhí)行一下mount命令),不建議弄開機自啟動掛載,即寫再/etc/fstab里面寫mount,寫錯了開機還會起不來

2.編寫自動配置倉庫文件腳本(測試好后可以把/etc/yum.repos.d/下所有倉庫配置文件刪了,母盤能省空間就盡量省空間,克隆出去的節(jié)點不會有贅余文件)

開機后掛載光盤映像

 [root@localhost ~]# vim /etc/rc.d/rc.local
 mount /dev/cdrom /media
 [root@localhost ~]# chmod +x /etc/rc.d/rc.local
 [root@localhost ~]# vim /usr/bin/my_script/swset.sh

配置倉庫腳本

能運行的腳本

#!/bin/bash
 # 本腳本只做了本地光盤映像和阿里云的軟件倉庫
 # 使用方式:腳本 Local/Aliyun
 [ $1 -ne "Local" ]
 grep $1 -r /etc/yum.repos.d/ | awk -F : '{system("rm -rf " $1)}'
 cat > /etc/yum.repos.d/$1.repo <<EOF
 [$1AppStream]
 name=$1.appstream
 baseurl=file:///media/AppStream
 gpgcheck=0
 enable=1
 ?
 [$1BaseOS]
 name=$1.baseos
 baseurl=file:///media/BaseOS
 gpgcheck=0
 enable=1
 EOF
 :
 grep $1 -r /etc/yum.repos.d/ | awk -F : '{system("rm -rf " $1)}'
 cat > /etc/yum.repos.d/$1.repo <<EOF
 [$1AppStream]
 name=$1.appstream
 baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/AppStream/x86_64/os/
 gpgcheck=0
 enable=1
 ?
 [$1BaseOS]
 name=$1.baseos
 baseurl=https://mirrors.aliyun.com/centos-stream/9-stream/BaseOS/x86_64/os/
 gpgcheck=0
 enable=1
 EOF
 ?
 dnf repolist

修改后比較直觀的腳本

#!/bin/bash
 # 本腳本用于配置本地光盤和阿里云的軟件倉庫,要想再配其他的軟件倉庫在更改腳本
 # 使用方式:“腳本名 Local” 或 “腳本名 Aliyun”
 ?
 # 這個函數(shù)用于判斷參數(shù)并返回對應(yīng)標(biāo)識
 judge_sw() {
     local judgment="$1"
     if [ "$judgment" = "Local" ]; then
         return 0
     elif [ "$judgment" = "Aliyun" ]; then
         return 1
     else
         # 其他無效參數(shù)返回2(后續(xù)要增加倉庫再改)
         return 2
     fi
 }
 ?
 # 此函數(shù)用于生成倉庫文件
 software_warehouse() {
     local repo_name="$1"
     local appstream_url="$2"
     local baseos_url="$3"
 ?
     # 安全刪除舊的同名倉庫文件(避免誤刪其他文件)
     if [ -f "/etc/yum.repos.d/${repo_name}.repo" ]; then
         rm -f "/etc/yum.repos.d/${repo_name}.repo"
     fi
 ?
     # 生成新的倉庫文件
     cat > "/etc/yum.repos.d/${repo_name}.repo" <<EOF
 [${repo_name}AppStream]
 name=${repo_name}.appstream
 baseurl=${appstream_url}
 gpgcheck=0
 enabled=1
 ?
 [${repo_name}BaseOS]
 name=${repo_name}.baseos
 baseurl=${baseos_url}
 gpgcheck=0
 enabled=1
 EOF
 }
 ?
 # 主邏輯:調(diào)用判斷函數(shù),根據(jù)返回值執(zhí)行對應(yīng)分支
 # 傳遞腳本的第一個參數(shù)給判斷函數(shù)
 judge_sw "$1"
 # 根據(jù)$?來取出judge_sw函數(shù)的返回值
 case $? in
     0)
         # Local分支
         software_warehouse "Local" \
             "file:///media/AppStream" \
             "file:///media/BaseOS"
         ;;
     1)
         # Aliyun分支
         software_warehouse "Aliyun" \
             "https://mirrors.aliyun.com/centos-stream/9-stream/AppStream/x86_64/os/" \
             "https://mirrors.aliyun.com/centos-stream/9-stream/BaseOS/x86_64/os/"
         ;;
     *)
         echo "This Software warehouse is not set"
         exit 1
         ;;
 esac
 ?
 # 驗證倉庫配置
 dnf repolist

收尾

 [root@localhost ~]# chmod +x /usr/bin/my_script/swset.sh
 [root@localhost ~]# rm -rf /etc/yum.repos.d/*

3. 自動配置網(wǎng)絡(luò)

配置思路(rhel9):

  • 先使用grubby --update-kernel ALL --args net.ifnames=0禁用默認命名規(guī)則,實現(xiàn)可預(yù)測命名規(guī)則(作用是啟動時網(wǎng)卡名稱會變成eth0,再添加一個網(wǎng)卡時添加的網(wǎng)卡名稱會是eth1,有規(guī)律的添加網(wǎng)卡名;不使用這個命令它后面添加的網(wǎng)卡名不好推測,寫腳本也不怎么順暢.如:ens160再添加一個網(wǎng)卡后會變成ens不知名數(shù)字
  • 編寫自動配置網(wǎng)絡(luò)腳本(測試好后可以把/etc/NetworkManager/system-connections/下所有網(wǎng)絡(luò)配置文件刪了,母盤能省空間就盡量省空間

禁用默認命名規(guī)則

 [root@localhost ~]# grubby --update-kernel ALL --args net.ifnames=0
 [root@localhost ~]# vim /usr/bin/my_script/nmset.sh

配置網(wǎng)絡(luò)腳本

 #!/bin/bash
 # 本腳本用于修改以存在的網(wǎng)卡設(shè)備中的IP地址和主機名
 # 使用方式:腳本 網(wǎng)卡設(shè)備名 IP地址(不加掩碼) 主機名
 ?
 # 檢測網(wǎng)卡設(shè)備有沒有:“ifconfig 網(wǎng)卡名”,報錯就沒有,沒報錯就有(網(wǎng)卡設(shè)備得在虛擬機自定義硬件里面添加)
 ifconfig $1 &> /dev/null || {
     echo "net device $1 is not exited"
     exit
 }
 # 檢查IP是否存在
 ping -c1 -w1 $2 &> /dev/null && {
     echo "$2 is exited,please use new IP"
     exit
 }
 # 確定網(wǎng)卡在設(shè)備中是否用配置文件,有就刪了重新寫入新IP信息和設(shè)備名稱,沒有就直接寫
 grep $1 -r /etc/NetworkManager/system-connections/ | awk -F : '{system("rm -rf " $1)}'
 cat > /etc/NetworkManager/system-connections/$1.nmconnection <<EOF
 [connection]
 id=$1
 type=ethernet
 interface-name=$1
 ?
 [ipv4]
 method=manual
 address1=$2/24,192.168.126.2
 dns=8.8.8.8
 EOF
 ?
 # 修改權(quán)限,和重新加載文件并啟動網(wǎng)卡會議名
 chmod 600 /etc/NetworkManager/system-connections/$1.nmconnection
 nmcli connection reload
 nmcli connection up $1
 ?
 # 修改主機名,做本地解析
 hostnamectl hostname $3
 grep -e "$2\t$3" /etc/hosts || {
     echo -e "$2\t$3" >> /etc/hosts
 }

后續(xù)

 [root@localhost ~]# chmod +x /usr/bin/my_script/nmset.sh
 [root@localhost ~]# rm -rf /etc/NetworkManager/system-connections/*

4. 基本實驗環(huán)境

關(guān)防火墻、selinux內(nèi)核

 [root@localhost ~]# grubby --update-kernel ALL --args selinux=0
 [root@localhost ~]# systemctl disable --now firewalld.service

到此系統(tǒng)化部署母盤結(jié)束啦,盡情克隆節(jié)點去玩吧

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Linux的IP地址設(shè)置方式(查看,修改,固定)

    Linux的IP地址設(shè)置方式(查看,修改,固定)

    本文介紹了Linux系統(tǒng)查看、修改和固定IP地址的方法,查看IP地址可通過ifconfig或ipaddr指令;修改臨時IP地址用ifconfig指令;固定IP地址則需編輯相關(guān)配置文件并重啟網(wǎng)卡
    2026-04-04
  • centOS7 NET模式設(shè)置靜態(tài)Ip的方法步驟

    centOS7 NET模式設(shè)置靜態(tài)Ip的方法步驟

    這篇文章主要給大家介紹了關(guān)于centOS7 NET模式設(shè)置靜態(tài)Ip的方法步驟,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用centOS7系統(tǒng)具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Apache中偽靜態(tài)Rewrite的使用方法和URL重寫規(guī)則表達式講解

    Apache中偽靜態(tài)Rewrite的使用方法和URL重寫規(guī)則表達式講解

    apache中的mod_rewrite模塊提供了一個基于正則表達式分析器的重寫引擎來實時重寫URL請求,主要的功能就是實現(xiàn)URL的跳轉(zhuǎn),它的正則表達式是基于Perl語言??苫诜?wù)器級的(httpd.conf)和目錄級的(.htaccess)兩種方式,允許通過它來改變Apache?Web服務(wù)器的配置。
    2022-11-11
  • 詳解linux 關(guān)機命令總結(jié)

    詳解linux 關(guān)機命令總結(jié)

    本篇文章主要介紹了linux 關(guān)機命令總結(jié),linux下常用的關(guān)機命令有:shutdown、halt、poweroff、init,有興趣的可以了解一下。
    2016-12-12
  • Linux遠程登錄實現(xiàn)教程解析

    Linux遠程登錄實現(xiàn)教程解析

    這篇文章主要介紹了Linux遠程登錄實現(xiàn)教程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • centos下yum搭建安裝linux+apache+mysql+php環(huán)境教程

    centos下yum搭建安裝linux+apache+mysql+php環(huán)境教程

    本篇文章介紹了centos下yum搭建安裝linux+apache+mysql+php環(huán)境,對學(xué)習(xí)centos有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2016-10-10
  • Linux 為特定的用戶或用戶組啟用或禁用 SSH的方法

    Linux 為特定的用戶或用戶組啟用或禁用 SSH的方法

    這篇文章主要介紹了如何在 Linux 上為特定的用戶或用戶組啟用或禁用 SSH,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • window與linux項目部署之linux文件路徑不存在問題

    window與linux項目部署之linux文件路徑不存在問題

    小編在一次項目測試中,發(fā)現(xiàn)一些bug,window與linux項目部署-linux文件路徑不存在問題,本文給出了解決方案,需要的朋友可以參考下
    2019-11-11
  • CentOS設(shè)置上網(wǎng)代理全過程

    CentOS設(shè)置上網(wǎng)代理全過程

    該文章詳細介紹了在CentOS 7.0系統(tǒng)上設(shè)置代理服務(wù)器的過程,包括設(shè)置全局代理、yum代理、wget代理以及配置Docker HTTP代理的步驟
    2025-12-12
  • Linux中在不破壞磁盤的情況下使用dd命令

    Linux中在不破壞磁盤的情況下使用dd命令

    今天小編就為大家分享一篇關(guān)于Linux中在不破壞磁盤的情況下使用dd的文章,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10

最新評論

泽库县| 靖远县| 龙川县| 锡林郭勒盟| 博乐市| 吉林市| 合水县| 凯里市| 界首市| 库伦旗| 萍乡市| 丰顺县| 英超| 平昌县| 慈利县| 深圳市| 禄丰县| 溧阳市| 石家庄市| 兴文县| 海淀区| 新闻| 临安市| 温州市| 乐亭县| 思茅市| 富宁县| 凤城市| 达孜县| 邓州市| 任丘市| 泽普县| 乃东县| 淅川县| 台北县| 龙川县| 建瓯市| 东丽区| 若尔盖县| 来凤县| 大邑县|