如果您是使用線上的Yum源,您可以忽略這步。
簡單說明下思路:從網上下載下傳相應版本的DVDCD光牒的内容拷貝到本地的目錄下,重新生成相應的xml資訊。
注意一下,這裡要用到這個createrepo指令,是以要保證這個指令存在,同時要重建一些檔案。
下面我通過一個腳本來說明問題:
#!/bin/bash
# admin#wangxiaoyu.org
# 2009-09-23 19:26:24
# 2009-09-24 23:01:38 Added comments
# 2010-12-29 Added comments
###如果需要配合FTP/Web/NFS等伺服器實作線上yum源的功能,請您修改這個腳本中生成yum用戶端配置檔案的語句
echo -en "Please input the path of the local Yum Server files:\n"
read yum_path
if [ -d $yum_path ]; then
rm -f /etc/yum.repos.d/* #删除原先的yum用戶端配置檔案,有需要的話請事先備份
find -L $yum_path -name repomd.xml -exec echo -en "" > '{}' \; #清空舊的依賴資料檔案*.xml
if ! rpm -q createrepo ;then
cd $yum_path/Server && rpm -ivh createrepo-* #保證createrepo軟體已經安裝
fi
for i in `find -L $yum_path -name repomd.xml` #采集舊的依賴資料檔案*.xml,來生成新的
do
cd `dirname $i`
cd ..
rm -rf .olddata
basefile=`basename $PWD`
createrepo -g $i $PWD
if [ $? ]; then #生成新的yum用戶端配置檔案,我主要是用來測試用的
cat >>/etc/yum.repos.d/server.repo <<EOF
# $basefile
[$basefile]
name=$basefile
baseurl=file://$PWD
gpgcheck=0
EOF
fi
done
fi
yum clean all && yum list
下面簡單說一些常用到的yum指令:
* install package1 [package2] [...]安裝rpm包
* update [package1] [package2] [...]更新rpm包
* check-update同步yum倉庫資訊
* upgrade [package1] [package2] [...]更新陳舊的rpm包
* remove | erase package1 [package2] [...]删除已經安裝的軟體
* list [...]列出倉庫中所有的軟體,常與grep配合使用
* info [...]列出某一個或多個rpm包的詳細資訊,它類似于rpm -q --info [..]但yum的功能稍強一些,可以列出沒有安裝的軟體資訊
* provides | whatprovides feature1 [feature2] [...]
* clean [ packages | headers | metadata | dbcache | all ] “垃圾”清除 * makecache
* groupinstall group1 [group2] [...] 按軟體的分組安裝軟體,這個多與groupinfo配合使用,例如安裝所有開發工具和相應的庫檔案
* groupupdate group1 [group2] [...] 按軟體的分組更新軟體
* grouplist [hidden] 列出分組的清單
* groupremove group1 [group2] [...]
* groupinfo group1 [...] 列出分組的詳細資訊
* search string1 [string2] [...] 查詢某個或某幾個rpm包
* shell [filename]
* resolvedep dep1 [dep2] [...]
* localinstall rpmfile1 [rpmfile2] [...] 通過yum來不在yum倉庫範圍的rpm包,這個很有用,經常用來自動解決一些依賴關系
* localupdate rpmfile1 [rpmfile2] [...]
* deplist package1 [package2] [...]
* repolist [all|enabled|disabled]
* reinstall package1 [package2] [...]在軟體遭遇以外删除時,這個可以用來重新安裝rpm包
* help [command]萬能的,你會看到上面的這些資訊,得到的資訊量絕對不亞于這裡。或者可以通過man rpm來獲得更詳細的幫助資訊。
本文轉自xiaoyuwang 51CTO部落格,原文連結:http://blog.51cto.com/wangxiaoyu/205188,如需轉載請自行聯系原作者