製作離線yum源
- 2022 年 8 月 24 日
- 筆記
互聯網上操作
1.安裝所需依賴環境和軟體包
1.1安裝命令
yum install yum-utils createrepo
1.2各軟體包功能
createrepo :生成yum 源各軟體之間的依賴索引 yum-utils:安裝後可使用 yumdownloader 命令下載所需軟體包 reposync:Reposync 用於將遠程yum存儲庫同步到本地,使用yum檢索包的目錄
2.全量本地離線yum源
以下操作需要在已連接互聯網的機器上操作:
2.1查看已配置好的網路源的ID
yum repolist

2.2按照源ID將網路源拉取到本地
reposync -r base -p /opt/data
2.2.1reposync其它參數
-h, --help 顯示此幫助消息並退出
-c CONFIG, --config=CONFIG
要使用的配置文件(默認為/etc/yum.conf)
-a ARCH, --arch=ARCH 像運行指定的arch一樣(默認值:current
arch,注意:不會覆蓋$ releasever。 x86_64是一個
i * 86的超集。)
--source 在源包上運行
-r REPOID, --repoid=REPOID
指定repo id來查詢,可以指定多個次(默認全部啟用)
-e CACHEDIR, --cachedir=CACHEDIR 用於存儲元數據的目錄
-t, --tempcache 使用臨時目錄存儲/訪問yum-cache
-d, --delete 刪除存儲庫中不再存在的本地包
-p DESTDIR, --download_path=DESTDIR 下載包的路徑:默認為當前目錄
--norepopath 不要將reponame添加到下載路徑。只可以
在同步單個存儲庫時使用(默認為
添加reponame)
-g, --gpgcheck 刪除未通過GPG簽名檢查的軟體包
-u, --urls 只列出要下載的URL,不要下載
-n, --newest-only 僅下載per-repo的最新軟體包
-q, --quiet 儘可能少地輸出
-l, --plugins 啟用yum插件支援
-m, --downloadcomps 下載comps.xml
--download-metadata 下載所有非默認元數據
--allow-path-traversal 允許存儲在其repo目錄之外的包,同步(UNSAFE,小心使用!)
2.2.2 壓縮源文件
tar -zcvf ownyum.tar.gz /opt/data
3.特定軟體包yum 源製作
3.1安裝所需要的工具包
yum install yum-utils createrepo
安裝完成後出現「yumdownloader」 "createrepo"兩個命令。
3.2創建一個存放軟體包和依賴環境的目錄
mkdir /opt/data -p
利用yumdownloader 命令可以解決軟體安裝時的依賴關係,並且用參數可以將其所有都下載下來(並不安裝到本地)
命令參數:
yumdownloader --resolve --destdir=/opt/data # 解決依賴 指定存放目錄
yum install 軟體名稱 --downloadonly --downloaddir=/opt/data # 解決軟體安裝問題 解決軟體存放目錄
3.4 生成repodata索引文件
在有網路的主機上生成一個repodata索引文件,可以使得在單機機器上方便的使用yum安裝軟體,而不需要自己去解決依賴關係。
命令:(選擇下載好依賴關係和軟體包的目錄)
createrepo /opt/data

生成完畢
/opt/data下生成了一個repodata目錄文件
無網路機器上操作
1.打包傳輸使用
tar -zcvf opt-yum。tar。gz /opt/data
解壓後在離線機器上配置yum源
備份原有yum源
mkdir /etc/yum.repos.d/bk -p && mv /etc/yum.repos.d/* /etc/yum.repos.d/bk
配置新yum源
cat >/etc/yum.repos.d/data.repo<<END [centos-data] name=data-ce baseurl=file:///root/opt/data gpgchek=0 enabled=1 END
驗證
yum repolist

