Red Hat包管理器(即RPM:Red Hat Package Manager)是一种打包系统,用于软件的发布和安装。其他Linux发布商,如SuSE等也使用RPM。
SM@l4GH Jq l#z/z 安装与升级是管理RPM包的根本。安装RPM包时,就是在系统中增加新软件。升级RPM包时,就是在相关软件中更新最新的特性。
=~?2i)-mC C^aP)&
qt 一个包就是一个文件,其中包含了安装一个应用所需的多个文件。尽管包中包含了安装时所需的文件,但是应用程序为了能运行可能还需要其他文件的存在或其他未包含包的存在,如特定的库。这样的需求就是包的依赖性(dependency)。如,内核源代码RPM包要有GNU C语言编译器。由于内核源代码具有依赖性,因此要先安装GNU C语言编译器,再安装内核源代码。
QSW03/_f u<]-%ha$ 任何用户都可以列出或查询包。但是,安装,升级或删除包通常需要超级用户的特权。这是因为包通常安装在系统级目录下,该目录只对root(超级用户)是可写的。有时,也可以指定一个目录。把把安装在你的主目录或者你拥有写权限的目录下。
TCX*$ac" --------------------------------------------------------------------------------
&0It"17Ej @7"xDgA yj `b-^$? 以下简要介绍RPM包的安装,删除和查询
M9_
y>N[0 a,#f%#J\ RPM包的建立,安装和查询是用rpm命令进行的。RPM包的名字通常以.rpm扩展名结束。rpm有一组模式,每种模式都有自己的选项。
I$n 0aR6 zob^z@2 rpm命令的格式为:
5:hajXd aM9^V MOb rpm [options] [packages]
U!XC-RA3
_ Fs|fo-+H}k 第一个选项指定rpm模式(安装,查询,更新),其他选项影响模式。
KX"?3#U#Fm fYuJf,I[f 对包的选项描述中,有时把包指定为package-name,而有时指定为package-file。包的名字是程序名或应用名,如lynx。包文件是RPM文件的名字,如lynx-2.8.5-18.i386.rpm。
d?oupW}uu --------------------------------------------------------------------------------
[kt!\- [0lCb"
;'`T RPM为指定常用的选项提供了配置文件。系统配置文件通常是/etc/rpmrc,而用户可以建立他们自己的$HOME/.rpmrc文件。你可以用--showrc选项为在rpmrc文件中设置的所有选项显示RPM会使用的值。
!Z
YMks4 c;xL. 以下为rpm --showrc命令显示的节选:
|<\o%89AM _ ;O$ot\5 示例:
(8?t0}#t .6z#o{n 此为部分显示结果
6Hi3h{ [root@localhost ~]# rpm --showrc
$LRvPan` ARCHITECTURE AND OS:
8+k\0fmy build arch : i386
Dq)V] Zx compatible build archs: athlon i686 i586 i486 i386 noarch
:2^%^3+V build os : Linux
c+f~>AaI compatible build os's : linux
-m(9*b{h@ install arch : athlon
TbXp%O:[W install os : Linux
W#P)v{K compatible archs : athlon i686 i586 i486 i386 noarch
ax[-907 compatible os's : linux
o|>2X[T RPMRC VALUES:
R^iF^IB 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
k:Da+w_'1 optflags : %{__global_cflags} -m32 -march=athlon
Y#{ L} Features supported by rpmlib:
[c+[t3dz rpmlib(VersionedDependencies) = 3.0.3-1
j5Vyo> PreReq:, Provides:, and Obsoletes: dependencies support versions.
KqG:o+V= rpmlib(CompressedFileNames) = 3.0.4-1
U ; JZN file name(s) stored as (dirName,baseName,dirIndex) tuple, not as path.
btkD<1{g rpmlib(PayloadIsBzip2) = 3.0.5-1
?[hIv6c package payload can be compressed using bzip2.
Ck%nNy29 --------------------------------------------------------------------------------
SQDllG84E e[$=5U~c q!\K!W \ rpm命令包括FTP和HTTP客户端,因此可以指定ftp://或
http://URL来通过Internet安装或查询一个包。只要这里给出的命令中指定了package-file,你就可以使用FTP或HTTP URL。
`Xc~'zG dZFf/BXU 示例:
=H%c/Jty @Hw#O33/' [root@localhost ~]# rpm -ivh
ftp://fr.rpmfind.net/linux/fedor ... s/Fedora/RPMS/lynx-*
St7ZyN1 Retrieving
ftp://fr.rpmfind.net/linux/fedor ... x-2.8.5-18.i386.rpm
\HF|&@}hU Preparing... ########################################### [100%]
l ~CYxO 1:lynx ########################################### [100%]
yDg`9q.ckm --------------------------------------------------------------------------------
}dQW-U ~OD}` bgq/]fI} 以下列出一些通用选项(可以用于所有模式):
9_)*b H:Y?(" k --dbpath path
Hphvsre< 用path作为RPM数据库的路径。
-f@~{rK.L rJH u~/_Dq --ftpport prot
)ZC0/>R 用port作为FTP端口。
Clr~:2g\ h)fJ2]JW8W --ftpproxy host
[0<N[KZ) 用host作为所有传输的代理服务器。如果你通过使用代理的防火墙系统连到FTP,就要指定该选项。
f40 xS7-Q0 R8O;8c?D --help
1vk&; 输出一个长的使用信息(如果运行rpm时没有选项,则给出短的使用信息)。
@xIKYJyU }c|)i,bL --justdb
4WU%K`jnXb 只更新数据库;不改变任何文件。
b)/, aqJ>l}{ --pipe command
mX66}s}# 用管道把rpm输出到commond。
6..G/,TB :ZX#w`Y --quiet
D]X&Va 仅显示错误信息。
1(t{)Z< -i*{8t --rcfile filename
RG[b+Qjn 用filename作为配置文件,而不用系统配置文件/etc/rpmrc或$HOME/.rpmrc。
qp$Td<'Y u}Kc>/AF --root dir
#~QkS_ 在dir目录内执行所有操作。
xc{$=>'G m%au* 0p --version
"=8= G 输出rpm版本号。
uflRW+-2 Mtxn@m{i;" -vv
x.W93e[]H 输出调试信息。
;U$Fz~rJ 4+46z| --------------------------------------------------------------------------------
1~rZka[s R@zl?>+ }\Kki 安装升级和刷新
P5,X,-eG DvL/xlN 安装或升级一个RPM包,install命令的语法为:
$}_a`~u tA;#yM; rpm -i [install-options] package_file
BO]}E:C9 rpm --install [install-options] package_file
$7\Al$W\ ^q{=mf` 示例:
-hv<8bC~4 hHXTSk2 [root@localhost ~]# rpm -i lynx-2.8.5-18.i386.rpm
HYqDaRn package lynx-2.8.5-18 is already installed
lO)-QE+ [root@localhost ~]# rpm --install lynx-2.8.5-18.i386.rpm
[@K#BFA --------------------------------------------------------------------------------
leY fF ";vP77|m7R )S~ySiJ<U 为了安装一个包的新版本,同时删除现有版本,使用upgrade命令:
oW7\T!f &4]~s:F rpm -U [install-options] package_file
#i6ZY^+ee rpm --upgrade [install-options] package_file
A\xvzs.d M{)7C,' 示例:
AE?G+:B 2$S^3$k' 先安装旧版
fT$Fv [root@localhost ~]# rpm -i lynx-2.8.5-11.i386.rpm
FH Hi/yh (c3%rM m] 再安装新版
>U4hsr05 [root@localhost ~]# rpm -U lynx-2.8.5-18.i386.rpm
w&U>w@H^ 4<c#3] 显示出新版本信息
#@qd.,]2 [root@localhost ~]# rpm -q lynx
~m0l_:SF lynx-2.8.5-18
pXL@&]U+ b Ag>;e( 说明:
j=>:{`*c -U的一个特点是如果包在系统上不存在,其作用就与-i选项一样,即安装包。
;~nz%LJ svT1b'=\$I 与-U的特点不一样,刷新(freshen)一个包,是指在已经安装了旧有版本时rpm才升级包。
Gh.@l\|tf --------------------------------------------------------------------------------
7|vB\[s ;`CNe$y
T1Gy_ G/ 刷新的语法是:
;Nfd fG{ 9doUD rpm -F [install-options] package_file
d]bM,`K* 6 H6fR6Kr4j rpm --freshen [install-options] package_file
!/]vt?v#^ (j*1sk 示例:
.PAR 4I %/}+Q 从未安装过lynx包,使用-F选项,将无法升级。
=A yDVWpE 335\0~;3 [root@localhost ~]# rpm -F lynx-2.8.5-18.i386.rpm
]Sl]G6#Iwv [root@localhost ~]# rpm -q lynx
IJnh@?BC package lynx is not installed
+xGz~~iNh --------------------------------------------------------------------------------
4=b{k,kzgA ~sk{O%OI Tw)"#Y!T 安装和更新选项为:
jjbw+ <;T$?J9 --allfiles
fa=OeuI 安装或更新所有文件。
z'9Mg]&> `% a+LU2 --badreloc
kVG]zt2 与--relocate一起使用,强制重新定位,即使包不是可重定位的。
]t'bd<O xQKD1#y --excludedocs
71$MhPvd< 不安装任何文档文件。
BUp,bJpO A&dNCB --excludepath path
hhZUE] 不安装文件名以path开始的任何文件。
tWo MUp C/sDyv$ --force
|ULwUi-r 强制安装。等价于使用--replacepkgs,--replacefiles和--oldpackage。
nV$ctdusQ s</llJ$ -h,--hash
0xNlO9b/ 当包档案被解包时打印50个散列标记。使用--version选项以进行更好的显示。
~w>Z !RuhT 1|PmZPKq9n --ignorearch
I{V1Le4? 即使二进制包用于不同的体系结果也进行安装。
.F*2]xj@" ;~Em,M"o --ignoreos
8G SO] R 即使操作系统不匹配也安装二进制包。
HJ\CGYmyz 2k^dxk~$V; --ignoresize
f%1Dn }6 安装前不检查磁盘的可用空间。
FyZ iiH4| zF
F=v7[j --includedocs
limzDQ^ 安装文档文件。只有在rpmrc文件中指定了excludedocs:1时,才需要这个选项。
1f.xZgO/2 ^edg@fp --nodeps
BhMHT:m 不检查这个包是否依赖于其他包的存在。
W1@Q)i gw1|
?C --noorder
fC$~3v 安装之前,不为了满足依赖关系而对包进行重新排序。
4cO||OsMU (\^)@Y --noscripts
&M,"%w! 不执行任何预安装或后安装脚本。
BBg&ZIYEh F[
Itq --notriggers
P'nbyF 不执行任何由包安装触发的脚本。
9t$%Tc#Z =&-hU|ur --oldpackage
Q)l]TgvSe 允许升级以用旧包替换新包。
^z[-pTY LX
%8a^?; --percent
xYMNyj~ 当文件被解压时输出完成百分比的信息。
JMMsOA_] J{Z-4y --prefix path
\I\'c.$I.Y 把可重定位包的安装前缀设置为path。
@QAyXwp 6$'6x2, --replacefiles
aE_)iE| 即使包替换了来自其他安装包的文件,也安装这些包。
u%#s_R IXSCYqoK --replacepkgs
GMw|@?:{ 即使某些包已经被安装,也安装他们。
J-W,^% P80z@! --test
n},~2 检查安装过程,看整个过程都做了些什么,但并不真正安装包。
n9zS'VU \w
6%J77 --------------------------------------------------------------------------------
!(!BW9Zt+ 6]|NB & tk^1Ga3 查询
VD\pQ.= NRS!Ox query命令的语法为:
@" ~Mglgw %qzpt{'?< rpm -q[information-options] [package-options]
u+]v.Mt rpm --query[information-options] [package-options]
|wf:|% zS:89y< 查询选项有两个子集:包选择选项决定查询什么包,信息选择选项决定提供什么信息。
lPS A --------------------------------------------------------------------------------
t9&z|?Vz E(T6s^8 TsPO+x$l 以下简单示演示一下包查询:
ta+'*@V+G M} IRagm 简单查询:
qj71
rj }lgqRg)F9[ 最简单的形式是rpm -q packagename查询。可以用这个命令寻找以安装包的版本。
X$O,L[] 4 6,'!z
?d% 示例:
}9=\#Le~\ O_f|R1G5z [root@localhost ~]# rpm -q lynx
/$hfd?L lynx-2.8.5-18
`d=$9Pi --------------------------------------------------------------------------------
EX>|+zYL bOCdf"!g dXh@E7 信息查询:
1Tn!.E * E<3hy rpm -qi packagename命令可以得到安装包的汇总信息。
3zb;q@JV AWLKve_ 示例:
%r5&CUE5? [root@localhost ~]# rpm -qi lynx
Y2Mti-\ Name : lynx Relocations: (not relocatable)
s)HbBt- Version : 2.8.5 Vendor: Red Hat, Inc.
o'Q)V Release : 18 Build Date: 2004年07月08日 星期四 18时52分16秒
^zGgvFf> Install Date: 2006年05月30日 星期二 13时27分21秒 Build Host: tweety.build.redhat.com
" 7!K'i Group : 应用程序/互联网 Source RPM: lynx-2.8.5-18.src.rpm
|}*k| Size : 4837340 License: GPL
%E7+W{?*1 Signature : DSA/SHA1, 2004年10月21日 星期四 01时14分03秒, Key ID b44269d04f2a6fd2
US)wr Packager : Red Hat, Inc. <
http://bugzilla.redhat.com/bugzilla> h<*l=`# URL :
http://lynx.isc.org/ >taS<.G Summary : 一个基于文本的网页浏览器。
pBt/vS ad Description :
\n850PS Lynx 是一个基于文本的 万维网 浏览器。Lynx不显示任何
$JTy`g0>x 图像,但是它支持框架、表格、以及多数其它 HTML
n@BE*I<" 标签。Lynx 优于图形化浏览器的地方是它的速度――
+1p>:cih Links 能够快速启动、退出、及显示网页。
0D>~uNcT} 标识拥有者
}H{{ @RU --------------------------------------------------------------------------------
1vu4}%nD h*hV gQ
h0-Dnw 找出什么包拥有文件file:
]Bs ? 5;V#Z@S 示例:
r2.87 /U1GxX:P, [root@localhost ~]# rpm -qf /etc/lynx-site.cfg
Be2@9 lynx-2.8.5-18
o})4Jt1vj --------------------------------------------------------------------------------
uw+v]y 8Es]WR5
^ b]s=Uv#) 列表包中的文件:
mW 5L;> w;'
F;j~ 如果对一个包不够了解,则可以用rpm -ql packagename命令列出包中的文件。这个表中确认某个配置文件或命令是否在这个包中。如果要升级,这个信息有助于了解升级有什么风险。
;,'! kTex>1W; 示例:
Fm-W@ 3h";
2 此为部分显示结果
O6;>]/` [root@localhost ~]# rpm -ql lynx
m7kDxs(KO /etc/lynx-site.cfg
U:MkA(S%c /etc/lynx.cfg
<_ */ /etc/lynx.cfg.cs
aQN`C{nY /etc/lynx.cfg.ja
#rV=!j|| /etc/lynx.cfg.sk
@DkPJla& /usr/bin/lynx
ok'0Byo /usr/share/doc/lynx-2.8.5
)1j~(C)E8 /usr/share/doc/lynx-2.8.5/INSTALLATION
}QncTw0 /usr/share/doc/lynx-2.8.5/README
5"y
p|Yl /usr/share/doc/lynx-2.8.5/docs
svyC(m)' /usr/share/doc/lynx-2.8.5/docs/CHANGES2.3
5S$HDO& /usr/share/doc/lynx-2.8.5/docs/CHANGES2.4
t2OXm /usr/share/doc/lynx-2.8.5/docs/CHANGES2.5
Rv q_Zsm /usr/share/doc/lynx-2.8.5/docs/CHANGES2.6
GU'5`Yzd9 /usr/share/doc/lynx-2.8.5/docs/CHANGES2.7
f\~e&`PV /usr/share/doc/lynx-2.8.5/docs/CHANGES2.8
v5wI?HE /usr/share/doc/lynx-2.8.5/docs/CMU.announce
@D"#B@j /usr/share/doc/lynx-2.8.5/docs/CRAWL.announce
q) /;|h /usr/share/doc/lynx-2.8.5/docs/FM.announce
*8/Q_w /usr/share/doc/lynx-2.8.5/docs/IBMPC-charsets.announce
2{p`"xX /usr/share/doc/lynx-2.8.5/docs/OS-390.announce
p/lMv\`5 /usr/share/doc/lynx-2.8.5/docs/README.TRST
GQ|kcY= /usr/share/doc/lynx-2.8.5/docs/README.chartrans
-5vc0"?E z}C#+VhQ` --------------------------------------------------------------------------------
N,'JQch},8 (L|SE4 [X^JV/R 列出包所提供的实际能力:
v.6"<nT2 =]xNpX) --provides选项的作用是列出这个包所提供的实际能力。
.1I];Cy0D r'&9'rir2 示例:
}jiqUBn% ADv
a@P [root@localhost ~]# rpm -q --provides lynx
6{azzk8 config(lynx) = 2.8.5-18
K^{`8E&A webclient
Cqg}dXn' lynx = 2.8.5-18
,l;
&Tb=k --------------------------------------------------------------------------------
(GPJ=r &O0+\A9tP z8Dn<h 列出这个包所倚赖的任何包:
!kASEjFz|f .&@|)u -R,--requires选项的作用是列出这个包所依赖的任何包。
>w
j7Y` jI;bVG
示例:
q3NS?t! tx5_e[ [root@localhost ~]# rpm -qR lynx
308w0eP /bin/sh
?]9uHrdsN} config(lynx) = 2.8.5-18
.[1A indexhtml
Q=PaTh
libc.so.6
U"m!f*a libc.so.6(GLIBC_2.0)
kP;:s libc.so.6(GLIBC_2.1)
(=
!_5l libc.so.6(GLIBC_2.2)
D4'XBXmb libc.so.6(GLIBC_2.3)
f!LZT! y libcrypto.so.4
crgYr$@s? libncursesw.so.5
[b#jw,7 libssl.so.4
b1[U9 libz.so.1
5)$U<^uy rpmlib(CompressedFileNames) <= 3.0.4-1
/=e[(5X|O rpmlib(PayloadFilesHavePrefix) <= 4.0-1
sWavxh8A --------------------------------------------------------------------------------
ziH2<@ j~Gu;%tq E=QL4*?
列出包中的配置文件
g=U?{<8.m X'?v8\mPK -c,--configfiles选项的作用是列出包中的配置文件
&2xYG{Z Jh466;
E 示例:
[0 &Lvx &/JnAfmYqt [root@localhost ~]# rpm -qc lynx
}(o/+H4 /etc/lynx-site.cfg
LG<lZ9+y /etc/lynx.cfg
_L$)~},cT /etc/lynx.cfg.cs
=r-Wy.a@ /etc/lynx.cfg.ja
Qgx~'9 /etc/lynx.cfg.sk
TJ;v}HSo --------------------------------------------------------------------------------
=dA T^e## (ZEVbAY?i |%RFXkHS 显示有关于包的改变信息的日志:
GU[Cq=k `=KrV#/758 --changllog选项的作用是显示有关于包的改变信息的日志。
zi-+@9T )<^ ~${$U 示例:
ok6e=c ' :T{or- 此为部分显示结果
8dA/dMQ [root@localhost ~]# rpm -q --changelog lynx
$s]@%6f * 五 7月 09 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-18
\pzvoj7{ - Removed perl dependencies (bug #127423).
vq5I 2 * 三 6月 16 2004 Elliot Lee <
sopwith@redhat.com>
<M&]*|q>g% - rebuilt
E,6E-9 * 三 5月 26 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-16
rk. UW - No longer need lynx-284-ipv6-salen.patch.
\FKIEg+(2 - No longer need lynx2-8-2-telnet.patch.
6op\g].P * 六 2月 14 2004 Elliot Lee <
sopwith@redhat.com> 2.8.5-15
RDqC$Gu - rebuilt
/GeS(xzQ * 二 12月 02 2003 Tim Waugh <
twaugh@redhat.com> 2.8.5-14
zcZw} - Updated to dev16, fixing bug #110196.
^@19cU?q - No longer need crlf patch.
=OHDp7GXO> - Use shipped ja translations.
\!^o<$s.G - Use %find_lang.
Aj`4uFhiL - Default config file now sets UTF-8 (bug #110986).
C|lMXp\* --------------------------------------------------------------------------------
unX^ MPpw }jk^M|Z"Oz >{??/fBd- 包选择选项
(w^&NU'e `q@~78` package_name
EV(/@kN2 查询已安装包的package_name。
A!Yqj~ eoL)gIM% -a,--all
ttKfZ0 查询所有已安装拨。
hN:Z-el lLDHx3+ -f file,--file file
iIF'!K=q 找出什么包拥有文件file。
uf>w* [m5 @'rO=(-b -g group,--group group
% (.PRRI 找出什么包拥有组group。
3PEs$m9e }GC{~
SZ4 -p package_file
aLq;a 查询未安装包package_file
0=5i\*5 p B~ez>/H^ --querybynumber num
'H9~rq7 查询第num个数据库条目。主要用于调试。
:Aa^afjJw lxz %bC@ -qf,--queryformat num
nSC>x:jY5/ 指定显示查询结果时所采用的格式,使用标记来表示不同的数据类型(NAME,FILENAME,DISTRIBUTION)。格式说明是标准printf格式化的一个变体。
X@G`AD'.M A+l" --specfile specfile
}rQ*!2Y? 查询specfile,就好象它是个包
G`P+J ;8v5 qz --triggeredby pkg
( 0h]<7 列出触发安装pkg包的包。
i~9)Hz;! Cn<kl^!Q- --whatrequires capability
|S8pq4eKJ_ 列出要求特定能力来行使职责的包。
C,]Ec2 GGuLxc?( --whatprovides capability
3TtW2h>M 列出提供特定能力的包。
C;ye%&g> --------------------------------------------------------------------------------
W9D)QIqbvW lm\u(3_$ 19vD(KC< 信息选择选项:
Mzd}9x$'J :W&\}) -c,--configfiles
{h=Ai[|l4Q 列出包中的配置文件。
`WT7w']NT ;uDFd04w
[ --changelog
'8JaD6W9S 显示有关于包的改变信息的日志。
Ll`apKr H:_`]X" -d,--docfiles
AK!G#ug 列出包中的文档文件。
@e7+d@O< 72 6y/o --dump
x9e
9$ww} 转储包中每个文件的信息。这个选项必须至少与-l,-c或-d之一共同使用。
#n"/9%35f` 以下列顺序输出信息:
\2`U$3Q path size mtime md5sum mode owner group isconfig isdoc rdev symlink
0>`69&;g| 6>Cubb> --filebypkg
z|2liQrf+ 列出每个包中的所有文件。
1}pR')YL[ .<B1i -i
&)l:m. 显示包的信息,包括名字,版本和描述。
\);rOqh P33E\O -l,--list
-{h[W bf 列出包中所有文件
#L)rz u Ml Z`g,{ --last
\abl|;fj 根据安装时间列出包,最新的包排第一位。
UU;:x"4 dq(x@&J --provides
qHCs{ u 列出这个包所提供的实际能力。
qAS^5|(b[ TRZ^$<AG -R,--requires
f<wgZM 列出这个包所依赖的任何包。
DtZm|~)a Q\76jD`m\ -s,--state
v,&2!Zv 列出包中的每个文件及其状态。可能的状态为normal,not installed或replaced。
hgK=fHJk >gl.(b25C --scripts
zTLn*? 列出任何在安装和卸载过程中所使用的包特定的shell脚本。
d3GK.8y_z 9K|lU:, --------------------------------------------------------------------------------
%j@FZ
)a[ `?x$J
6p }El_.@'T & 卸载
I8?[@kg5b' a"}#HvB+ uninstall命令的语法为:
%S.U`(. w>uZ$/ rpm -e package_name
b U NYTF{ rpm --erase package_name
Q8y|:tb$Y SK52.xXJ 示例:
>nQyF : qRT9n$ [root@localhost ~]# rpm -e lynx
Tm52=+u f$ [root@localhost ~]# rpm -q lynx
$x;h[,y
package lynx is not installed
?LI9F7n --------------------------------------------------------------------------------
de9l;zF C`wI6!
c^s> 卸载选项为:
AF]!wUKxy Jr)`shJ" --allmatches
sG2 3[t8 删除包的所有版本。应该只指定一个包,否则会导致错误。
'V#ew\ gqRTv_ ; --nodeps
RWCS
u$ 在卸载包之前不检查依赖性。
&pjV4m|j< ~+C?][T --noscripts
8"mW!M 不执行任何预卸载和后卸载脚本。
D^55:\4( W"(`n4hi3 --notriggers
RJwIN,&1. 不执行任何由这个包的删除而出发的脚本。
$3[\:+ /v4S@SQ+ --test
yB%)D0 不真正卸载任何包,仅仅查看活动过程。