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

CentOS 7離線環(huán)境下搭建共享YUM源的完整步驟

 更新時間:2026年03月25日 08:33:08   作者:學亮編程手記  
本文介紹了在CentOS7中搭建HTTP/FTP共享YUM源的步驟,包括安裝nginx/httpd、創(chuàng)建YUM源目錄、配置nginx、添加rpm包、客戶端配置、維護與擴展等內(nèi)容,最后提供了一個簡化添加rpm包的腳本示例,需要的朋友可以參考下

在離線環(huán)境下搭建共享YUM源是內(nèi)網(wǎng)運維的常見需求。以下是在CentOS 7中完整實現(xiàn)該功能的步驟。

一、環(huán)境說明

  • YUM源服務器:CentOS 7,IP地址假設為 192.168.1.100
  • 客戶端機器:同局域網(wǎng)內(nèi)的其他CentOS 7虛擬機
  • 共享協(xié)議:使用HTTP(nginx/apache)或FTP,本文以nginx為例

二、搭建YUM源服務器

1. 安裝nginx(或使用httpd)

# 如果有本地ISO或已掛載的安裝介質(zhì),先配置臨時本地源
# 掛載CentOS 7安裝ISO
mkdir -p /mnt/cdrom
mount -o loop /path/to/CentOS-7-x86_64-DVD.iso /mnt/cdrom

# 配置臨時本地repo(僅用于安裝nginx等工具)
cat > /etc/yum.repos.d/local.repo << EOF
[local]
name=Local Repository
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0
EOF

# 安裝nginx
yum install -y nginx

# 啟動nginx并設置開機自啟
systemctl start nginx
systemctl enable nginx

# 確認防火墻允許80端口
firewall-cmd --permanent --add-service=http
firewall-cmd --reload

2. 創(chuàng)建YUM源目錄結(jié)構(gòu)

# 創(chuàng)建主目錄(nginx默認web根目錄為/usr/share/nginx/html)
mkdir -p /usr/share/nginx/html/yum-repo/{centos7,updates,epel,local}

# 初始化repodata(以centos7目錄為例)
# 如果沒有rpm文件,先創(chuàng)建一個空的repodata
cd /usr/share/nginx/html/yum-repo/centos7
createrepo .

如果 createrepo 命令不存在,先安裝:

yum install -y createrepo

3. 配置nginx顯示目錄列表(便于查看)

編輯 /etc/nginx/conf.d/yum.conf

server {
    listen 80;
    server_name _;
    location /yum-repo {
        autoindex on;           # 開啟目錄列表
        autoindex_exact_size off;
        autoindex_localtime on;
        root /usr/share/nginx/html;
    }
}

重載nginx:

nginx -t
systemctl reload nginx

此時可通過瀏覽器訪問 http://192.168.1.100/yum-repo/ 驗證。

三、往YUM源中添加新的RPM文件

1. 添加單個或多個rpm包

# 將rpm文件放入對應目錄
cp /path/to/your-package.rpm /usr/share/nginx/html/yum-repo/local/

# 更新repodata(必須在添加后執(zhí)行)
cd /usr/share/nginx/html/yum-repo/local
createrepo --update .   # --update 只更新變更,速度快

2. 批量添加多個rpm包

# 假設所有rpm在/tmp/new-packages目錄下
cp /tmp/new-packages/*.rpm /usr/share/nginx/html/yum-repo/local/
cd /usr/share/nginx/html/yum-repo/local
createrepo --update .

3. 添加整個目錄的rpm(如從光盤復制)

# 復制整個Packages目錄(以centos7為例)
cp -r /mnt/cdrom/Packages/*.rpm /usr/share/nginx/html/yum-repo/centos7/
cd /usr/share/nginx/html/yum-repo/centos7
createrepo --update .

四、客戶端配置

在需要訪問該YUM源的客戶端機器上,創(chuàng)建repo文件。

1. 創(chuàng)建repo配置文件

cat > /etc/yum.repos.d/offline.repo << EOF
[offline-centos7]
name=Offline CentOS 7 Repository
baseurl=http://192.168.1.100/yum-repo/centos7
enabled=1
gpgcheck=0

[offline-local]
name=Offline Local Repository
baseurl=http://192.168.1.100/yum-repo/local
enabled=1
gpgcheck=0
EOF

2. 清理緩存并測試

yum clean all
yum makecache
yum repolist

# 測試安裝(以tree為例,假設該rpm已存在于源中)
yum install -y tree

五、維護與擴展

1. 定期同步官方源(在有網(wǎng)絡時)

如果偶爾能聯(lián)網(wǎng),可同步CentOS官方源到本地:

# 使用reposync同步(需先配置好在線repo)
yum install -y yum-utils
reposync --repoid=base --download_path=/usr/share/nginx/html/yum-repo/centos7/
createrepo --update /usr/share/nginx/html/yum-repo/centos7/

2. 刪除不需要的rpm

rm /usr/share/nginx/html/yum-repo/local/unwanted-package.rpm
cd /usr/share/nginx/html/yum-repo/local
createrepo --update .

3. 定期清理舊版本(保留最新)

可編寫腳本,使用 createrepo --update 配合 package-cleanup 等工具。

六、常見問題解決

問題解決方法
客戶端 yum makecache 報錯 Cannot retrieve repository metadata檢查服務器nginx是否正常,防火墻是否開放80端口,客戶端能否 curl http://192.168.1.100/yum-repo/
添加rpm后客戶端看不到新包確保執(zhí)行了 createrepo --update,并清理客戶端緩存 yum clean all
依賴關系報錯確保所有依賴的rpm都已放入源中,可使用 createrepo --update 自動處理依賴(但需rpm文件齊全)
gpgcheck警告在客戶端repo配置中設置 gpgcheck=0(離線環(huán)境可關閉驗證)

七、腳本化添加rpm(示例)

創(chuàng)建一個腳本 /root/add-to-yumrepo.sh 簡化操作:

#!/bin/bash
# 用法: ./add-to-yumrepo.sh /path/to/*.rpm

REPO_PATH="/usr/share/nginx/html/yum-repo/local"

if [ $# -eq 0 ]; then
    echo "Usage: $0 /path/to/rpm_files"
    exit 1
fi

cp "$@" $REPO_PATH/
cd $REPO_PATH
createrepo --update .
echo "Done. Updated repodata in $REPO_PATH"
chmod +x /root/add-to-yumrepo.sh
# 使用示例
./add-to-yumrepo.sh /tmp/new/*.rpm

通過以上步驟,你就可以在離線環(huán)境中成功搭建共享YUM源,并靈活地添加新rpm包,供局域網(wǎng)內(nèi)的其他虛擬機使用。

到此這篇關于CentOS 7離線環(huán)境下搭建共享YUM源的完整步驟的文章就介紹到這了,更多相關CentOS 7離線搭建共享YUM源內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 教你如何搭建一個安全的Linux服務器教程

    教你如何搭建一個安全的Linux服務器教程

    在當前很多php程序都使用了linux服務器,因為php在linux下運行效果更佳,很多大網(wǎng)站采用了linux服務器
    2012-04-04
  • linux如何擴展磁盤容量(VMware虛擬機)

    linux如何擴展磁盤容量(VMware虛擬機)

    這篇文章主要介紹了linux如何擴展磁盤容量(VMware虛擬機)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-09-09
  • 解析Linux文件夾文件創(chuàng)建、刪除

    解析Linux文件夾文件創(chuàng)建、刪除

    本篇文章主要介紹解析Linux文件夾文件創(chuàng)建、刪除,具有一定的參考價值,有需要的可以了解一下。
    2016-11-11
  • Centos7刪除/boot/下所有文件后實現(xiàn)恢復

    Centos7刪除/boot/下所有文件后實現(xiàn)恢復

    文章介紹了在/boot/目錄下的文件被刪除后,可以通過光盤救援模式安裝GRUB2、安裝內(nèi)核、修復GRUB配置文件以及退出重啟來解決開機問題
    2026-01-01
  • linux服務中開啟防火墻的兩種方式

    linux服務中開啟防火墻的兩種方式

    這篇文章主要介紹了linux服務中開啟防火墻的兩種方式,給大家補充介紹了linux防火墻基本知識,需要的朋友可以參考下
    2018-12-12
  • Linux打包和壓縮工具的使用詳解

    Linux打包和壓縮工具的使用詳解

    對于剛剛接觸Linux的人來說,一定會給Linux下一大堆各式各樣的文件名 給搞暈。別個不說,單單就壓縮文件為例,我們知道在Windows下最常見的壓縮文件就只有兩種,一是,zip,另一個是.rar??墒荓inux就不同 了,它有.gz、.tar.gz、tgz、bz2、.Z、.tar等眾多的壓縮文件名
    2018-07-07
  • 詳解如何在Ubuntu 20.04上安裝Xrdp服務器(遠程桌面)

    詳解如何在Ubuntu 20.04上安裝Xrdp服務器(遠程桌面)

    這篇文章主要介紹了詳解如何在Ubuntu 20.04上安裝Xrdp服務器(遠程桌面),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • linux下如何安裝nginx

    linux下如何安裝nginx

    這篇文章主要介紹了linux下如何安裝nginx問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Linux文件刪除后空間未釋放問題詳解

    Linux文件刪除后空間未釋放問題詳解

    這篇文章主要給大家介紹了關于Linux文件刪除后空間未釋放問題的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Linux具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2020-05-05
  • 寶塔linux面板命令大全

    寶塔linux面板命令大全

    這篇文章主要介紹了寶塔面板Linux版的命令大全,需要的朋友可以參考下
    2020-06-06

最新評論

鲁山县| 会泽县| 东宁县| 青州市| 新巴尔虎左旗| 沙洋县| 三明市| 夏河县| 贺兰县| 五台县| 盐城市| 泗洪县| 固始县| 西林县| 扬中市| 晴隆县| 沾化县| 南阳市| 潼关县| 雷山县| 兴安盟| 多伦县| 田林县| 垣曲县| 长沙市| 彝良县| 石狮市| 岐山县| 城口县| 卢龙县| 佛学| 三台县| 巧家县| 岫岩| 阜新市| 南充市| 宁明县| 桓仁| 陇西县| 磐安县| 平昌县|