|
|
一、yum移除與安裝 * S" \: ^# \! s0 U% A$ W) y
1.查詢是否有安裝yum
, y# O: q. L% ?" m
2 }/ E/ u$ @$ `% W4 w- [root@localhost ~]# rpm -qa | grep yum) t5 D5 r* k/ O+ f2 T! N
- yum-metadata-parser-1.1.2-3.el5.centos5 j& v6 s8 z. t* e$ K
- yum-3.2.22-33.el5.centos
$ `' m! Z- @8 m8 h - yum-fastestmirror-1.1.16-14.el5.centos.1& ~0 | ^% P5 _0 [, Y
- yum-updatesd-0.9-2.el5
複製代碼 & j* }2 M5 e4 L5 u
2.移除yum (移除的方式有兩種擇一即可)6 X) B7 J5 r* q- |9 Q U
2.1用yum的方式移除1 ]+ ]* u! {! {3 Q+ x( x" D
- [root@localhost ~]# yum remove yum*
複製代碼
& d% b9 u. T2 c3 r0 g# W, [2.2用rpm -e的方式移除" ]7 ~6 B3 f, H6 @. Q; C/ }/ a
#先查看有那些yum檔案要移除的8 J4 h: [6 Q* p9 I
- [root@localhost ~]# rpm -qa | grep yum1 ]2 R; o( _! t. w% G) u5 d
- yum-metadata-parser-1.1.2-3.el5.centos6 \9 u) }& K+ D
- yum-3.2.22-33.el5.centos
$ J0 K$ b0 H9 @- ` - yum-fastestmirror-1.1.16-14.el5.centos.1
& k! K0 d- N. r* ~; K+ v+ E - yum-updatesd-0.9-2.el5
複製代碼 2 i3 s o0 V* v
#移除yum如果要忽略相依性的問題,可使用 --nodeps 選項 B5 s- E/ z+ U; @6 F
- [root@localhost ~]# rpm -e yum-metadata-parser-1.1.2-3.el5.centos$ ? T$ v E( I- }+ p
- [root@localhost ~]# rpm -e yum-3.2.22-33.el5.centos! p0 B7 z8 r6 O1 b
- [root@localhost ~]# rpm -e yum-fastestmirror-1.1.16-14.el5.centos.12 t5 i6 G& I$ |3 O- v
- [root@localhost ~]# rpm -e yum-updatesd-0.9-2.el5
複製代碼 j/ D" }3 O9 o* D
二、安裝yum
1 q5 W; i5 I z6 L- Z2 e1.安裝源
% t; S* `8 m2 q ]6 |在安裝源的部份可以到以下的網址查看8 u* J$ [! [: p
請依自行的需要找到安裝源0 O9 c+ z; b0 O( S* G( h* N
i386 :
3 ?+ \$ a2 _1 _5 G4 H9 A2 Uhttp://mirrors.sohu.com/centos/5/os/i386/CentOS/
& k: K: [: D6 f" N9 Hhttp://mirror.centos.org/centos-5/5/os/i386/CentOS/
~, ?5 u6 \" _
. R7 i4 E5 y# c8 ]: a" o/ L2 ~x86_64 : 4 \& r5 r+ M0 J7 ]3 x) u; ~" \
http://mirrors.sohu.com/centos/5/os/x86_64/CentOS/
( N" a2 d1 r& d! Rhttp://mirror.centos.org/centos-5/5/os/x86_64/CentOS/* h" `+ R# q# o
* d+ Y7 B- z% K( N
- C$ ~& z* }" Q9 U5 W9 u2 k在yum的部份主要是使用到以下4個檔
6 o; _' o0 c6 s% Nyum-metadata-parser-1.1.2-3.el5.centos.i386.rpm
~& n* c) A5 X7 h, }; |: ?yum-fastestmirror-1.1.16-16.el5.centos.noarch.rpm* K* s( _' I& z% h
yum-3.2.22-37.el5.centos.noarch.rpm- H/ R. h z! M; Q0 X/ Q
yum-updatesd-0.9-2.el5.noarch.rpm @/ i: D: [* J9 C4 a& R& Y
% |* W/ ^% `- m0 J5 z9 O2安裝yum" N3 g" A J: }- {* ^
i386# n& u; h6 w- s& j5 R, O" P1 L
- [root@localhost ~]# rpm -ivh http://mirror.centos.org/centos-5/5/os/i386/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm http://mirror.centos.org/centos-5/5/os/i386/CentOS/yum-fastestmirror-1.1.16-16.el5.centos.noarch.rpm http://mirror.centos.org/centos-5/5/os/i386/CentOS/yum-3.2.22-37.el5.centos.noarch.rpm http://mirror.centos.org/centos-5/5/os/i386/CentOS/yum-updatesd-0.9-2.el5.noarch.rpm
: T$ |% i5 w6 H: b1 T4 x9 t - [root@localhost ~]# rpm -qa |grep yum
& ~& o) @$ a: H2 w& e4 Q( [ - yum-updatesd-0.9-2.el5, I' f( o G# Y- _/ a3 h: M' W- w
- yum-metadata-parser-1.1.2-3.el5.centos
7 B3 q" R# I4 Y! Q8 C - yum-fastestmirror-1.1.16-16.el5.centos
! j2 o8 K4 b6 _. @ - yum-3.2.22-37.el5.centos
複製代碼 5 [6 r I# v5 P# j- y- M
x86_64
8 ~8 \1 w1 m! L$ W1 J$ ] ]- [root@localhost ~]# rpm -ivh http://mirror.centos.org/centos-5/5/os/x86_64/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.x86_64.rpm http://mirror.centos.org/centos-5/5/os/x86_64/CentOS/yum-fastestmirror-1.1.16-16.el5.centos.noarch.rpm http://mirror.centos.org/centos-5/5/os/x86_64/CentOS/yum-3.2.22-37.el5.centos.noarch.rpm http://mirror.centos.org/centos-5/5/os/x86_64/CentOS/yum-updatesd-0.9-2.el5.noarch.rpm " b3 j! Y+ Y4 z8 m( o
- [root@localhost ~]# rpm -qa |grep yum3 k9 n5 V( W; K/ ], f& N
- yum-updatesd-0.9-2.el57 y8 |( U! E# m: r1 c
- yum-metadata-parser-1.1.2-3.el5.centos* z0 F; c! J3 t4 g, {8 I
- yum-fastestmirror-1.1.16-16.el5.centos
0 g$ y) M' O* {& @) ]7 `5 _ - yum-3.2.22-37.el5.centos
複製代碼
' h# s% G+ l/ D: o2.2更新所有已安裝的套件(依個人需求看是否更新)
0 c' n1 S( c, ~- [root@localhost ~]# yum -y update
複製代碼
- y4 u: \0 G, J) c; C三、yum指令說明$ J1 \# A! S& g3 K; r
在使用yum時,會將下載的東西,存放在/var/cache/yum目錄下。9 i2 m+ e" C8 Q a8 x
1.yum更新
8 t$ o% m1 F0 Z4 b! \: h$ qyum check-update W4 O0 Z$ \$ u) ^# X
#檢查能更新的套件有那些+ w, U; k5 i! O7 M' C, H
9 Y O8 C" E: Q3 n" S
yum update + l1 R+ K' A. i7 |7 W* `( d1 J
#更新所有已安裝的套件,若在update後面接上套件名稱的話可針對該套件更新2 N1 i' [/ Q ]8 r9 w# [6 a9 _& `
如yum update httpd
6 k0 [% F1 m: G& m. {' o
6 W9 _: n. L1 f2 p- b7 Hyum upgrade
# ~% a8 w+ H- D* y0 W#功能跟update差不多,差別在於yum upgrade會連同一些過舊即將洮汰的套件也一起更新,大多使用在版本升級。- S' `: p, H2 O, c. U
" b# }0 \8 L5 H
1.1安裝.移除套件0 E5 R8 W' U9 r1 C# T
yum install
# l h8 W/ F' f" b) ?( o7 T5 h [#安裝套件,install後面接要安裝的套件名稱,如yum install httpd。若要把所有相關的一起安裝的話可在最後加上「*」。如yum install httpd*
& w% O% v! _4 @) m7 T+ B6 J$ m; }6 w4 u* [; V
yum --enablerepo=(Repository) install 安裝時只使用某個套件庫,如果多個,之間可以逗號分開,先查看/etc/yum.repos.d/有那些.repo
) @ D' |7 r# b& g' \2 R) A如yum --enablerepo remi,remi-php55 install php
8 l4 f7 D6 @5 j# |
2 f X5 W A# h/ r+ Y- dyum reinstall重新安裝套件
& L; Z z$ W G% K- Q5 b2 Q- @7 X, P
yum remove
$ t5 s4 U( V6 o3 F" ]#移除套件,在這邊會考慮到相依性的問題,可以用yum deplist 找出所有相依套件,再手動一一移除不要的套件,跳過要保留的套件,如公用套件(升級套件可能會用到) 9 T D3 u: y$ E5 d0 g
& r% ^; n2 {, e+ s- ~例如:6 z# s8 ~0 X% E# `* c4 ^1 E
yum deplist httpd | grep -v httpd | grep provider | awk '{print $2}' | sort -u9 u7 x2 v0 m v9 `7 N; H' X% n
remove後可接要移除套件名稱,如yum remove httpd。若要把相關套件也一起移除的話可在最後加上「*」。如yum remove httpd*
; X% X3 C; ^. n8 e7 `' N
$ X5 c2 |7 z, T" fyum clean9 Q& K8 w4 z! {$ k
#清除安裝下載時的暫存套件原始檔,大多是存放在/var/cache/yum,通常會下yum clean packages或是yum clean all,一次全刪除。
4 w% R3 ^8 Y9 o* V$ X8 G; [
" a! C* L3 L6 H2 c# u: G8 [1.2清暫存9 W3 {6 g/ h' n( N8 B2 i
yum clean
- {9 p- A& S7 V$ q( [& L3 x#清除安裝下載時的暫套件原始檔,大多是存放在/var/cache/yum" E! z1 Q6 f! B c f: T# u
5 q6 _+ u' V8 p. S& X2 }% `yum clean packages
0 D8 k5 D x$ x. d0 s6 ]4 {7 }& d/ b#用來清除暫存(/var/cache/yum)目錄下的套件
% ?$ e+ n6 c1 i( D, w, p4 G! G# Q) S2 Z3 T9 A" n
yum clean headers* c5 k) b5 |/ }3 u6 p
#用來清除暫存(/var/cache/yum)目錄下的 headers7 ]6 n/ l1 J0 \
. Z- A& `, _' K8 z8 Qyum clean oldheaders. g: n2 F$ ` F% G
#用來清除暫存(/var/cache/yum)目錄下的 oldheaders * j4 \8 K g- ^! k I8 v
: j4 U% k; |. d+ @! l7 n, x# L
yum clearn all
1 ]8 A# P. o8 @' U5 ]: W#直接把所有的暫存都一次清除。+ ~1 T7 R5 K) f3 Z9 B* W# ]7 C
- R& u G4 U: }1.3列清單
- l- C) ]7 e$ A- B6 U) Uyum list
6 M0 T. o5 F! K8 q# @6 q) q p0 m#列出所有Repository庫的套件,若在list後面接套件名稱,則可單獨列出該套件。
+ |: l" R+ T6 t% R6 B. ]% M1 Z A& M1 P3 Z9 h
yum list updates. d5 O2 j# y7 r O) U/ \
#列出所有可以更新的套件8 L& { g( k3 }- F7 D+ q: ?/ R& X
% n' Q7 p% T: T/ \* q% lyum list installed; A/ }" n# `/ D3 ?9 h& h
#列出所有已經安裝的套件
" Y' E. N1 x* l$ c
) y4 ^# a$ j' \& A- v; e3 Wyum list extra0 ~3 l3 U4 K6 B/ B# o: E' G0 A2 d
#列出所有已安裝但不在 yum Repository庫 內的套件
/ a# _% u$ b3 c' A$ n' ?/ m# l
3 h" `) S% y# ^8 g9 u5 j1.4列出套件的相關資訊
: R! B/ H9 u* t" cyum info4 m8 @7 B' E0 h$ D
#列出所有套件的相關資訊,若在info後接上套件名稱,則可單獨列出該套件相關資訊。& K$ W& k) m0 q; e
如yum info httpd 或yum info httpd*,差別在於有加「*」則會把以httpd開頭的都列出來% l# H8 [. ~! \$ g L: u
8 ]* I ~- I; L6 A' n8 m/ s# U
yum info updates
$ |) T4 X0 {. N- T% c#列出所有可以更新的套件資訊 G. V: r) O. P" l" v6 J I
% K+ e0 U! n7 `2 B- dyum info installed
% r" A# t% f0 G3 h s8 t( X; C#列出所有已安裝的套件資訊. T2 ^. v2 I% H
0 G5 G) W2 X: n+ d( S- w. R8 Lyum info extras% @/ E0 D. i2 Q$ Q8 z
#列出所有已安裝但不在 Yum Repository庫 內的套件資訊3 f* M( I# |# i2 }: B
# f. P5 i6 E4 `9 l! W' ?. h3 D) D! E2 g# P+ x" A4 Z* K W& a% m
1.5搜尋功能/ T5 b7 \/ ` J# F3 a6 l. m# R
yum search6 Q: C2 C0 v# {$ I& U
#搜尋所有相關的套件,如yum search httpd,在從中找到所需要的套件。類似關鍵字的用途
( p- Y8 A' F/ E1 y6 ^' u
/ n8 o! u# [$ f* @4 ]. C8 Q四、升級套件但不動kernel
7 V# A! [3 }' S5 x! }如果想要用yum來升級套件,但又不想動到kernel的話。請參考下面做法
+ `( `# T8 K" y[root@localhost ~]# vim /etc/yum.conf
- }, U/ f8 [: u# R#在[main]當中加入下面字串2 F: S; o( X/ M4 n: T
exclude=kernel kernel-source# Y& u5 {. z8 f% U5 p) E( P1 d2 \
% |* F9 g0 g5 o V
雖然說yum的用法很多,但是一般常用的大概就是安裝、更新和移除。剩下的等有用到才查看就可以了。* E+ ~% r! m, k
* B' B) m8 R& ]7 B5 x% V F# V! y7 J
4 c* K" [6 M+ q. o! y' \有關yum常見的問題可以參考官網的解答0 [- b) Z6 S- u
http://yum.baseurl.org/wiki/Faq" R0 u2 K, f- j/ `2 W
; Y( }2 F' ]9 Q$ f: K0 m8 u% @
: R; f$ J) b6 t2 u% _註: 此篇參考於 http://ithelp.ithome.com.tw/question/100773134 S$ v# }% ?& O3 t
& j- e: }3 V1 b# G8 g* x
* |" K2 W" t& F1 N, O( H, j
$ u& J0 Q; \" ?$ t
' A9 p6 h, }4 \* H6 [3 p
& J- ~. a4 M" X2 n" j& M2 y6 @4 \+ h$ M/ Z4 c0 K
5 z. O8 } Z" y: Y: o8 G& B: s& C: c4 i; ]! ~/ P0 y, H2 F# e
|
|
|