Red Hat包管理器(即RPM:Red Hat Package Manager)是一种打包系统,用于软件的发布和安装。其他Linux发布商,如SuSE等也使用RPM。
d-cK`pSB SfHs,y6 安装与升级是管理RPM包的根本。安装RPM包时,就是在系统中增加新软件。升级RPM包时,就是在相关软件中更新最新的特性。
T(n<@Ac]V x+mfQcSD& 一个包就是一个文件,其中包含了安装一个应用所需的多个文件。尽管包中包含了安装时所需的文件,但是应用程序为了能运行可能还需要其他文件的存在或其他未包含包的存在,如特定的库。这样的需求就是包的依赖性(dependency)。如,内核源代码RPM包要有GNU C语言编译器。由于内核源代码具有依赖性,因此要先安装GNU C语言编译器,再安装内核源代码。
wF@mHv .bwKG`F 任何用户都可以列出或查询包。但是,安装,升级或删除包通常需要超级用户的特权。这是因为包通常安装在系统级目录下,该目录只对root(超级用户)是可写的。有时,也可以指定一个目录。把把安装在你的主目录或者你拥有写权限的目录下。
Hh|a(Zq, --------------------------------------------------------------------------------
=CCxY7)M+. ue YBD]3' >'qkW$-95 以下简要介绍RPM包的安装,删除和查询
Dg:2*m_!j{ 4 nIs+ RPM包的建立,安装和查询是用rpm命令进行的。RPM包的名字通常以.rpm扩展名结束。rpm有一组模式,每种模式都有自己的选项。
l}#z#L2,` Hcts^zm2u rpm命令的格式为:
T~*L[*F0 KINKq`Sx rpm [options] [packages]
GpW5)a o*d+W7l 第一个选项指定rpm模式(安装,查询,更新),其他选项影响模式。
."8bW^: uU7s4oJ| 对包的选项描述中,有时把包指定为package-name,而有时指定为package-file。包的名字是程序名或应用名,如lynx。包文件是RPM文件的名字,如lynx-2.8.5-18.i386.rpm。
Y<A593 --------------------------------------------------------------------------------
h3 Bs |fQl0hL G:n,u$2a< RPM为指定常用的选项提供了配置文件。系统配置文件通常是/etc/rpmrc,而用户可以建立他们自己的$HOME/.rpmrc文件。你可以用--showrc选项为在rpmrc文件中设置的所有选项显示RPM会使用的值。
/^BaQeH?R qQL]3qP 以下为rpm --showrc命令显示的节选:
c(]NpH
in N[(ovr 示例:
D$
>gAv hH=H/L_Z 此为部分显示结果
a0s6G3J+9 [root@localhost ~]# rpm --showrc
Hl@)j ARCHITECTURE AND OS:
U?%1:-#F build arch : i386
K
>-)O=$s compatible build archs: athlon i686 i586 i486 i386 noarch
M- f)\`I build os : Linux
0Q2P"1>KT/ compatible build os's : linux
09_L^'` install arch : athlon
|'C{nTX install os : Linux
|.]:#)^X? compatible archs : athlon i686 i586 i486 i386 noarch
d"7l<y5 compatible os's : linux
]#UyYgPk RPMRC VALUES:
'dnTu@mUT macrofiles : /usr/lib/rpm/macros:/usr/lib/rpm/i386-linux/macros:/usr/lib/rpm/redhat/macros:/etc/rpm/macros.*:/etc/rpm/macros:/etc/rpm/i386-linux/macros:~/.rpmmacros
*1Q~/<W optflags : %{__global_cflags} -m32 -march=athlon
dHE\+{K%- Features supported by rpmlib:
LuLnmnmB rpmlib(VersionedDependencies) = 3.0.3-1
c[/h7!/aH PreReq:, Provides:, and Obsoletes: dependencies support versions.
k8]uy2R6} rpmlib(CompressedFileNames) = 3.0.4-1
";I|\ T file name(s) stored as (dirName,baseName,dirIndex) tuple, not as path.
GMY"*J<E rpmlib(PayloadIsBzip2) = 3.0.5-1
~"oxytJ package payload can be compressed using bzip2.
71nI`.Z --------------------------------------------------------------------------------
W6b5elH@ 4h|48</ ]3+xJz~= rpm命令包括FTP和HTTP客户端,因此可以指定ftp://或
http://URL来通过Internet安装或查询一个包。只要这里给出的命令中指定了package-file,你就可以使用FTP或HTTP URL。
5<?O S &B ciq'fy 示例:
G=[=[o\ T8ga)BA [root@localhost ~]# rpm -ivh
ftp://fr.rpmfind.net/linux/fedor ... s/Fedora/RPMS/lynx-*
ql|ksios Retrieving
ftp://fr.rpmfind.net/linux/fedor ... x-2.8.5-18.i386.rpm
b
r"47i Preparing... ########################################### [100%]
!,f#oCL 1:lynx ########################################### [100%]
rUb`_ W@ --------------------------------------------------------------------------------
NAy3Zd} {}vB#! r9x.c7=O 以下列出一些通用选项(可以用于所有模式):
w(sD}YA) L5E|1T --dbpath path
1T{A(<:o$ 用path作为RPM数据库的路径。
LI>tN R~ ~S\Ee 2e> --ftpport prot
ERql^Yr 用port作为FTP端口。
qqm7p
,j mOLP77(o --ftpproxy host
+m> %(?=A 用host作为所有传输的代理服务器。如果你通过使用代理的防火墙系统连到FTP,就要指定该选项。
t+R8{9L- KUr}?sdz --help
R'#[}s 输出一个长的使用信息(如果运行rpm时没有选项,则给出短的使用信息)。
:r<uH6x| zi^T?<t --justdb
l9U^[;D 只更新数据库;不改变任何文件。
)PM&x qRD]Q --pipe command
Z3ucJH/)V 用管道把rpm输出到commond。
5LT{]&`9 wKjL}1.k --quiet
{=(GY@yU/ 仅显示错误信息。
rtl|zCst PMDx5-{A/t --rcfile filename
jIZpv|t) 用filename作为配置文件,而不用系统配置文件/etc/rpmrc或$HOME/.rpmrc。
07zbx6:t X[ERlw1q4Q --root dir
~*Fbs! ;, 在dir目录内执行所有操作。
/$'R!d5r ebbC`eFD --version
c,$ >u,4 输出rpm版本号。
rt\i@} A4}6hG# -vv
hFDY2Cp]D 输出调试信息。
MroJ!.9 z|VQp,ra --------------------------------------------------------------------------------
"V|1w>s p Rt=5WZ rKlu+/G 安装升级和刷新
@`qhQ xt! DS0|*Y 安装或升级一个RPM包,install命令的语法为:
<2cl1Fb &cty&(2p rpm -i [install-options] package_file
-t92! O rpm --install [install-options] package_file
])dq4\Bw =WaZy>n}7 示例:
hpftVEB
5jj<sj!S [root@localhost ~]# rpm -i lynx-2.8.5-18.i386.rpm
dtK[H+ package lynx-2.8.5-18 is already installed
pi>,>-Z [root@localhost ~]# rpm --install lynx-2.8.5-18.i386.rpm
(T1)7%Xs --------------------------------------------------------------------------------
'\I.P ,a N8`M ;&|MNN^ 为了安装一个包的新版本,同时删除现有版本,使用upgrade命令:
_Y7uM6HL\ ;~&F}!pQ rpm -U [install-options] package_file
-Y#YwBy;M rpm --upgrade [install-options] package_file
[4V{~`sF [25[c><:w" 示例:
}L.xt88 HPGMR4=ANS 先安装旧版
o%ZtE [root@localhost ~]# rpm -i lynx-2.8.5-11.i386.rpm
7J~usF>A :iWW2fY 再安装新版
PgNg1 [root@localhost ~]# rpm -U lynx-2.8.5-18.i386.rpm
&E0d{2 PZVh)6f"c 显示出新版本信息
C_SJ4Sh [root@localhost ~]# rpm -q lynx
KrcL*j&^ lynx-2.8.5-18
?a~59!u W^}fAcQKH 说明:
ZzU3j ^ -U的一个特点是如果包在系统上不存在,其作用就与-i选项一样,即安装包。
}9w?[hXW" PU0Ha 与-U的特点不一样,刷新(freshen)一个包,是指在已经安装了旧有版本时rpm才升级包。
o6JCy\Bx --------------------------------------------------------------------------------
n
H)6mOYp <cQ)*~hN L&[uE;ro 刷新的语法是:
;T!w$({V0z J{W<6AK\S rpm -F [install-options] package_file
f(Vr &X U)Cv_qe rpm --freshen [install-options] package_file
i%jti6z$Hr hn: 示例:
-YF]k}| ,>6s~' 从未安装过lynx包,使用-F选项,将无法升级。
^_6.*Mvx sEpY&6* [root@localhost ~]# rpm -F lynx-2.8.5-18.i386.rpm
Z=VAjJ;i[ [root@localhost ~]# rpm -q lynx
Igowz7 package lynx is not installed
K`|%-k+D --------------------------------------------------------------------------------
UY@^KT] 8lG@8tbW^ #r\,oXTm 安装和更新选项为:
q~*9A-MH T%{qwZc+mJ --allfiles
`Sh#>
Jp 安装或更新所有文件。
ElJM.
a 11%<bmJ]Q3 --badreloc
g_<^kg" 与--relocate一起使用,强制重新定位,即使包不是可重定位的。
vM_UF{a$= Y?cdm}:Ou --excludedocs
eko$c,&jY 不安装任何文档文件。
V)[ta`9 V6opV& --excludepath path
I[mlQmwsL. 不安装文件名以path开始的任何文件。
}m!L2iK4qk 3v~804kWB --force
JmHEYPt0 强制安装。等价于使用--replacepkgs,--replacefiles和--oldpackage。
+n]z'pijb nE_g^ -h,--hash
Ce:2Tw 当包档案被解包时打印50个散列标记。使用--version选项以进行更好的显示。
U^ bF}4m A 9I5 --ignorearch
@'go?E)f 即使二进制包用于不同的体系结果也进行安装。
99GzhX_ zcF`Z{&+ --ignoreos
6[r-8_ 即使操作系统不匹配也安装二进制包。
x+? P/Ckg Q-scL>IkCb --ignoresize
$
{Y?jJ 安装前不检查磁盘的可用空间。
tOQ2947zk dMo456L --includedocs
A .]o&S} 安装文档文件。只有在rpmrc文件中指定了excludedocs:1时,才需要这个选项。
CC?L~/gPN {s ]yP_ --nodeps
}/dGC;p" 不检查这个包是否依赖于其他包的存在。
k!9LJ%Xh AoL2Wrk]\B --noorder
P0R8
f 安装之前,不为了满足依赖关系而对包进行重新排序。
H0!W:cIS;l ;,d^=:S6@ --noscripts
F+%6?2J 不执行任何预安装或后安装脚本。
(jR7D"I Wq5 Nc --notriggers
:Z(w, 不执行任何由包安装触发的脚本。
2)_Zz~P^f IP#w --oldpackage
BZ2frG\0&I 允许升级以用旧包替换新包。
0keqtr 28/At --percent
s&>U-7fx" 当文件被解压时输出完成百分比的信息。
2[^p6s[ :`Nh}Ka0 --prefix path
Zo=w8Hr 把可重定位包的安装前缀设置为path。
O,$
?Pj6 bl/tl_.p00 --replacefiles
y(^hlX6gQ 即使包替换了来自其他安装包的文件,也安装这些包。
Or {9?;G -0pAj}_2} --replacepkgs
MST\_s%[ 即使某些包已经被安装,也安装他们。
mpsi{%gA
S,Y\ox- --test
`5J`<BPs 检查安装过程,看整个过程都做了些什么,但并不真正安装包。
\J]qd4tF } "QV{W --------------------------------------------------------------------------------
m%?+;V `>kHJI4 [I
XX#^F 查询
K<BS%~,I `E @TPdu query命令的语法为:
Ub>Pl,~' l_?r#Qc7 rpm -q[information-options] [package-options]
g}uVuK;< rpm --query[information-options] [package-options]
WTlR>|Zdn **RW
9FU 查询选项有两个子集:包选择选项决定查询什么包,信息选择选项决定提供什么信息。
bcVzl]9 --------------------------------------------------------------------------------
71g\fGG\
-#TF&- -XbO[_Wf
以下简单示演示一下包查询:
f( %r)% 5V"Fy&}: 简单查询:
s":\> 5eP0W# 最简单的形式是rpm -q packagename查询。可以用这个命令寻找以安装包的版本。
[/P}1
c[)U ~8rVf+bg3 示例:
VG)Y$S8.> t<UtSkE1 [root@localhost ~]# rpm -q lynx
!)!<.x lynx-2.8.5-18
<KBzZ
!n5 --------------------------------------------------------------------------------
aDDs"DXx <@+>A$~0 }3^b1D>2O 信息查询:
G1:*F8q W*S!}ZT` rpm -qi packagename命令可以得到安装包的汇总信息。
;!k{{Xndd gwm}19JC 示例:
f:w#r.] [root@localhost ~]# rpm -qi lynx
!F^j\ Name : lynx Relocations: (not relocatable)
|z]O@@j$ Version : 2.8.5 Vendor: Red Hat, Inc.
FQ"
;v" Release : 18 Build Date: 2004年07月08日 星期四 18时52分16秒
l.Psh7B2 Install Date: 2006年05月30日 星期二 13时27分21秒 Build Host: tweety.build.redhat.com
".@}]z8 Group : 应用程序/互联网 Source RPM: lynx-2.8.5-18.src.rpm
Xa=M{x Size : 4837340 License: GPL
2D?V0>/ Signature : DSA/SHA1, 2004年10月21日 星期四 01时14分03秒, Key ID b44269d04f2a6fd2
dn? #}^," Packager : Red Hat, Inc. <
http://bugzilla.redhat.com/bugzilla> QqF&lMH URL :
http://lynx.isc.org/ Syf0dp3 Summary : 一个基于文本的网页浏览器。
&5x
]9 Description :
-pF3q2zb Lynx 是一个基于文本的 万维网 浏览器。Lynx不显示任何
x)^/3 图像,但是它支持框架、表格、以及多数其它 HTML
uU|fCwQt 标签。Lynx 优于图形化浏览器的地方是它的速度――
Z'u:Em Links 能够快速启动、退出、及显示网页。
&efwfnG< 标识拥有者
J2vaKl --------------------------------------------------------------------------------
]j^V5y" 4ONou&T $@VQ{S 找出什么包拥有文件file:
BGe&c,feIc )`4g, W 示例:
ZRD@8'1p {j0c)SETN [root@localhost ~]# rpm -qf /etc/lynx-site.cfg
CH`_4UAX% lynx-2.8.5-18
yjq~O~ --------------------------------------------------------------------------------
$L@os2 z 8w&;Ls MO1t0My c 列表包中的文件:
u lqh}Uv' +!'rwD 如果对一个包不够了解,则可以用rpm -ql packagename命令列出包中的文件。这个表中确认某个配置文件或命令是否在这个包中。如果要升级,这个信息有助于了解升级有什么风险。
/q3]AVV eM>f#M 示例:
v ?9 !)nA4l=S# 此为部分显示结果
UNc[h&@_ [root@localhost ~]# rpm -ql lynx
H&yK{0H /etc/lynx-site.cfg
rX^wNH /etc/lynx.cfg
vv9=g*"j /etc/lynx.cfg.cs
qYwEPGa\ /etc/lynx.cfg.ja
O<:"Irq\qr /etc/lynx.cfg.sk
3lZ5N@z69 /usr/bin/lynx
]O\m(of
R /usr/share/doc/lynx-2.8.5
DbL=2 /usr/share/doc/lynx-2.8.5/INSTALLATION
1=9M@r~ ^ /usr/share/doc/lynx-2.8.5/README
CP%?,\ /usr/share/doc/lynx-2.8.5/docs
+OM9v3qJ /usr/share/doc/lynx-2.8.5/docs/CHANGES2.3
5LIbHSK /usr/share/doc/lynx-2.8.5/docs/CHANGES2.4
gM5`UH| /usr/share/doc/lynx-2.8.5/docs/CHANGES2.5
O|Z5SSlk /usr/share/doc/lynx-2.8.5/docs/CHANGES2.6
mvCH$}w8& /usr/share/doc/lynx-2.8.5/docs/CHANGES2.7
NrNxI'MG /usr/share/doc/lynx-2.8.5/docs/CHANGES2.8
Z^fkv /usr/share/doc/lynx-2.8.5/docs/CMU.announce
(,i&pgVZ /usr/share/doc/lynx-2.8.5/docs/CRAWL.announce
aYmC LLj /usr/share/doc/lynx-2.8.5/docs/FM.announce
Ki8]+W37 /usr/share/doc/lynx-2.8.5/docs/IBMPC-charsets.announce
`Dn"<-9: /usr/share/doc/lynx-2.8.5/docs/OS-390.announce
4ox[, /usr/share/doc/lynx-2.8.5/docs/README.TRST
2v;F@fUB. /usr/share/doc/lynx-2.8.5/docs/README.chartrans
*k (|r> L^7"I 4=(D --------------------------------------------------------------------------------
:*/'W5iM 'f?=ks< b!pG&7P 列出包所提供的实际能力:
Hxw 7Q?F 8
<~E;: --provides选项的作用是列出这个包所提供的实际能力。
)-RI iaq+#k@ V 示例:
4"=(kC~~ 6dzY9 [root@localhost ~]# rpm -q --provides lynx
#y?iUv config(lynx) = 2.8.5-18
'JjW5 webclient
sNF[-,a lynx = 2.8.5-18
;(Xig$k --------------------------------------------------------------------------------
hm&cRehU sK&[sN33 u=U.+\f5 列出这个包所倚赖的任何包:
o\M K).Gj2 $ -R,--requires选项的作用是列出这个包所依赖的任何包。
I'qIc? [q%Rx!L 示例:
;;3oWsil} @_+B'<2 [root@localhost ~]# rpm -qR lynx
'/ >7pB /bin/sh
Ag6^>xb^ config(lynx) = 2.8.5-18
8,l~e8 & indexhtml
^J[r<Dm8F libc.so.6
{cW%i: libc.so.6(GLIBC_2.0)
v Mi&0$ libc.so.6(GLIBC_2.1)
qkLp8/G>pO libc.so.6(GLIBC_2.2)
6UXDIg= libc.so.6(GLIBC_2.3)
H/v|H}d; libcrypto.so.4
"SV#e4C. libncursesw.so.5
0+vt LDq@P libssl.so.4
Hl3%+f libz.so.1
=MsQ=:ZV rpmlib(CompressedFileNames) <= 3.0.4-1
q0>@!1Wb rpmlib(PayloadFilesHavePrefix) <= 4.0-1
+W8L^Wl --------------------------------------------------------------------------------
74c[m}'S UP})j.z cGE,3dsF[ 列出包中的配置文件
"6<L)
8 :O~*}7G -c,--configfiles选项的作用是列出包中的配置文件
Jw
b'5[R )Gu:eYp+` 示例:
$&C~Qti|G L2L=~/LG
[root@localhost ~]# rpm -qc lynx
Fr,qVYf /etc/lynx-site.cfg
O\"k[V?.V /etc/lynx.cfg
zo^34wW^ /etc/lynx.cfg.cs
p1blPBlp /etc/lynx.cfg.ja
|@+/R .l /etc/lynx.cfg.sk
9c}mAg4 --------------------------------------------------------------------------------
a9"1a' KcK,%!>B k|SywATr 显示有关于包的改变信息的日志:
~kJ}Z<e Q ,`:RF3 --changllog选项的作用是显示有关于包的改变信息的日志。
Y]33:c_;Mo A0@E^bG 示例:
(:spA5 G%RL8HU 此为部分显示结果
,8Yc@P_O [root@localhost ~]# rpm -q --changelog lynx
&Se!AcvKF * 五 7月 09 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-18
?4^8C4 - Removed perl dependencies (bug #127423).
^tFbg+. * 三 6月 16 2004 Elliot Lee <
sopwith@redhat.com>
KbcmK(`_ - rebuilt
CH ojF+e * 三 5月 26 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-16
hbOyrjanx - No longer need lynx-284-ipv6-salen.patch.
y-/,,,r - No longer need lynx2-8-2-telnet.patch.
l0&Y",vy * 六 2月 14 2004 Elliot Lee <
sopwith@redhat.com> 2.8.5-15
GlPd)m` - rebuilt
xX5EhVR * 二 12月 02 2003 Tim Waugh <
twaugh@redhat.com> 2.8.5-14
)v+R+3< - Updated to dev16, fixing bug #110196.
U=G}@Y - No longer need crlf patch.
?C6DK{S( - Use shipped ja translations.
^Fe%1Lnt - Use %find_lang.
vRR(b!Lq - Default config file now sets UTF-8 (bug #110986).
V(^aG=TaW: --------------------------------------------------------------------------------
:CR1Oy 9 6
#vc"5@M !go$J]T 包选择选项
+ bU*"5" 'WC>
_L package_name
VxKD>:3c 查询已安装包的package_name。
l[P VWM I/HcIBJ -a,--all
jMP!/t
:w 查询所有已安装拨。
uYu/0fQD c2,;t)%@E -f file,--file file
KIeTZVu$% 找出什么包拥有文件file。
w~n7l97Pw "7.
lsL5 -g group,--group group
z5k9|.hgw 找出什么包拥有组group。
Ol@ssm 0]._|Ubn6) -p package_file
9eh9@~mU"l 查询未安装包package_file
XeJ|Z)qZ `-J$7)d@ --querybynumber num
mx ]a@tu 查询第num个数据库条目。主要用于调试。
dTwZ-% 2`ED?F68gH -qf,--queryformat num
{f12&t 指定显示查询结果时所采用的格式,使用标记来表示不同的数据类型(NAME,FILENAME,DISTRIBUTION)。格式说明是标准printf格式化的一个变体。
M<
1rQW' M;$LB@h --specfile specfile
TA"4yri=7x 查询specfile,就好象它是个包
kR1dk4I4 XoZw8cY --triggeredby pkg
,o{|W9 列出触发安装pkg包的包。
1yg5d9 #zL0P>P'a --whatrequires capability
KBO{g:" 列出要求特定能力来行使职责的包。
/ad]pdF hHoc>S6^M --whatprovides capability
+,H6)'#Z 列出提供特定能力的包。
OfAh?^R --------------------------------------------------------------------------------
d ~`_;.z ]JUb;B;Z [/Figr] 信息选择选项:
DsI{*# M*xt9'Yd -c,--configfiles
pVGH)6P>| 列出包中的配置文件。
ER)<Twj P_Bhec|#fT --changelog
[&B}{6wry 显示有关于包的改变信息的日志。
Vjc*D] ?u)[xEx6}+ -d,--docfiles
}Efz+>F02 列出包中的文档文件。
-y+u0,=p. >e4w8Svcy --dump
aglW\LT^ 转储包中每个文件的信息。这个选项必须至少与-l,-c或-d之一共同使用。
sA}X ha 以下列顺序输出信息:
[:MpOl-KIz path size mtime md5sum mode owner group isconfig isdoc rdev symlink
|9D;2N(&! <jnra4> --filebypkg
rK@ UCRf 列出每个包中的所有文件。
<"8<< eT4+O5t -i
I {o\d'/ 显示包的信息,包括名字,版本和描述。
, id`=L= \!_:<"nX. -l,--list
Hh<3k- *d 列出包中所有文件
>d{O1by=d9 }_A#O|dxO --last
:q+D`s 根据安装时间列出包,最新的包排第一位。
jl:dKL@ _]Ei,Ua --provides
:6
\?{xD 列出这个包所提供的实际能力。
,fQs+*j u40k9vh -R,--requires
'g$a.75/- 列出这个包所依赖的任何包。
x9Qa.Jmj #3L=\j[
y -s,--state
vcsMU|GGh 列出包中的每个文件及其状态。可能的状态为normal,not installed或replaced。
&7gE=E(M +EnJyli --scripts
,XZ[L?
> 列出任何在安装和卸载过程中所使用的包特定的shell脚本。
BUozpqN} ?pLKUA h --------------------------------------------------------------------------------
P!Mz5QZ+ A)X 'We ic+tn9f\ 卸载
1aAYBV<3 ua'dm6",: uninstall命令的语法为:
dE_I=v DJF-J# rpm -e package_name
6J\Yi)v< rpm --erase package_name
>;ucwLi TN=MZ{L 示例:
sT^^#$ub OSvv\3= [root@localhost ~]# rpm -e lynx
lk5}bnd5 [root@localhost ~]# rpm -q lynx
O0lQ1<= package lynx is not installed
SAa
hkX --------------------------------------------------------------------------------
/wjL< _DAAD,'<a F> F&+63Q- 卸载选项为:
f17pwJ~= N8Mq0Ck{$ --allmatches
%mda=%Yn 删除包的所有版本。应该只指定一个包,否则会导致错误。
x7s75 $jDp ^ - --nodeps
?2g\y@ 在卸载包之前不检查依赖性。
!7:~"kk pFu3FUO*; --noscripts
mxpncM=q 不执行任何预卸载和后卸载脚本。
ZA;wv+hF= )I`6XG --notriggers
o~Im5j],* 不执行任何由这个包的删除而出发的脚本。
mh4NZ @; #hBDOXHPf --test
qP"<vZ 不真正卸载任何包,仅仅查看活动过程。