Red Hat包管理器(即RPM:Red Hat Package Manager)是一种打包系统,用于软件的发布和安装。其他Linux发布商,如SuSE等也使用RPM。
>qd=lm <, z:u)@>6D1 安装与升级是管理RPM包的根本。安装RPM包时,就是在系统中增加新软件。升级RPM包时,就是在相关软件中更新最新的特性。
K@a#^lmd R 'fEw3^ 一个包就是一个文件,其中包含了安装一个应用所需的多个文件。尽管包中包含了安装时所需的文件,但是应用程序为了能运行可能还需要其他文件的存在或其他未包含包的存在,如特定的库。这样的需求就是包的依赖性(dependency)。如,内核源代码RPM包要有GNU C语言编译器。由于内核源代码具有依赖性,因此要先安装GNU C语言编译器,再安装内核源代码。
Ns5P,[pBOZ Bi>]s%zp 任何用户都可以列出或查询包。但是,安装,升级或删除包通常需要超级用户的特权。这是因为包通常安装在系统级目录下,该目录只对root(超级用户)是可写的。有时,也可以指定一个目录。把把安装在你的主目录或者你拥有写权限的目录下。
s5)y%,E --------------------------------------------------------------------------------
%N0m $* dAy\IfZX= E5Sn mxd 以下简要介绍RPM包的安装,删除和查询
32`Z3- WADEDl&,' RPM包的建立,安装和查询是用rpm命令进行的。RPM包的名字通常以.rpm扩展名结束。rpm有一组模式,每种模式都有自己的选项。
js%n]$N FW{K[km^P rpm命令的格式为:
'"'RC O $KlaZ>Dh rpm [options] [packages]
dEW= V"W mmy/YP) 第一个选项指定rpm模式(安装,查询,更新),其他选项影响模式。
jINI<[v[ )UyJ.!Fly 对包的选项描述中,有时把包指定为package-name,而有时指定为package-file。包的名字是程序名或应用名,如lynx。包文件是RPM文件的名字,如lynx-2.8.5-18.i386.rpm。
'6L@l --------------------------------------------------------------------------------
zMd><UQP{ %Hhk
6tR, Ty7)j]b"zl RPM为指定常用的选项提供了配置文件。系统配置文件通常是/etc/rpmrc,而用户可以建立他们自己的$HOME/.rpmrc文件。你可以用--showrc选项为在rpmrc文件中设置的所有选项显示RPM会使用的值。
,qNbo
11 0?O_]SD 以下为rpm --showrc命令显示的节选:
2IGU{&s d]N_<@tx9 示例:
4&v&XLkb `7[!bCl 此为部分显示结果
^)C# [root@localhost ~]# rpm --showrc
ln8es{q ARCHITECTURE AND OS:
%,zHS?)l build arch : i386
r|i) compatible build archs: athlon i686 i586 i486 i386 noarch
}w8yYI build os : Linux
zL'S5'<F| compatible build os's : linux
N>1d]DrQR install arch : athlon
ef/43+F^x install os : Linux
1/K1e$r compatible archs : athlon i686 i586 i486 i386 noarch
2<:dA >1 compatible os's : linux
u!
dx+v d RPMRC VALUES:
^Y5I OX: 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
MH0wpHz optflags : %{__global_cflags} -m32 -march=athlon
qVH.I6) Features supported by rpmlib:
-Kcjnl92i rpmlib(VersionedDependencies) = 3.0.3-1
9}Ge@a<j PreReq:, Provides:, and Obsoletes: dependencies support versions.
s)KlKh rpmlib(CompressedFileNames) = 3.0.4-1
4t3>`x
7 file name(s) stored as (dirName,baseName,dirIndex) tuple, not as path.
^YB2E* rpmlib(PayloadIsBzip2) = 3.0.5-1
}Z<Sca7 package payload can be compressed using bzip2.
(@;^uVJP --------------------------------------------------------------------------------
< RtyW =K}T; c PZlPC#E- rpm命令包括FTP和HTTP客户端,因此可以指定ftp://或
http://URL来通过Internet安装或查询一个包。只要这里给出的命令中指定了package-file,你就可以使用FTP或HTTP URL。
bm4Bq>*=U kE|x'(x 示例:
#)]/wqPoW mIqm/5 [root@localhost ~]# rpm -ivh
ftp://fr.rpmfind.net/linux/fedor ... s/Fedora/RPMS/lynx-*
'?g&);4)k- Retrieving
ftp://fr.rpmfind.net/linux/fedor ... x-2.8.5-18.i386.rpm
0Ng?U+6 Preparing... ########################################### [100%]
M^>l>?#rl 1:lynx ########################################### [100%]
5)5yH bS --------------------------------------------------------------------------------
8si{|*;hL VT=gb/W6)a @u:` 以下列出一些通用选项(可以用于所有模式):
w~Nat7nD Cpy&2o-%v --dbpath path
TQ0ZBhd 用path作为RPM数据库的路径。
Sw5:T 5HE5$S --ftpport prot
bOp% 用port作为FTP端口。
D5f[: (hg6<` --ftpproxy host
~tZB1+%) 用host作为所有传输的代理服务器。如果你通过使用代理的防火墙系统连到FTP,就要指定该选项。
dnQ6Ras sg49a9`8 --help
leI ]zDk= 输出一个长的使用信息(如果运行rpm时没有选项,则给出短的使用信息)。
0Ub'=`]5a E> $_
$' --justdb
pZ3sp! 只更新数据库;不改变任何文件。
T<NOLfk66 [-\U)>MY(p --pipe command
.D\oKhV( 用管道把rpm输出到commond。
[IAk9B.\ B692Mn --quiet
y`
'#gH 仅显示错误信息。
lyyf&?2 foL4s;2 --rcfile filename
q ywl
G 用filename作为配置文件,而不用系统配置文件/etc/rpmrc或$HOME/.rpmrc。
-Dy<B OEXa}K# --root dir
rm$dv%q 在dir目录内执行所有操作。
R. Fl5B =tP^vgfQ --version
+
#E?) 输出rpm版本号。
7J
?s&x #y[omla8 -vv
c h((u(G 输出调试信息。
5\w*W6y <W) F{N? --------------------------------------------------------------------------------
MNb9 ~kM m^3j|'mG Aq$1#1J 安装升级和刷新
,^Q~w
b!{ *'aouS/?<6 安装或升级一个RPM包,install命令的语法为:
dU2; !`1m. rpm -i [install-options] package_file
>VQLC&u( rpm --install [install-options] package_file
svb7-.! u86PTp+ 示例:
r>TOJVT&] <>Dw8?O
[root@localhost ~]# rpm -i lynx-2.8.5-18.i386.rpm
Z
P6p>?DQ package lynx-2.8.5-18 is already installed
x(R;xB [root@localhost ~]# rpm --install lynx-2.8.5-18.i386.rpm
f?ibyoXL --------------------------------------------------------------------------------
ZbjUOlE02 qu dY9_ ?%Tx%
dB 为了安装一个包的新版本,同时删除现有版本,使用upgrade命令:
MPy><J `Syfl^9B rpm -U [install-options] package_file
1
A0BM rpm --upgrade [install-options] package_file
~J>;l
s1 BHYguS^qz 示例:
}Nwp{["}]L %7w8M{I R3 先安装旧版
vw(ecs^C [root@localhost ~]# rpm -i lynx-2.8.5-11.i386.rpm
0Q?%B6g$m[ *" C9F/R 再安装新版
t u{~:Z( [root@localhost ~]# rpm -U lynx-2.8.5-18.i386.rpm
?!/8~'xA6 =Y6W
Qf 显示出新版本信息
_)!*,\*`{ [root@localhost ~]# rpm -q lynx
47Bg[ lynx-2.8.5-18
+PI}$c-|`
OVU)t] 说明:
dv3u<X M~ -U的一个特点是如果包在系统上不存在,其作用就与-i选项一样,即安装包。
VBF:MAA {;& U5<NO 与-U的特点不一样,刷新(freshen)一个包,是指在已经安装了旧有版本时rpm才升级包。
Y~A I2H S --------------------------------------------------------------------------------
Az8ZA ~Op= #N>66!/V "::2]3e 刷新的语法是:
)oz2V9X{ &GJVFr~z rpm -F [install-options] package_file
F;h^o !W7r |YyNqwP`, rpm --freshen [install-options] package_file
un -h%-e| GEh( pJ 示例:
VKX|0~ x=Oy 6" 从未安装过lynx包,使用-F选项,将无法升级。
e@TwZ6l "J2q|@. [root@localhost ~]# rpm -F lynx-2.8.5-18.i386.rpm
%6 GM[1__ [root@localhost ~]# rpm -q lynx
*AGf'+j*z package lynx is not installed
9#&H'mG --------------------------------------------------------------------------------
yt="kZ W}
H~ka ag47 $9( 安装和更新选项为:
alHA&YC{K QT^b-~^ --allfiles
svl!"tMXl 安装或更新所有文件。
6o\uv II.:k.D` --badreloc
zNoFM/1Vb 与--relocate一起使用,强制重新定位,即使包不是可重定位的。
$qdynKK *?HoN;^ --excludedocs
HF_8661g 不安装任何文档文件。
ss-6b^ eA-oqolY --excludepath path
nK?S2/o#A 不安装文件名以path开始的任何文件。
C~@m6K &Mudu/KTr --force
H)gc"aRe;Y 强制安装。等价于使用--replacepkgs,--replacefiles和--oldpackage。
E?P>s T3B 5V =mj+X? -h,--hash
r~f;g9I 当包档案被解包时打印50个散列标记。使用--version选项以进行更好的显示。
n5.sx|bI? xsJXf @ --ignorearch
6vE#$(n#a& 即使二进制包用于不同的体系结果也进行安装。
DwGM+)! ;R#RdUFH --ignoreos
Rk#'^} 即使操作系统不匹配也安装二进制包。
y2s(]#8 j=M%*`@ --ignoresize
BSgT
6K 安装前不检查磁盘的可用空间。
?2Z`xL9QT 6Q]c} --includedocs
Z@&%"nO 安装文档文件。只有在rpmrc文件中指定了excludedocs:1时,才需要这个选项。
tUc<ExvP, M."/"hV`- --nodeps
([>__c/Nd 不检查这个包是否依赖于其他包的存在。
J9*;Bqzim 7_l
Wr --noorder
uyB 2 安装之前,不为了满足依赖关系而对包进行重新排序。
TaHcvjhR _LC*_LT_ --noscripts
v G\J8s 不执行任何预安装或后安装脚本。
5=|h~/.k 7I"~a<f0X` --notriggers
5o>`7(t` 不执行任何由包安装触发的脚本。
rM
A%By^L- C`kqsK --oldpackage
~//E'V- 允许升级以用旧包替换新包。
wLqj<ot Qr3!6 --percent
9cP{u$ 当文件被解压时输出完成百分比的信息。
pInEB6L.P "49dsKIOH --prefix path
$9Bzq_! 把可重定位包的安装前缀设置为path。
i({\fb|0 sfn^R+x4,9 --replacefiles
ki@C}T5 即使包替换了来自其他安装包的文件,也安装这些包。
H8? Y{H xp95KxHHo --replacepkgs
o)@nnqa 即使某些包已经被安装,也安装他们。
kG!hqj xlwf @XW --test
Nr2,m"R{ 检查安装过程,看整个过程都做了些什么,但并不真正安装包。
F9K0 Il&7n_ H --------------------------------------------------------------------------------
dG5jhkPX `Tyd1!~ nTr]NBR 查询
M3@qhEf?vk X5J )1rL query命令的语法为:
Tf]ou5| ?i#x13 rpm -q[information-options] [package-options]
JXe~
9/! rpm --query[information-options] [package-options]
ly*v|(S& CQ/+- -o 查询选项有两个子集:包选择选项决定查询什么包,信息选择选项决定提供什么信息。
Eq;w5;7s --------------------------------------------------------------------------------
aaY AS"/: ij-'M{f jwE= 以下简单示演示一下包查询:
<Y}m/-sD5 zE$HHY2ovi 简单查询:
Tt~[hC
h QA0uT{x90 最简单的形式是rpm -q packagename查询。可以用这个命令寻找以安装包的版本。
+39uKOrZ ZJ)Z
示例:
zqNzWX rY^uOrR>j* [root@localhost ~]# rpm -q lynx
^t
gjs$M| lynx-2.8.5-18
eQ/w
Mr --------------------------------------------------------------------------------
O H2IO BX[IWP\% 1%B9xLq 信息查询:
N}B&(dJ IP#vfM rpm -qi packagename命令可以得到安装包的汇总信息。
hui
#<2{ n)q8y0if 示例:
0:[A4S`X [root@localhost ~]# rpm -qi lynx
L
QV@]z& Name : lynx Relocations: (not relocatable)
#1'q'f:7& Version : 2.8.5 Vendor: Red Hat, Inc.
(b#M4ho*f Release : 18 Build Date: 2004年07月08日 星期四 18时52分16秒
}'x)e Install Date: 2006年05月30日 星期二 13时27分21秒 Build Host: tweety.build.redhat.com
Z!|r> Group : 应用程序/互联网 Source RPM: lynx-2.8.5-18.src.rpm
N^oP,^+U Size : 4837340 License: GPL
|f$+|9Q? Signature : DSA/SHA1, 2004年10月21日 星期四 01时14分03秒, Key ID b44269d04f2a6fd2
a}NB6E)- Packager : Red Hat, Inc. <
http://bugzilla.redhat.com/bugzilla> SEzjc ~@3 URL :
http://lynx.isc.org/ ,ESli/6 Summary : 一个基于文本的网页浏览器。
f]%SFQ+ Description :
G2I%^.s Lynx 是一个基于文本的 万维网 浏览器。Lynx不显示任何
3R%JmLM+R9 图像,但是它支持框架、表格、以及多数其它 HTML
w(ZZTVW- 标签。Lynx 优于图形化浏览器的地方是它的速度――
Fik;hB Links 能够快速启动、退出、及显示网页。
"0;WYw? 标识拥有者
A)n_ST0 --------------------------------------------------------------------------------
k0V]<#h87 r7R'beiH 5O]tkHYR 找出什么包拥有文件file:
p )JR5z |Sjy
示例:
SQK82/ 8ly)G [root@localhost ~]# rpm -qf /etc/lynx-site.cfg
!|4]V}JQ lynx-2.8.5-18
06AgY0\ --------------------------------------------------------------------------------
gw,K*ph}q vf.MSk?~ar kK4a;j.# 列表包中的文件:
>e6 OlIW ]h`*w 如果对一个包不够了解,则可以用rpm -ql packagename命令列出包中的文件。这个表中确认某个配置文件或命令是否在这个包中。如果要升级,这个信息有助于了解升级有什么风险。
18F}3t?? q9ra 示例:
5"57F88Y1 8493Sw 此为部分显示结果
KM[0aXOtv [root@localhost ~]# rpm -ql lynx
+jB; /etc/lynx-site.cfg
Gy):hGgN /etc/lynx.cfg
@,sjM] /etc/lynx.cfg.cs
X5.9~ /etc/lynx.cfg.ja
GBBr[}y- /etc/lynx.cfg.sk
LhAW|]; /usr/bin/lynx
`O2P&!9& /usr/share/doc/lynx-2.8.5
yD& Y`f# /usr/share/doc/lynx-2.8.5/INSTALLATION
y'^U4# ( /usr/share/doc/lynx-2.8.5/README
oc,I,v /usr/share/doc/lynx-2.8.5/docs
l([aKm# /usr/share/doc/lynx-2.8.5/docs/CHANGES2.3
D
)`(b /usr/share/doc/lynx-2.8.5/docs/CHANGES2.4
W3UxFs]$ /usr/share/doc/lynx-2.8.5/docs/CHANGES2.5
T:{&eWH /usr/share/doc/lynx-2.8.5/docs/CHANGES2.6
=ZURh_{xV /usr/share/doc/lynx-2.8.5/docs/CHANGES2.7
T_Tu>wQX /usr/share/doc/lynx-2.8.5/docs/CHANGES2.8
!~?/D /usr/share/doc/lynx-2.8.5/docs/CMU.announce
"0PsCr}! /usr/share/doc/lynx-2.8.5/docs/CRAWL.announce
P2jh[a% /usr/share/doc/lynx-2.8.5/docs/FM.announce
dcmf~+T /usr/share/doc/lynx-2.8.5/docs/IBMPC-charsets.announce
=6ru%.8U, /usr/share/doc/lynx-2.8.5/docs/OS-390.announce
7$%G3Q|)L /usr/share/doc/lynx-2.8.5/docs/README.TRST
$ dI
mA /usr/share/doc/lynx-2.8.5/docs/README.chartrans
&UnhYG{A d*Mqs}8 --------------------------------------------------------------------------------
fNAW4I I} $[`rY D/. Yn [
F:Z 列出包所提供的实际能力:
{c3FJ5: /Q7q2Ne^* --provides选项的作用是列出这个包所提供的实际能力。
*Lz'<=DLoW 8f~x\. 示例:
w`8H=Hf l+2NA4s [root@localhost ~]# rpm -q --provides lynx
P]^OSPRg config(lynx) = 2.8.5-18
!Q~>)$Cf^ webclient
D['J4B lynx = 2.8.5-18
)s:kQ~+ --------------------------------------------------------------------------------
|0}Xb|+ h&L-G j )_C>hWvo_ 列出这个包所倚赖的任何包:
8k:^( kByF !$1qnsz -R,--requires选项的作用是列出这个包所依赖的任何包。
<h9nt4F baG_7>Q9H 示例:
y[l{
UBue: I>nYI|o1 [root@localhost ~]# rpm -qR lynx
Ek `bPQ5 /bin/sh
?q4`&";{3 config(lynx) = 2.8.5-18
xva
e^gr
indexhtml
-7w}+iS libc.so.6
Hl%Og$q3 libc.so.6(GLIBC_2.0)
fh)eL<I libc.so.6(GLIBC_2.1)
E-Xz libc.so.6(GLIBC_2.2)
9[VYd ' libc.so.6(GLIBC_2.3)
XZ.D<T" libcrypto.so.4
iP9]b& libncursesw.so.5
XYP
RMa? libssl.so.4
iT{4-j7|P4 libz.so.1
`.JW_F)1 rpmlib(CompressedFileNames) <= 3.0.4-1
j~\FDcG*ed rpmlib(PayloadFilesHavePrefix) <= 4.0-1
H?;+C/-K`_ --------------------------------------------------------------------------------
dpS@: >H;m[ M x,5 列出包中的配置文件
7Dssr [ Eu&$Rq} -c,--configfiles选项的作用是列出包中的配置文件
tgCp2`n U1/I(w 示例:
(@*|[wN p<dw C"z [root@localhost ~]# rpm -qc lynx
S[9b
I&C /etc/lynx-site.cfg
-eK0 +beQ /etc/lynx.cfg
w{T$3F`@9 /etc/lynx.cfg.cs
qk'&:A /etc/lynx.cfg.ja
ZGH
7_K /etc/lynx.cfg.sk
p#4*:rpq4 --------------------------------------------------------------------------------
cu?6\@cD vgtAJp+p* ~ u1~% 显示有关于包的改变信息的日志:
<Tgubv+J L''VBY"? --changllog选项的作用是显示有关于包的改变信息的日志。
p@Os sx+k
V A 示例:
*^] ~2hzyEh 此为部分显示结果
Q`J U[nY [root@localhost ~]# rpm -q --changelog lynx
J|U~W
kW * 五 7月 09 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-18
oq|o"n)~ - Removed perl dependencies (bug #127423).
\2El>> * 三 6月 16 2004 Elliot Lee <
sopwith@redhat.com>
Y'P^]Q=}_# - rebuilt
k~<Ozx^AyY * 三 5月 26 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-16
J| &aqY - No longer need lynx-284-ipv6-salen.patch.
-,/6 Wn'j - No longer need lynx2-8-2-telnet.patch.
#
{k$Fk * 六 2月 14 2004 Elliot Lee <
sopwith@redhat.com> 2.8.5-15
Gl{'a1 - rebuilt
o92BGqA>& * 二 12月 02 2003 Tim Waugh <
twaugh@redhat.com> 2.8.5-14
X(d:!-_m * - Updated to dev16, fixing bug #110196.
wsrdBxd5 - No longer need crlf patch.
Yy/,I]F - Use shipped ja translations.
;9)nG,P3 - Use %find_lang.
fuHNsrNlm - Default config file now sets UTF-8 (bug #110986).
#+6j-^<_6 --------------------------------------------------------------------------------
7W},5c n=d#Fm0< 0hkYexX73 包选择选项
) xV>Va8) 9fbo package_name
n@kJ1ee' 查询已安装包的package_name。
!}P^O(oY [m< jM[w{ -a,--all
[W[awGf 查询所有已安装拨。
aW|=|K d/oD]aAEr -f file,--file file
h8.(Q`tli 找出什么包拥有文件file。
0nI*9 wb#[&2i -g group,--group group
tD}{/`{_t 找出什么包拥有组group。
!Y UT* Q rSO%Rm1* -p package_file
h
Ks
查询未安装包package_file
Wn;%B].I '^7Z]K <v --querybynumber num
||cI~qg 查询第num个数据库条目。主要用于调试。
ScInOPb'K 4>Ht_B<< -qf,--queryformat num
;H%'K 指定显示查询结果时所采用的格式,使用标记来表示不同的数据类型(NAME,FILENAME,DISTRIBUTION)。格式说明是标准printf格式化的一个变体。
,{iMF
(Nj T[[E )f1[ --specfile specfile
FR50y+h^$ 查询specfile,就好象它是个包
9P
<1/W! %T<c8w}dP --triggeredby pkg
1M_6X7PH 列出触发安装pkg包的包。
[}Rs .{;RJ:O --whatrequires capability
8EiS\$O- 列出要求特定能力来行使职责的包。
P%[{ 'u VWXyN --whatprovides capability
gQhYM7NP{5 列出提供特定能力的包。
c2GTN " --------------------------------------------------------------------------------
k?3mFWc 7PfNPz<4+ a&mL Dh/ 信息选择选项:
[UdJ(cGf t]3:vp5N] -c,--configfiles
3,#qt}8` 列出包中的配置文件。
S>HfyZ&Pc /NPx9cLW^ --changelog
ZW;Re5?DJ 显示有关于包的改变信息的日志。
M!VW/vdywL <dS I"C< -d,--docfiles
ij?]fXf:)y 列出包中的文档文件。
QRdtr HuA4eJ(2 --dump
N1:)Z`r 转储包中每个文件的信息。这个选项必须至少与-l,-c或-d之一共同使用。
:=quCzG 以下列顺序输出信息:
Y.52`s6F path size mtime md5sum mode owner group isconfig isdoc rdev symlink
}DvT6 :W-xsw --filebypkg
$RRh}w\0^ 列出每个包中的所有文件。
vl s+E o] b\NY!)B -i
bWCtRli} 显示包的信息,包括名字,版本和描述。
#'#@H *gwo.s -l,--list
&ML-\aSal 列出包中所有文件
s/;S2l$` #cJ1Jj $ --last
~-yq,x 根据安装时间列出包,最新的包排第一位。
z^KBV^n n?^oQX}.\ --provides
l~1l~Gx_&n 列出这个包所提供的实际能力。
7/=r- L[+4/a!HQ -R,--requires
(G>g0(;D- 列出这个包所依赖的任何包。
j->5%y wUS w9xg -s,--state
}&l%>P 列出包中的每个文件及其状态。可能的状态为normal,not installed或replaced。
dZd]p8 /5>A 2y --scripts
e/)Vx'd`+ 列出任何在安装和卸载过程中所使用的包特定的shell脚本。
1B{u4w7S4e 7;#o?6!7 --------------------------------------------------------------------------------
PMj!T \B| $U^ Ms!'L V1,4M _Z 卸载
[;C*9Nl 5S! !@P!, uninstall命令的语法为:
(x[z=_I%` p@YbIn rpm -e package_name
?O#"x{Pk rpm --erase package_name
Jd|E
4h~( <5|:QLqy 示例:
>/-Bg: ,F|49i.K [root@localhost ~]# rpm -e lynx
%:-2P [root@localhost ~]# rpm -q lynx
g`=Z%{z% package lynx is not installed
M"OCwBTU --------------------------------------------------------------------------------
~MK%^5y? kKVNE hTp I^``x+a 卸载选项为:
=^ x1:Ak %$R]NL| --allmatches
Uo:=-NNI 删除包的所有版本。应该只指定一个包,否则会导致错误。
EBUCG"e FbD9G6h5 --nodeps
lxLEYDGFS 在卸载包之前不检查依赖性。
R{Me~L? ML1/1GK*i+ --noscripts
R8,
g^N 不执行任何预卸载和后卸载脚本。
cEPqcy
* 2B=BRVtSs --notriggers
QyEoWKu; 不执行任何由这个包的删除而出发的脚本。
pc]( >
a 8'MK --test
s";9G^: 不真正卸载任何包,仅仅查看活动过程。