|
|
tid=21377&一、yum移除與安裝
7 v9 b5 @0 N$ z+ m0 B1 m G1.查詢是否有安裝yum
2 d0 ~0 ?- s3 ~, d0 t: O! r& k0 B: f
- [root@localhost ~]# rpm -qa | grep yum
9 d! s( M( o+ | - yum-metadata-parser-1.1.2-3.el5.centos
- ~' ]8 u9 a0 o3 _: l - yum-3.2.22-33.el5.centos: z" B! J8 t' T! N3 s2 L
- yum-fastestmirror-1.1.16-14.el5.centos.1
$ Q4 a+ Z- b) j+ b - yum-updatesd-0.9-2.el5
複製代碼
8 t& _9 |- t* }% V6 l, P2.移除yum (移除的方式有兩種擇一即可)
. U# i f! g# {2.1用yum的方式移除; a+ W' S& {/ l' l; K
- [root@localhost ~]# yum remove yum*
複製代碼
2 b/ @! N$ p! U$ T# s* c, y2.2用rpm -e的方式移除
# K$ H: f, H$ M: F#先查看有那些yum檔案要移除的
/ o( X9 o% t" F" U/ v) m- [root@localhost ~]# rpm -qa | grep yum8 w# k2 n9 ]) @3 ?/ ]3 i# [
- yum-metadata-parser-1.1.2-3.el5.centos$ t% [( j8 X6 W/ o8 R# Q- O' T- g
- yum-3.2.22-33.el5.centos
0 e2 H" Q0 g" I& l - yum-fastestmirror-1.1.16-14.el5.centos.1
4 h! W7 p/ h& d1 E - yum-updatesd-0.9-2.el5
複製代碼
) D3 b% D5 p# W( y6 e2 d3 i4 e t#移除yum如果要忽略相依性的問題,可使用 --nodeps 選項 W- ~/ j2 P4 H, L0 y$ _3 O) V. K1 ?
- [root@localhost ~]# rpm -e yum-metadata-parser-1.1.2-3.el5.centos( S9 _- S# {/ B% u$ H- b
- [root@localhost ~]# rpm -e yum-3.2.22-33.el5.centos
( w+ v' e" n% x/ L - [root@localhost ~]# rpm -e yum-fastestmirror-1.1.16-14.el5.centos.1
* k% b% |( m- Z5 s& i8 k5 F - [root@localhost ~]# rpm -e yum-updatesd-0.9-2.el5
複製代碼 1 J! n, v" `* P$ H, d
二、安裝yum
1 s! S* T2 c' S- d' x1.安裝源
: K+ @5 z$ ]) k% z# [在安裝源的部份可以到以下的網址查看
" H5 ^- N$ N0 \& E- P2 S6 Y( z3 W請依自行的需要找到安裝源
" `2 J2 u7 x" ]% x- X8 \i386 : 4 @. J6 X! r% L7 L% s
http://mirrors.sohu.com/centos/5/os/i386/CentOS/* v. O( }2 k& |
http://mirror.centos.org/centos-5/5/os/i386/CentOS/ R/ k: L R' b5 \9 B0 [$ i
e6 Y# x- H& s R3 U& p) S" {! u9 k; A
x86_64 : $ L2 a6 i( G/ w" k! d' |" k: H+ M0 M
http://mirrors.sohu.com/centos/5/os/x86_64/CentOS/
6 S S& e9 ~% Q# [. G6 lhttp://mirror.centos.org/centos-5/5/os/x86_64/CentOS/
: F. o% L6 o4 g/ ^
( r! C! h- N* s( d- }- G- _
8 m( M$ L- y5 P在yum的部份主要是使用到以下4個檔
8 {4 C) l8 R8 W$ g5 @9 tyum-metadata-parser-1.1.2-3.el5.centos.i386.rpm
2 I: L& P& @. e( U& Y- H/ Gyum-fastestmirror-1.1.16-16.el5.centos.noarch.rpm
4 t- s: I/ y* r \: \yum-3.2.22-37.el5.centos.noarch.rpm
; I2 O) h) R, dyum-updatesd-0.9-2.el5.noarch.rpm, A) D: M0 K& m# V
* X( v0 a1 {4 P7 K% E! P
2安裝yum
/ v/ T4 X$ {) g d4 N% ^5 x5 x( Vi386, a; v' W9 j; |8 x* r! O
- [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
( h# X- H+ J) g/ D8 a - [root@localhost ~]# rpm -qa |grep yum
0 a6 z& K( Q4 X% l, m2 \7 Q+ ?, c t - yum-updatesd-0.9-2.el5
0 e' h, L$ g/ ]% t4 } - yum-metadata-parser-1.1.2-3.el5.centos1 Z% i2 q/ |; R+ j* u# `2 e* C, ?
- yum-fastestmirror-1.1.16-16.el5.centos
8 k2 o6 `: ]9 V+ S( k( i: | y - yum-3.2.22-37.el5.centos
複製代碼
3 I7 b9 Q6 b9 q9 p, ^; {. J7 Ex86_64
9 K- h/ D: q' N- [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 7 H) U3 A+ f" N. |2 U2 q& ]5 U
- [root@localhost ~]# rpm -qa |grep yum
5 D; p V- r+ L' M - yum-updatesd-0.9-2.el5) [3 t) ^2 i& [" G
- yum-metadata-parser-1.1.2-3.el5.centos
; f2 b5 |; y6 W4 c) h - yum-fastestmirror-1.1.16-16.el5.centos7 c3 U0 k" L, V3 ] L3 V
- yum-3.2.22-37.el5.centos
複製代碼
5 ~4 U6 J2 u R$ L" W2.2更新所有已安裝的套件(依個人需求看是否更新)
' G0 q7 Y+ ^6 D) d; M- d+ i- [root@localhost ~]# yum -y update
複製代碼
S/ x+ |6 ^; l! f# ?; }. g. \三、yum指令說明1 c. I0 `5 Q9 j5 V/ t4 C P0 k( l
在使用yum時,會將下載的東西,存放在/var/cache/yum目錄下。
- Q$ b/ R; l+ a1 ~1 y1.yum更新2 d: h' ^0 u( }* U6 [# W
yum check-update * N; o: p% |8 I! }6 z j
#檢查能更新的套件有那些
l' c; D6 n) t5 R( E: w
# c" l; |: p, }% }/ Dyum update : V, u7 v. R; a: V! k
#更新所有已安裝的套件,若在update後面接上套件名稱的話可針對該套件更新: z x# s! e+ c/ d4 U
如yum update httpd; f# J1 Z& a& f! P, K/ ?2 R0 ]% ^
/ C- r5 r& Z* Pyum upgrade
; u# t2 f& Y( Q0 R; r* f#功能跟update差不多,差別在於yum upgrade會連同一些過舊即將洮汰的套件也一起更新,大多使用在版本升級。! S# b [, g A* N+ V2 ^( f
2 ~; O c. z% ]* j7 s
1.1安裝.移除套件! C/ p1 q3 K4 l8 { r m b% ^
yum install ) X( p9 D2 @9 p9 a7 w* E( p
#安裝套件,install後面接要安裝的套件名稱,如yum install httpd。若要把所有相關的一起安裝的話可在最後加上「*」。如yum install httpd*2 d2 f7 P5 b7 ]
. b. p0 {: n; a: ]/ U) Syum --enablerepo=(Repository) install 安裝時只使用某個套件庫,如果多個,之間可以逗號分開,先查看/etc/yum.repos.d/有那些.repo
6 @$ h1 l+ Z) Z( X0 P6 O+ {% q如yum --enablerepo remi,remi-php55 install php
" `0 Q7 ?) m9 G
" \" @7 r: ?+ `5 Qyum reinstall重新安裝套件# n# Y: C' Q+ |/ p! d# V( F
8 Q) g; J' K$ J4 [
yum remove" F. {# R* W _ ^7 Z" ?: Z6 Z1 s
#移除套件,在這邊會考慮到相依性的問題,可以用yum deplist 找出所有相依套件,再手動一一移除不要的套件,跳過要保留的套件,如公用套件(升級套件可能會用到)
/ q4 h+ X/ \' s: N# Q/ R
( M2 w; Q1 D5 R例如:
6 y% q$ W' B5 o& z; a0 y, iyum deplist httpd | grep -v httpd | grep provider | awk '{print $2}' | sort -u" l) F1 s6 R6 J: K( c7 c
remove後可接要移除套件名稱,如yum remove httpd。若要把相關套件也一起移除的話可在最後加上「*」。如yum remove httpd*# k# K7 F) ]% t3 @% c; M0 w, s
( G7 r: }3 E- m, F! P$ C" J+ s) cyum clean
1 P+ c, g1 E C/ i#清除安裝下載時的暫存套件原始檔,大多是存放在/var/cache/yum,通常會下yum clean packages或是yum clean all,一次全刪除。
0 r& c) Z# i/ f4 ~# w1 q& Z. ?8 a& ]" c8 B `6 R+ @! H
1.2清暫存) R8 h* u6 N/ w) T7 e
yum clean4 T( i5 v7 l9 r5 Y0 q5 y6 I, h* M
#清除安裝下載時的暫套件原始檔,大多是存放在/var/cache/yum
$ n; ?3 e# x' E% V% _6 b. k& {- ]0 [/ q
- v: A: a s" ]0 \ m1 Iyum clean packages( I. v1 [; x* g* y4 P @
#用來清除暫存(/var/cache/yum)目錄下的套件! \, J3 G. d2 B' N4 T: c
g1 U# q; _ A/ Y* M; q' N% yyum clean headers# Q8 W9 v* R+ @
#用來清除暫存(/var/cache/yum)目錄下的 headers
/ v4 G# L) {; i* S( ^ N
$ u* c$ r, ^, S- W' U' b, Jyum clean oldheaders) G$ u2 x5 P+ g, j2 {3 Y
#用來清除暫存(/var/cache/yum)目錄下的 oldheaders & C$ _1 X: k9 l$ T/ F
1 X6 P u$ ~; `* S3 ~5 k; B2 G! d
yum clearn all7 f% n% s1 j2 o( U$ G. h8 c) g. P
#直接把所有的暫存都一次清除。
' J8 o$ K) J! r2 T* h; g, W
( d- h8 L0 ? h% u) z; C1 y: w1.3列清單
% K( e/ L. ?" l: Z( myum list
8 G; j4 }; A w# ~; k" P3 l#列出所有Repository庫的套件,若在list後面接套件名稱,則可單獨列出該套件。$ Q+ Q' o7 V: N
9 X+ ~, }: a% i" nyum list updates
2 H) r4 D) J! d. P; A' F#列出所有可以更新的套件- r" b! H. u, b
2 ]! }4 Y4 b; _$ [9 oyum list installed. N" w/ J5 x, U# o( k& s
#列出所有已經安裝的套件
4 \$ d4 @- p8 j' k5 ^, l8 f- T8 Z R/ I! u0 X4 V) [
yum list extra
# E [9 Y3 V2 _, T#列出所有已安裝但不在 yum Repository庫 內的套件& J( ^% q1 B- f3 J! \
0 K- q$ ], L* e: S
1.4列出套件的相關資訊
4 _1 u; R* V# m6 Pyum info
; j5 S/ ^2 V1 b% R# S6 l/ P3 j V#列出所有套件的相關資訊,若在info後接上套件名稱,則可單獨列出該套件相關資訊。3 F6 h( \" X& s2 Y& @; [4 o
如yum info httpd 或yum info httpd*,差別在於有加「*」則會把以httpd開頭的都列出來
# e) ^# B' U9 Q. h$ J0 o: f; I B4 u, {4 |% p6 N) U
yum info updates u# D% ]% o9 I' E' O
#列出所有可以更新的套件資訊- q/ i4 m8 W# O3 V
/ p; v. g' X# v6 v
yum info installed
1 | o- D/ W1 t5 ?4 m3 b2 J#列出所有已安裝的套件資訊+ X. _& @ F# w T* v
! V5 i- x6 n2 B* _1 w2 Q. o
yum info extras% d! U1 c# @7 f* n8 V! G1 _- a
#列出所有已安裝但不在 Yum Repository庫 內的套件資訊. p+ y6 L2 |8 C; W, k
& j/ e7 N) H! Q: ~
* V; k$ w* M. L+ p' @, P7 z. m1.5搜尋功能
4 t/ q$ ^6 X' j2 Vyum search
" c7 M( d9 I; j9 F: U) X% ~#搜尋所有相關的套件,如yum search httpd,在從中找到所需要的套件。類似關鍵字的用途* {7 Q) \* }7 j9 y* n
, f7 B. P2 z) R( W _+ V& S四、升級套件但不動kernel2 n4 Z2 z; I/ G3 n/ y
如果想要用yum來升級套件,但又不想動到kernel的話。請參考下面做法
& ?, I, O2 x( \/ N3 F/ Z0 e' ][root@localhost ~]# vim /etc/yum.conf7 {5 m+ o. C5 Y) p
#在[main]當中加入下面字串
9 u7 O$ x7 A+ |! m0 rexclude=kernel kernel-source( R \- b9 \4 H, y* o& v# f
* l( i3 A$ S- ~" d l: v+ ?- U雖然說yum的用法很多,但是一般常用的大概就是安裝、更新和移除。剩下的等有用到才查看就可以了。
9 j5 _2 a5 ~7 f) `+ H$ f5 b* Q! p5 p
$ n- C' b& J+ y" S( B/ z有關yum常見的問題可以參考官網的解答( [+ r, n% x2 H- b/ Y
http://yum.baseurl.org/wiki/Faq( O. V J9 v* R: d# Q. C" h
2 O* v- \% a/ O* Q
4 z7 u7 ?( x+ ~. y" K# U6 U! O: a註: 此篇參考於 http://ithelp.ithome.com.tw/question/10077313% O: F6 N5 M4 e; {
6 h) s- |7 v0 v- h/ v0 r6 w3 a2 w! E
* h1 @+ V3 a; h! @+ E2 \4 G; T- Q$ e$ M
5 w2 A& ?2 h4 Q" l/ J" ]4 H5 C* M5 T, a: m, \* _, Y: G+ q- P+ I
_& a1 h3 g* u3 ?
& L% Q% s8 r, ^6 h
|
|