openSUSE中YaST包管理器的更新實(shí)戰(zhàn)
對(duì)于openSUSE的用戶來說YaST是一個(gè)強(qiáng)大的RPM包管理器和系統(tǒng)設(shè)置軟件,YaST可以幫助用戶管理系統(tǒng)中的瑣碎問題。包管理功能協(xié)調(diào)解決依賴性問題,從而提供了大規(guī)模軟件升級(jí)的便利。YaST中這個(gè)功能叫做“系統(tǒng)更新”。用戶簡單的增加一個(gè)安裝源,就可以升級(jí)含有多個(gè)包的大程序(比如KDE)。
但由于安裝源大部分都在國外,網(wǎng)絡(luò)條件不好的話,源更新的成功率較低。因此,把相關(guān)文件下載到本地,再把本地目錄設(shè)為安裝源,這樣可以提高升級(jí)成功率,而且穩(wěn)定,不易出錯(cuò)。
51CTO編輯推薦:openSUSE——一個(gè)沉默中的王者
這里以SUSE 10.0 64bit更新到KDE 3.5.1為例說明:
1.找到安裝源地址
這里只是舉例,升級(jí)用到了openSUSE服務(wù)器上提供的Yast源--KDE supplementary 3.5 update。這里并沒有用官方的地址,而是用了ftp.jaist.ac.jp服務(wù)器上作的鏡像,因?yàn)檫@個(gè)服務(wù)器在日本,速度相對(duì)快些。
你并不一定要使用這個(gè)地址,如果你知道更快的suse服務(wù)器的鏡像:把[1]作為你找到的官方鏡像,32位把x86_64換成i386或者i586,只要適合你的情況就行:
http://www.xxx.com/A/B/suse/x86_64/supplementary/KDE/update_for_10.0/yast-source/
2.分析根目錄下的content文件
一個(gè)真YaST源不僅包含RPM包,也包含描述那些包的文件。在下載到本地時(shí),這些文件都要下載。一般來說,描述包的文件有如下幾個(gè)
- media.1/
- `- media
- content
- directory.yast
- setup/descr/
- `- packages
- `- packages.DU
- `- packages.en
一般來說media.1目錄下的media文件是固定的,根目錄下directory.yast和content文件是位置固定的。如果其它不是默認(rèn)情況,content文件中會(huì)明示各路徑。文件中關(guān)鍵詞DESCRDIR對(duì)應(yīng)安裝包描述信息的位置,DATADIR對(duì)應(yīng)rpm包的存放目錄。
RPM包在目錄 DATADIR/架構(gòu)名稱 下面存放。比如DATADIR是 suse/rpm,那64位的包就應(yīng)該在 根目錄/suse/rpm/x86_64,其它架構(gòu)的包就是 根目錄/suse/rpm/i386或者i586、i686。
描述包信息的文件,一般是三個(gè)文件packages、packages.DU、packages.xx。.xx是語言簡寫代碼,一般是英語,packages.en。德語就是packages.de。
- PRODUCT supplementary KDE 3.5.x
- VERSION 3.5
- DISTPRODUCT KDE-3.5-supplementary
- DISTVERSION 3.5-0
- BASEPRODUCT SuSE Linux
- BASEVERSION 10.0-0
- VENDOR SuSE Linux AG
- ARCH.x86_64 x86_64 i686 i586 i486 i386 noarch
- DEFAULTBASE x86_64
- REQUIRES distribution-release
- LABEL supplementary KDE 3.5 update
- LABEL.de inoffizielles KDE 3.5 update
- DESCRDIR suse/setup/descr
- DATADIR suse
- FLAGS update
- TIMEZONE Europe/Berlin
其中DESCRDIR suse/setup/descr 這行是說對(duì)包的描述文件在 根目錄/suse/setup/descr 里面,這里是文件packages、packages.DU、packages.en、packages.de。
DATADIR suse這行則是說我們需要的rpm包存在 根目錄/suse/架構(gòu)名稱 下面。
3.建立本地目錄 /home/xxx/kde-up/
4.按照原來目錄結(jié)構(gòu)下載下面文件到 /home/xxx/kde-up/
- media.1/
- `- media
- content
- directory.yast
- suse/setup/descr/
- `- packages
- `- packages.DU
- `- packages.en
當(dāng)然如果你希望那個(gè)看到德語的包信息簡介,請(qǐng)下載packages.de文件,而不是packages.en。
下載我們需要的包,先是下載整個(gè)suse/x86_64/ 下面的文件到 /home/xxx/kde-up/suse/x86_64/ 。當(dāng)然如果您很明確知道自己不需要什么就不要下那個(gè)包。比如說我就不用amarok用xmms,那么amarok.rpm就沒有必要下載。
然后在 /home/xxx/kde-up/suse/noarch/ 下面下載 kdelibs3-devel-doc.rpm,kde3-i18n-zh_CN.rpm。如果你用Koffice,繼續(xù)下koffice-i18n-zh_CN.rpm。之所以只下有zh_CN的rpm是因?yàn)檫@些kde3-i18n-*.rpm/koffice-i18n-*.rpm明顯是語言包,下一大堆根本不用的語言沒有意義。自然如果您使用繁體中文請(qǐng)下載相應(yīng)的zh_TW的RPM。
5.YaST-安裝源-把目錄/home/xxx/kde-up/加入安裝源。只打開剛加的源和初始安裝盤的源。
6.YaST-系統(tǒng)更新,如果還顯示少什么包,去搜索引擎查找,手動(dòng)解決。
【編輯推薦】