歡迎您光臨本站 註冊首頁

Fedora8下用yum安裝rpm

←手機掃碼閱讀     火星人 @ 2014-03-25 , reply:0

來源:網路割草機

Linux當中很有軟體通常不是安裝一個RPM包就可以解決的;很多軟體包需要編譯,這時軟體包所對應的kernel和你c語言lib庫版本,甚至你的gcc編譯器都有可能影響軟體安裝,好在現在的開源社區越做越好,在Fedora8下絕大多數能想到的包都有rpm,反正也不是做服務,用不著安全和優化,直接用這些rpm就好了。

如果是Fedora安裝盤上直接有的包,在"添加/刪除軟體"里直接搜一下裝,裝完自動更新會找到最新版幫你升級。要是盤上沒有的,比如mplayer自己下載就麻煩了,還不知道關聯性中還需要哪些包。用Yellow Dog Updater,Modified(yum)可以幫助你從已經配置好的軟體庫中下載和安裝軟體包,甚至會考慮到軟體包之間的依賴關係。這個是安裝軟體包最好的方法,幾乎不用干預。記得以前配yum還比較麻煩的,現在的Fedora8已經做的很好了,直接就能用,要是閑官方下載包速度太慢,就自己添加第三方軟體庫,真是好用好舒服的說。

一.了解yum的配置
在Fedora8下,yum的配置文件在/etc/yum.conf
QUOTE:
[main]
cachedir=/var/cache/yum 緩存目錄
keepcache=0 確定緩存文件是否要保存
debuglevel=2 調試級別
logfile=/var/log/yum.log 日誌文件的位置
exactarch=1 這選項在yum更新的時候有用,他用來確定是否在i386上更新i686的軟體包,選1的話是不更新(用的時候還要怎麼試還沒試過)
obsoletes=1 這個選項在yum(8)中有詳細的介紹,他是一個命令行參數,我們以後可以去看看
gpgcheck=1 是否檢查gpg GNU Privacy Guard可以用於加密
plugins=1 是否顯示插件,有必要設成1,這選項在默認的時候是0。
metadata_expire=1800
installonly_limit=2

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d

這裡所謂的repos其實就是軟體庫

二.了解yum軟體庫配置
打開/etc/yum.repos.d可以看到軟體庫
QUOTE:
[lxuser@fedora8 yum.repos.d]$ ls
fedora-development.repo fedora.repo fedora-updates-testing.repo
Fedora-install-media.repo fedora-updates.repo

添加一個軟體庫的準備工作是要明確你需要添加的軟體庫的確切位置GPG密鑰(GNU Private Guard ,一種密鑰方法,實現RFC2440 中定義的OpenGPG標準,自由軟體,GPG提供命令行形式的應用,可以輕鬆集成到其它應用程序中)

打開fedora.repo
QUOTE:
[root@fedora8 yum.repos.d]# vi fedora.repo
[fedora]
name=Fedora $releasever - $basearch
failovermethod=priority
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

[fedora]
name=Fedora $releasever - $basearch
failovermethod=priority
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

[fedora-debuginfo]
name=Fedora $releasever - $basearch - Debug
failovermethod=priority
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-debug-$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY

[fedora-source]
name=Fedora $releasever - Source
failovermethod=priority
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/releases/$releasever/Everything/source/SRPMS/
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-source-$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora file:///etc/pki/rpm-gpg/RPM-GPG-KEY
$releasever 其實就是你fedora的版本號
$basearch 這個對於我這電腦來說就是i386
#baseurl 是基本地址
mirrorlist 鏡像列表
enabled=1 本repo是否激活
gpgcheck=1 是否啟用gpg檢查
gpgkey 是GPG密鑰的地址

據我所知道的yum的方法(還不一定準確)yum會檢查 baseurl/repodata/repomd.xml 這個索引文件,還有PGPKEY,找不到的會失敗。所以添加軟體庫的時候要注意一下,特別是第3方軟體庫

三.添加rpm.livna.org軟體庫
在上面fedora.repo文件最後新添加如下內容
QUOTE:
[livna]
name=livna $releasever - $basearch
baseurl=http://rpm.livna.org/fedora/$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://rpm.livna.org/RPM-LIVNA-GPG-KEY

似乎單獨保存為livna.repo也可以。注意gpgkey的位置,我在嘗試時就是搞錯了這個地址,所有包都下載完了,等著要裝了還提示:

warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID a109b1ec

baseurl直接填 http://rpm.livna.org/fedora/8/i386/ 也是可以的。

記得添加完要重啟yum服務
[root@fedora8 yum.repos.d]# /sbin/service yum-updatesd restart

停止 yum-updatesd:[確定]
啟動 yum-updatesd:[確定]

四.體驗用yum安裝軟體包
現在Linux上用sopcast也能看網路電視的,但要有mplayer的支持,先到root下裝mplayer
QUOTE:
[root@fedora8 yum.repos.d]# yum install mplayer
livna 100% |=========================| 2.1 kB 00:00
fedora 100% |=========================| 2.1 kB 00:00
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package mplayer.i386 0:1.0-0.88.rc2.lvn8 set to be updated
--> Processing Dependency: libcucul.so.0 for package: mplayer
--> Processing Dependency: liblirc_client.so.0 for package: mplayer
--> Processing Dependency: libdvdread.so.3 for package: mplayer
--> Processing Dependency: libdvdnavmini.so.4 for package: mplayer
--> Processing Dependency: libenca.so.0 for package: mplayer
--> Processing Dependency: libcaca.so.0 for package: mplayer
--> Processing Dependency: libxvidcore.so.4 for package: mplayer
--> Processing Dependency: libdca.so.0 for package: mplayer
--> Processing Dependency: libaa.so.1 for package: mplayer
--> Running transaction check
---> Package enca.i386 0:1.9-3.fc6 set to be updated
---> Package libcaca.i386 0:0.99-0.3.beta11.fc8 set to be updated
---> Package libdvdread.i386 0:0.9.7-3.fc8 set to be updated
---> Package xvidcore.i386 0:1.1.3-1.lvn8 set to be updated
---> Package aalib.i386 0:1.4.0-0.13.rc5.fc8 set to be updated
---> Package lirc.i386 0:0.8.2-2.fc8 set to be updated
---> Package libdca.i386 0:0.0.5-2.lvn8 set to be updated
---> Package libdvdnav.i386 0:0.1.10-4.20070503.lvn8 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
mplayer i386 1.0-0.88.rc2.lvn8 livna 4.3 M
Installing for dependencies:
aalib i386 1.4.0-0.13.rc5.fc8 fedora 75 k
enca i386 1.9-3.fc6 fedora 118 k
libcaca i386 0.99-0.3.beta11.fc8 fedora 160 k
libdca i386 0.0.5-2.lvn8 livna 108 k
libdvdnav i386 0.1.10-4.20070503.lvn8 livna 123 k
libdvdread i386 0.9.7-3.fc8 fedora 66 k
lirc i386 0.8.2-2.fc8 fedora 254 k
xvidcore i386 1.1.3-1.lvn8 livna 240 k

Transaction Summary
=============================================================================
Install 9 Package(s)
Update 0 Package(s)
Remove 0 Package(s)

Total download size: 5.5 M
Is this ok [y/N]: y
Downloading Packages:
warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY, key ID a109b1ec
Importing GPG key 0xA109B1EC "Livna.org rpms <rpm-key@livna.org>" from http://rpm.livna.org/RPM-LIVNA-GPG-KEY
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: libdvdnav ######################### [1/9]
Installing: libdca ######################### [2/9]
Installing: lirc ######################### [3/9]
Installing: aalib ######################### [4/9]
Installing: xvidcore ######################### [5/9]
Installing: libdvdread ######################### [6/9]
Installing: libcaca ######################### [7/9]
Installing: enca ######################### [8/9]
Installing: mplayer ######################### [9/9]

Installed: mplayer.i386 0:1.0-0.88.rc2.lvn8
Dependency Installed: aalib.i386 0:1.4.0-0.13.rc5.fc8 enca.i386 0:1.9-3.fc6 libcaca.i386 0:0.99-0.3.beta11.fc8 libdca.i386 0:0.0.5-2.lvn8 libdvdnav.i386 0:0.1.10-4.20070503.lvn8 libdvdread.i386 0:0.9.7-3.fc8 lirc.i386 0:0.8.2-2.fc8 xvidcore.i386 0:1.1.3-1.lvn8
Complete!

裝完看看菜單,咦,怎麼沒有mplayer,再打開"添加/刪除軟體",和mplayer相關的包名字都有了,即便有些包是沒裝的,哦看見一個叫mplayer-gui的,估計就是差這個了,雖然直接在這裡勾上也能下載裝,但yum還沒完過癮,再來一次
QUOTE:
[root@fedora8 yum.repos.d]# yum install mplayer-gui
Existing lock /var/run/yum.pid: another copy is running as pid 5735.
Another app is currently holding the yum lock; waiting for it to exit...
Another app is currently holding the yum lock; waiting for it to exit...


Exiting on user cancel.
[root@fedora8 yum.repos.d]# yum install mplayer-gui
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package mplayer-gui.i386 0:1.0-0.88.rc2.lvn8 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
mplayer-gui i386 1.0-0.88.rc2.lvn8 livna 3.7 M

Transaction Summary
=============================================================================
Install 1 Package(s)
Update 0 Package(s)
Remove 0 Package(s)

Total download size: 3.7 M
Is this ok [y/N]: y
Downloading Packages:
(1/1): mplayer-gui-1.0-0. 100% |=========================| 3.7 MB 00:09
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: mplayer-gui ######################### [1/1]

Installed: mplayer-gui.i386 0:1.0-0.88.rc2.lvn8
Complete!

再看看菜單,有mplayer了,這樣今後用yum裝東西都方便了

五.yum可能常用的命令
安裝: yum install '軟體名'
列表: yum list |less
查找: yum provides '軟體名'
單個軟體升級: yum update '軟體名'
全部升級: yum update
刪除已安裝的包: yum clean packages 刪除的是/var下的已下載的包

六.添加光碟為安裝源
和上面類似,新建配置文件,內容為
QUOTE:
[cd]
name=livna $releasever - $basearch
baseurl=file:///mnt/cdrom 這個是你掛載光碟機的目錄
enabled=1
gpgcheck=1
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY 這個是光碟上的GPG密鑰。

其實Fedora8更新的包很頻繁很多,添加光碟為源似乎不必要。

[火星人 ] Fedora8下用yum安裝rpm已經有537次圍觀

http://coctec.com/docs/linux/show-post-168234.html