|
|
一、yum移除與安裝 ! x M l3 K* r
1.查詢是否有安裝yum
" d6 Q5 @2 d( \
: {' O) c: y* |0 K5 l3 U" b! T; q) i- [root@localhost ~]# rpm -qa | grep yum& W6 J3 R, W# K
- yum-metadata-parser-1.1.2-3.el5.centos
/ F6 V% N0 T+ ?; z' ~) Q. S4 H - yum-3.2.22-33.el5.centos
$ P+ ^- P: O2 P: J) F0 ]% \ - yum-fastestmirror-1.1.16-14.el5.centos.1
& E9 I) q# U4 x2 S5 u. A3 P9 T - yum-updatesd-0.9-2.el5
複製代碼 $ p) N5 L \+ P. F- H
2.移除yum (移除的方式有兩種擇一即可) D$ f. } F% U$ K: d% E; f+ N
2.1用yum的方式移除
" k7 i8 x& g& p8 {- [root@localhost ~]# yum remove yum*
複製代碼
9 o7 ~2 c& ~. r% G5 M* o' n2.2用rpm -e的方式移除
# X3 N; g$ N6 q2 g }7 u0 s#先查看有那些yum檔案要移除的
I' C3 N, C6 A0 Z- Q" X: Z& Z- [root@localhost ~]# rpm -qa | grep yum
5 a$ _7 f+ u, E+ D/ _. O; M - yum-metadata-parser-1.1.2-3.el5.centos
- m* }/ |( T0 L- V2 K - yum-3.2.22-33.el5.centos$ }5 u: o: c% M( [$ x, s) O
- yum-fastestmirror-1.1.16-14.el5.centos.1
# @# ^9 z: U& n5 b - yum-updatesd-0.9-2.el5
複製代碼
/ O5 _& q( v E6 O#移除yum如果要忽略相依性的問題,可使用 --nodeps 選項" z2 U/ ~( z' @% L+ C$ }" U8 R
- [root@localhost ~]# rpm -e yum-metadata-parser-1.1.2-3.el5.centos
/ f# _( ~! w* P7 }/ A @1 }, s2 l - [root@localhost ~]# rpm -e yum-3.2.22-33.el5.centos% K( x* J* K) A& a
- [root@localhost ~]# rpm -e yum-fastestmirror-1.1.16-14.el5.centos.1
2 g4 Y2 F5 C) K% z' Q) s4 v - [root@localhost ~]# rpm -e yum-updatesd-0.9-2.el5
複製代碼 ! r+ v, s" N( q
二、安裝yum6 P2 k0 @0 q" l+ M! f0 I2 \
1.安裝源
7 C. w I& y1 Q在安裝源的部份可以到以下的網址查看% [9 y [% q* e$ E/ H) u( P
請依自行的需要找到安裝源& X2 l2 L% q8 Z) ^- M
i386 :
" e1 t2 Y5 y! t( \, Lhttp://mirrors.sohu.com/centos/5/os/i386/CentOS// n- u" E. M1 B5 s+ T
http://mirror.centos.org/centos-5/5/os/i386/CentOS/
3 b8 u9 E q6 e+ A: ]6 Q
- l& C; z" \( g. `# u/ B. c% vx86_64 :
& {$ z. U- z. J4 Z& K) h9 hhttp://mirrors.sohu.com/centos/5/os/x86_64/CentOS/
+ z% n" s- A% R' chttp://mirror.centos.org/centos-5/5/os/x86_64/CentOS/7 ~4 Y G6 j* H& P9 B* q3 B" i4 A* @
7 o& }8 P) k9 \& U. B4 E& j" M) i4 ]; ^
在yum的部份主要是使用到以下4個檔5 B& z, t8 x/ s
yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm
$ j/ f# T8 @/ J' `/ h; f/ D6 A: r" Jyum-fastestmirror-1.1.16-16.el5.centos.noarch.rpm
T" E+ m c3 @* W' l/ Vyum-3.2.22-37.el5.centos.noarch.rpm
9 J7 @3 K( Q8 x) u" ]yum-updatesd-0.9-2.el5.noarch.rpm
+ I9 Z' I/ E+ U$ H
: |, I( ?+ P5 x1 R. D2安裝yum7 I/ J0 o7 v) C& k8 U5 m
i386
3 g; i4 f2 E* | O& `2 j- [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
0 X# ?( C) E! B# y/ ? - [root@localhost ~]# rpm -qa |grep yum
- u8 |3 d2 M3 F - yum-updatesd-0.9-2.el5: c0 g/ U; `$ [/ k
- yum-metadata-parser-1.1.2-3.el5.centos
6 |7 b+ C9 O1 y: \ - yum-fastestmirror-1.1.16-16.el5.centos
& [* O! ]0 H0 a) K2 x4 `5 H% g& m - yum-3.2.22-37.el5.centos
複製代碼 7 O9 A4 F- v( K" _/ ~1 Z1 n
x86_64/ `9 U Y' P7 k0 {" X. G- I; c
- [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
- ^3 @- g: A1 u& v/ W( a2 h$ l - [root@localhost ~]# rpm -qa |grep yum% e+ |2 Z7 {+ M& m1 i# } A- s& w
- yum-updatesd-0.9-2.el5: L* C5 W; T; |4 U
- yum-metadata-parser-1.1.2-3.el5.centos
# z+ D; B! s ~. @9 O - yum-fastestmirror-1.1.16-16.el5.centos
+ N Y2 i G( ]! @" b& h2 M - yum-3.2.22-37.el5.centos
複製代碼 ) R n1 F7 O. o. \9 S: B0 \/ R. W% N6 G
2.2更新所有已安裝的套件(依個人需求看是否更新)
" [- f+ Z9 Y9 N. s% e- [root@localhost ~]# yum -y update
複製代碼
# i, n4 d6 F( f. F9 f1 h' Q三、yum指令說明% l9 q5 ]3 Q2 ?' F
在使用yum時,會將下載的東西,存放在/var/cache/yum目錄下。
" O1 B; N& e/ L2 N+ L3 L1.yum更新5 B$ X6 f3 I& Z$ @1 c# v- s- { L0 b
yum check-update 7 Q l% z* W: t+ G
#檢查能更新的套件有那些
! M; ^- A# U n- b9 N9 I/ h4 c) p$ L
yum update ' z* A2 u. l7 n, P) E: l. @
#更新所有已安裝的套件,若在update後面接上套件名稱的話可針對該套件更新, m" N3 R! u" G" N
如yum update httpd* b( d( N, z& ?/ C1 j0 A# l
" j$ F" B! f( `* K% B( Q1 @5 L( uyum upgrade; Y/ A( k$ s. w1 `
#功能跟update差不多,差別在於yum upgrade會連同一些過舊即將洮汰的套件也一起更新,大多使用在版本升級。 t0 A' V/ D- T
4 e0 A; l7 t- V
1.1安裝.移除套件
) K$ S. ~1 k1 B" A, V) @, ]yum install
$ q7 v# D7 }% S8 [#安裝套件,install後面接要安裝的套件名稱,如yum install httpd。若要把所有相關的一起安裝的話可在最後加上「*」。如yum install httpd*
8 \/ l) B: r' f9 A
* e0 l6 m( A l# Gyum --enablerepo=(Repository) install 安裝時只使用某個套件庫,如果多個,之間可以逗號分開,先查看/etc/yum.repos.d/有那些.repo
: k: u& r! w, {如yum --enablerepo remi,remi-php55 install php) S5 v+ ^/ q( Y9 j. }
# p W, J% w3 L9 Y6 a/ s
yum reinstall重新安裝套件# J5 H- e6 t- }. |- H; H
7 W- C$ l# r2 S% q# O5 R- ?yum remove2 L# b$ r5 D2 G& g$ \
#移除套件,在這邊會考慮到相依性的問題,可以用yum deplist 找出所有相依套件,再手動一一移除不要的套件,跳過要保留的套件,如公用套件(升級套件可能會用到)
( R7 C" R# h6 S! X; c+ K" G
5 Q/ k* X2 g7 O( Q+ }例如:
5 K) l! h+ v* R+ R- F @0 Xyum deplist httpd | grep -v httpd | grep provider | awk '{print $2}' | sort -u
* I% R3 n T* w' ~remove後可接要移除套件名稱,如yum remove httpd。若要把相關套件也一起移除的話可在最後加上「*」。如yum remove httpd*2 g/ M$ o! \2 E( f6 ?
. F$ H, S5 y9 } h$ m, G) V
yum clean$ J/ n x1 K: r, }+ R" W0 j
#清除安裝下載時的暫存套件原始檔,大多是存放在/var/cache/yum,通常會下yum clean packages或是yum clean all,一次全刪除。
: h# Z& i* W0 s& E1 N! h% S* h/ k. g- k( t* G% m
1.2清暫存. M& z( t! L+ r$ P) O9 y
yum clean
; W! w5 H0 n) f6 _$ `2 N# ]- M1 H#清除安裝下載時的暫套件原始檔,大多是存放在/var/cache/yum
! d' n/ u$ `. {: a6 ^3 _7 n& a. b C* w! H J I& F
yum clean packages+ R2 a5 F2 ]% [' a- [
#用來清除暫存(/var/cache/yum)目錄下的套件
4 n0 o d) e; |6 w% `% A5 k- Q% Q) }# \/ G$ h! J, u: f
yum clean headers. S8 p8 _# J' [: k0 ~0 M. v, l
#用來清除暫存(/var/cache/yum)目錄下的 headers
. D- N3 R: m9 F/ m M2 n8 t& i. n9 A# E! D, o# N! {
yum clean oldheaders. ]- P: p% y! l% C: I& q
#用來清除暫存(/var/cache/yum)目錄下的 oldheaders / h/ r! m( P3 w/ m# t2 A# _
! U; o" R$ U5 a- @# I' n
yum clearn all) z; F: O T) q3 p m" c" M
#直接把所有的暫存都一次清除。& a& q' ~" Z: ?+ X! n0 _+ d i9 O& r
: q; n! b8 H7 o" Y) o* Y) g7 {5 L
1.3列清單
" z3 N9 \5 w# f5 |9 e( M; E0 Jyum list
- V& I& g: H9 @% Z( l+ T#列出所有Repository庫的套件,若在list後面接套件名稱,則可單獨列出該套件。
, @( ^/ H) I9 C% y% Q7 E$ |: Y2 v5 E6 o
yum list updates! l D7 [; W y0 Z
#列出所有可以更新的套件
& q. e6 e7 a8 C: z$ O5 x1 w1 ]( i
E1 n M. y7 J1 R3 V1 F2 pyum list installed) h* U& y! }, [% S9 |1 l0 E
#列出所有已經安裝的套件
5 {. u" e y, s3 t9 Z" @& K, `9 b$ G& z* p
yum list extra
9 p& X9 }6 G7 C8 Z3 w4 X$ [#列出所有已安裝但不在 yum Repository庫 內的套件
8 H; s2 u% b& y4 S& L0 |, {$ w. d/ U+ n( |
1.4列出套件的相關資訊
L7 G9 Q/ |& C6 o2 ?3 C6 L/ yyum info: x7 k) |+ C& @) d
#列出所有套件的相關資訊,若在info後接上套件名稱,則可單獨列出該套件相關資訊。5 d" S% a& C9 m9 n
如yum info httpd 或yum info httpd*,差別在於有加「*」則會把以httpd開頭的都列出來
# x/ e: \7 B$ V3 \* H! w. Y W( J8 a# r( @! e$ K
yum info updates
; `3 V* H8 L2 Q) b/ q5 B7 x5 B#列出所有可以更新的套件資訊' ~& N! v6 ^9 r0 v
7 o4 U/ Q( @* T, L5 gyum info installed# t5 R2 c+ }- p7 [* M$ a2 \
#列出所有已安裝的套件資訊
+ o6 Y3 l+ F+ c* k* t8 j O5 @3 r3 [) ~3 }
yum info extras
( M+ `9 E7 r7 I& R9 I( P3 z#列出所有已安裝但不在 Yum Repository庫 內的套件資訊
' K# B8 W, h2 n2 Q& l8 b' q: w4 F$ J2 h
' R S4 [1 U9 C. h
1.5搜尋功能8 e5 X' Y* Q! G" c
yum search% p& m/ u% f1 a, r1 ^
#搜尋所有相關的套件,如yum search httpd,在從中找到所需要的套件。類似關鍵字的用途 u8 E! }' U! a3 v& U( R, z2 A
6 p3 o. H+ Q. u四、升級套件但不動kernel
* C( u( _+ u0 H, a如果想要用yum來升級套件,但又不想動到kernel的話。請參考下面做法
2 j1 [, O6 S3 {& j% O/ `[root@localhost ~]# vim /etc/yum.conf
6 V2 @6 A9 t) B1 Z/ d8 ^+ }( b& h#在[main]當中加入下面字串
9 j1 t. j% Z% w( @8 fexclude=kernel kernel-source
; Z/ J, W7 x2 Z6 k& u7 `$ L) ]
" ]4 \5 [& @9 M) c/ ]雖然說yum的用法很多,但是一般常用的大概就是安裝、更新和移除。剩下的等有用到才查看就可以了。# B d2 T) l; h+ {8 e$ s- h
, n& b3 |' [7 q ^) x
' `& e7 q/ { D9 D1 j0 M _3 n
有關yum常見的問題可以參考官網的解答 L* h4 ]2 _) J6 {8 A7 d" I
http://yum.baseurl.org/wiki/Faq& I+ K2 D/ g4 c) R+ ?0 O8 J
/ u: N, ~( Z; _# L3 ~3 _% l& x) a3 x! I& X4 _
註: 此篇參考於 http://ithelp.ithome.com.tw/question/10077313
9 o8 }# t8 Y' r# C& g& e% J0 x. \4 M T$ a! u
! J6 n/ p+ v) r& J
6 z- ]7 V1 t# `1 H& E# h" {4 `; e4 A% Q
7 k6 i1 _: }4 |- h# O1 b7 Q- ]" x- W# H: R
# p: J1 L3 `, ^8 b$ h2 I
9 [" B1 E6 m: Q |
|
|