Red Hat包管理器(即RPM:Red Hat Package Manager)是一种打包系统,用于软件的发布和安装。其他Linux发布商,如SuSE等也使用RPM。
_N*4 3O` hVR=g!e#X 安装与升级是管理RPM包的根本。安装RPM包时,就是在系统中增加新软件。升级RPM包时,就是在相关软件中更新最新的特性。
]INbRytvc 3UH=wmG0w 一个包就是一个文件,其中包含了安装一个应用所需的多个文件。尽管包中包含了安装时所需的文件,但是应用程序为了能运行可能还需要其他文件的存在或其他未包含包的存在,如特定的库。这样的需求就是包的依赖性(dependency)。如,内核源代码RPM包要有GNU C语言编译器。由于内核源代码具有依赖性,因此要先安装GNU C语言编译器,再安装内核源代码。
9D
0ujup g(<@r2p 任何用户都可以列出或查询包。但是,安装,升级或删除包通常需要超级用户的特权。这是因为包通常安装在系统级目录下,该目录只对root(超级用户)是可写的。有时,也可以指定一个目录。把把安装在你的主目录或者你拥有写权限的目录下。
NB,iC
[e --------------------------------------------------------------------------------
W=G[hT5L{ =;T971L` 0}w>8L7i{ 以下简要介绍RPM包的安装,删除和查询
T=>&`aZH .m+KXlP RPM包的建立,安装和查询是用rpm命令进行的。RPM包的名字通常以.rpm扩展名结束。rpm有一组模式,每种模式都有自己的选项。
YE0s5bB6 o3uv"#
C rpm命令的格式为:
2I#fwsb ]huqZI rpm [options] [packages]
*.Kc-f4mP :uMD$zF'5 第一个选项指定rpm模式(安装,查询,更新),其他选项影响模式。
Va
!HcG1^: FTk!Mn88 对包的选项描述中,有时把包指定为package-name,而有时指定为package-file。包的名字是程序名或应用名,如lynx。包文件是RPM文件的名字,如lynx-2.8.5-18.i386.rpm。
f PDnkr --------------------------------------------------------------------------------
*;4r|#LG uK
t>6DN. 6wxQ_Qz:Q RPM为指定常用的选项提供了配置文件。系统配置文件通常是/etc/rpmrc,而用户可以建立他们自己的$HOME/.rpmrc文件。你可以用--showrc选项为在rpmrc文件中设置的所有选项显示RPM会使用的值。
&&t4G }* Dj %jrtT 以下为rpm --showrc命令显示的节选:
ybB/sShGM 8"p>_K= 示例:
NShA-G N5 %,)[%>#{ 此为部分显示结果
#n0P'@d,r [root@localhost ~]# rpm --showrc
`U?;9!|;6 ARCHITECTURE AND OS:
1_yUv7uhX build arch : i386
Ip<STz]- compatible build archs: athlon i686 i586 i486 i386 noarch
h05
~ g build os : Linux
Q6DE|qnV
compatible build os's : linux
LM<OYRB( install arch : athlon
l tQ:c install os : Linux
+F`!
Jt compatible archs : athlon i686 i586 i486 i386 noarch
Z*kg= hs^ compatible os's : linux
*^QfTKN RPMRC VALUES:
g*!2.P 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
,V|>nkQ optflags : %{__global_cflags} -m32 -march=athlon
pU}>} Features supported by rpmlib:
-3bl!9h^ rpmlib(VersionedDependencies) = 3.0.3-1
7@C:4c@0 PreReq:, Provides:, and Obsoletes: dependencies support versions.
e;[/ytz"d' rpmlib(CompressedFileNames) = 3.0.4-1
~KrzJp=5F file name(s) stored as (dirName,baseName,dirIndex) tuple, not as path.
6rPe\'n=B rpmlib(PayloadIsBzip2) = 3.0.5-1
]D<r5P% package payload can be compressed using bzip2.
x{IOn;>R --------------------------------------------------------------------------------
/G</ [ N5 <5q:mG88 X $cW!a rpm命令包括FTP和HTTP客户端,因此可以指定ftp://或
http://URL来通过Internet安装或查询一个包。只要这里给出的命令中指定了package-file,你就可以使用FTP或HTTP URL。
U3p=H^MB. "iOT14J!7 示例:
6g7 X1C 9 ?h)U|J?G [root@localhost ~]# rpm -ivh
ftp://fr.rpmfind.net/linux/fedor ... s/Fedora/RPMS/lynx-*
=Y
/ Retrieving
ftp://fr.rpmfind.net/linux/fedor ... x-2.8.5-18.i386.rpm
3hb1^HNT Preparing... ########################################### [100%]
k>2 xm 1:lynx ########################################### [100%]
m&o&XVC --------------------------------------------------------------------------------
PcJ,Y\"[ ^<ayPV)+ kOJs;k 以下列出一些通用选项(可以用于所有模式):
m"jqHGFV I~#'76L[ --dbpath path
7GE.>h5 用path作为RPM数据库的路径。
y%3Yr?] {TlS)i` --ftpport prot
qhiQ!fMQ 用port作为FTP端口。
Gu&zplB ~Kt.%K5lgt --ftpproxy host
\e ( h6,@ 用host作为所有传输的代理服务器。如果你通过使用代理的防火墙系统连到FTP,就要指定该选项。
+&Sf$t 1 _
@ \ --help
!^B`7 输出一个长的使用信息(如果运行rpm时没有选项,则给出短的使用信息)。
]cFqKs RqH"+/wR --justdb
e7 5*84 只更新数据库;不改变任何文件。
"y>l2V,4j% -/KVZ --pipe command
])T*T$u 用管道把rpm输出到commond。
"(T@*"vX2 +loD{
--quiet
k\1q Jr 仅显示错误信息。
4,TS1H KxK$Y.y] --rcfile filename
K)F;^)KDHf 用filename作为配置文件,而不用系统配置文件/etc/rpmrc或$HOME/.rpmrc。
[;#}BlbN _s<eqCBV --root dir
m9xO& @#vx 在dir目录内执行所有操作。
O`~T:N|D +KXg&A/^ --version
Q4q3M=0 输出rpm版本号。
Oh-HfJyi Vcc/ -vv
StaX~J6= 输出调试信息。
> : \lDz '$4o,GA8 --------------------------------------------------------------------------------
z8jQaI]j Zwp*JH+G V$<og 安装升级和刷新
VA.:'yQtJ F8>Fp" 安装或升级一个RPM包,install命令的语法为:
j$Gb>Ex> MS><7lk- rpm -i [install-options] package_file
ysDfp'C, rpm --install [install-options] package_file
3*XX@>|o qdNYY&6>?u 示例:
'Pr(7^ C6:<.`iD87 [root@localhost ~]# rpm -i lynx-2.8.5-18.i386.rpm
!x|OgvJ package lynx-2.8.5-18 is already installed
h7kGs^pP [root@localhost ~]# rpm --install lynx-2.8.5-18.i386.rpm
9`QWqu[ --------------------------------------------------------------------------------
V5%B,.d: cm]8 m_! t&H) :P 为了安装一个包的新版本,同时删除现有版本,使用upgrade命令:
-=5z&)
X jK3% \`o rpm -U [install-options] package_file
Bk~WHg>@G rpm --upgrade [install-options] package_file
^|-x mUC B k#68p 示例:
}(O
7tC l[L\|hv'n 先安装旧版
+n9]c~g!T0 [root@localhost ~]# rpm -i lynx-2.8.5-11.i386.rpm
bgL`FW i3 u
m(A3uQ 再安装新版
uFL~^vz [root@localhost ~]# rpm -U lynx-2.8.5-18.i386.rpm
7*~
rhQ w\8grEj 显示出新版本信息
Y)g<> }F [root@localhost ~]# rpm -q lynx
kbBX\*{yh lynx-2.8.5-18
7bCTR2e\@w $kvF]|<bu 说明:
Vb|DNl@ -U的一个特点是如果包在系统上不存在,其作用就与-i选项一样,即安装包。
ld$LG6[PA a~DR$^m 与-U的特点不一样,刷新(freshen)一个包,是指在已经安装了旧有版本时rpm才升级包。
N-4LdC --------------------------------------------------------------------------------
uXNJ{]o n3jA[p:
nW!rM($q 刷新的语法是:
d]$z&E `lqMifD rpm -F [install-options] package_file
)pW(Cp 03iO4yOu rpm --freshen [install-options] package_file
^SVdaQ{7 $xa#+ 示例:
xaAJ>0IM rhHX0+ 从未安装过lynx包,使用-F选项,将无法升级。
Uw)?u$+
P o5@
l!NQ [root@localhost ~]# rpm -F lynx-2.8.5-18.i386.rpm
wVP{R3 [root@localhost ~]# rpm -q lynx
}<9*eAn` package lynx is not installed
#Kn=Q --------------------------------------------------------------------------------
'9H7I! L@ 71mdU6Kq /}]X3ng 安装和更新选项为:
QjVP]C}p YFy5>*W --allfiles
^mm:u<Yt 安装或更新所有文件。
oJvF)d@gU =Bu d! --badreloc
.3Jggp 与--relocate一起使用,强制重新定位,即使包不是可重定位的。
#x"4tI r>eOq[z --excludedocs
0jro0f' 不安装任何文档文件。
M#IGq pMHY2t --excludepath path
V+W,#5 不安装文件名以path开始的任何文件。
1b-4wonQd s>9w+|6Ji --force
#(?EL@5 强制安装。等价于使用--replacepkgs,--replacefiles和--oldpackage。
8Tyf#`'I %($sj|_l -h,--hash
hIuKs5` 当包档案被解包时打印50个散列标记。使用--version选项以进行更好的显示。
H
:}|UW dUk^DI,:l --ignorearch
aqK<}jy 即使二进制包用于不同的体系结果也进行安装。
cP`o?: &$ia#j{l --ignoreos
jt@k<#h~ 即使操作系统不匹配也安装二进制包。
P`v%<
9~ !E'jd72O --ignoresize
_1VtVfiZ{ 安装前不检查磁盘的可用空间。
d/k&f5 HWi0m/J --includedocs
dBE
:rZu 安装文档文件。只有在rpmrc文件中指定了excludedocs:1时,才需要这个选项。
Jk!}z+X'A T_lexX[\ --nodeps
(x2I*<7P 不检查这个包是否依赖于其他包的存在。
5 S$*YRp S^]i --noorder
Ratg!l|'- 安装之前,不为了满足依赖关系而对包进行重新排序。
79AOvh cfyN)#9 --noscripts
P ^R224R 不执行任何预安装或后安装脚本。
oC#@9>+@+" [R iCa --notriggers
B8NOPbT 不执行任何由包安装触发的脚本。
#G:~6^A 2VyLt=mdh --oldpackage
f*04=R?w7> 允许升级以用旧包替换新包。
V/j+Z1ZW Af pB=3 --percent
E)|fKds
当文件被解压时输出完成百分比的信息。
2~AGOx ]i3 2-8% --prefix path
^n"ve2 把可重定位包的安装前缀设置为path。
~T7\lJ{%G
S=!3t` --replacefiles
/[`bPKr 即使包替换了来自其他安装包的文件,也安装这些包。
,~w)~fMb8 |_{-hNiz0 --replacepkgs
,kfUlv= 即使某些包已经被安装,也安装他们。
P^#<h"Ht `So*\#\T --test
@5K/z<p% 检查安装过程,看整个过程都做了些什么,但并不真正安装包。
^CX=< yf(VwU,
x --------------------------------------------------------------------------------
Jb
Hn/$ Gt{~u^< @x3x/gU 查询
y)X1!3~( %Ak"d+OH4 query命令的语法为:
Rb\M63q SsiAyQ|Ma rpm -q[information-options] [package-options]
Z6\OkD rpm --query[information-options] [package-options]
(dv Cejc^p vG`R. 查询选项有两个子集:包选择选项决定查询什么包,信息选择选项决定提供什么信息。
_ #288`bU --------------------------------------------------------------------------------
.YKqYN?y4 @6w\q?.s w?|gJ*B" 以下简单示演示一下包查询:
$q.%4 6cQh8_/>{# 简单查询:
@2cGx/1# (E )@@p7,: 最简单的形式是rpm -q packagename查询。可以用这个命令寻找以安装包的版本。
`j{5$X usnbGkq 示例:
U@yn%k9 fT9$0:eO [root@localhost ~]# rpm -q lynx
zBV7b| j lynx-2.8.5-18
7'uuc]\5> --------------------------------------------------------------------------------
,rx?Ig}kz J=|PZ2" E8j>Toz 信息查询:
*U|K~dl]K Cg^=&1| rpm -qi packagename命令可以得到安装包的汇总信息。
Sa7bl~p\ g0NtM%
示例:
o5)lTVQ~~ [root@localhost ~]# rpm -qi lynx
sr1 `/
Name : lynx Relocations: (not relocatable)
" )T;3/c Version : 2.8.5 Vendor: Red Hat, Inc.
:^]rjy/|+ Release : 18 Build Date: 2004年07月08日 星期四 18时52分16秒
'F.Da#st!} Install Date: 2006年05月30日 星期二 13时27分21秒 Build Host: tweety.build.redhat.com
_0p8FhNt Group : 应用程序/互联网 Source RPM: lynx-2.8.5-18.src.rpm
i_8v >F Size : 4837340 License: GPL
qT}<D`\ Signature : DSA/SHA1, 2004年10月21日 星期四 01时14分03秒, Key ID b44269d04f2a6fd2
w'E&w)Z] Packager : Red Hat, Inc. <
http://bugzilla.redhat.com/bugzilla> {?yZdL:m) URL :
http://lynx.isc.org/ Y3^UJe7E Summary : 一个基于文本的网页浏览器。
|X@ZM Description :
yXyL,R Lynx 是一个基于文本的 万维网 浏览器。Lynx不显示任何
{2QCdj46 图像,但是它支持框架、表格、以及多数其它 HTML
<WhdQKFf- 标签。Lynx 优于图形化浏览器的地方是它的速度――
,xmmS\ Links 能够快速启动、退出、及显示网页。
I~ Q2jg2 标识拥有者
},<(VhP --------------------------------------------------------------------------------
uL| Wuq "X<vgM^: +ve S~ 找出什么包拥有文件file:
&f48MtE ! f!/~M"! 示例:
H8@1Kt =Ts2a"n [root@localhost ~]# rpm -qf /etc/lynx-site.cfg
8[@aX;I lynx-2.8.5-18
t+7|/GLs2 --------------------------------------------------------------------------------
IL*Ghq{/ .=@xTJh 62BT 3/~ 列表包中的文件:
&GMBvmP Mkc
如果对一个包不够了解,则可以用rpm -ql packagename命令列出包中的文件。这个表中确认某个配置文件或命令是否在这个包中。如果要升级,这个信息有助于了解升级有什么风险。
rD^ b{]E3 R]L$Ld< ij 示例:
R|4a9G /Wos{}Z0 此为部分显示结果
5,Rxc= [root@localhost ~]# rpm -ql lynx
o%Ubn* /etc/lynx-site.cfg
G':wJ7[]` /etc/lynx.cfg
&!Sq6<!v2 /etc/lynx.cfg.cs
}.`no /etc/lynx.cfg.ja
vZhC_G+tGd /etc/lynx.cfg.sk
?fv5KdD /usr/bin/lynx
~@Yiwp\" /usr/share/doc/lynx-2.8.5
+r8:t5:/I /usr/share/doc/lynx-2.8.5/INSTALLATION
xLX2F /usr/share/doc/lynx-2.8.5/README
jd>ug=~x /usr/share/doc/lynx-2.8.5/docs
oW[];r /usr/share/doc/lynx-2.8.5/docs/CHANGES2.3
">zK1t5= /usr/share/doc/lynx-2.8.5/docs/CHANGES2.4
Tnd)4}2p /usr/share/doc/lynx-2.8.5/docs/CHANGES2.5
~O|g~H5; /usr/share/doc/lynx-2.8.5/docs/CHANGES2.6
*GUQz /usr/share/doc/lynx-2.8.5/docs/CHANGES2.7
jTSN`R9@ /usr/share/doc/lynx-2.8.5/docs/CHANGES2.8
/?(\6Z_A /usr/share/doc/lynx-2.8.5/docs/CMU.announce
} J_"/bB /usr/share/doc/lynx-2.8.5/docs/CRAWL.announce
04o>POR /usr/share/doc/lynx-2.8.5/docs/FM.announce
R*S9[fqC[ /usr/share/doc/lynx-2.8.5/docs/IBMPC-charsets.announce
(*6kYkUK /usr/share/doc/lynx-2.8.5/docs/OS-390.announce
r1pj-
/usr/share/doc/lynx-2.8.5/docs/README.TRST
p"l GR&b /usr/share/doc/lynx-2.8.5/docs/README.chartrans
#Jx6DQGa Z|t`}lK --------------------------------------------------------------------------------
Vv|%;5( r^g"%nq9/ &|]GTN`E 列出包所提供的实际能力:
8D]&wBR: 9-B/n0 --provides选项的作用是列出这个包所提供的实际能力。
e^ Aw%t ~-J!WC==U 示例:
d+m}Z>iQ1O }Mv$Up [root@localhost ~]# rpm -q --provides lynx
P]A~:Lj config(lynx) = 2.8.5-18
+Oxw?`I$ webclient
0gevn lynx = 2.8.5-18
=\ek;d0Tqb --------------------------------------------------------------------------------
ScCp88KpFI qpt},yn)C ]?un'$%e 列出这个包所倚赖的任何包:
fpPB_P{Ua t ZL|;K -R,--requires选项的作用是列出这个包所依赖的任何包。
s@$SM,tnn s!g06F 示例:
59R%g .2Y >Tf <8r, [root@localhost ~]# rpm -qR lynx
Hoj'zY /bin/sh
" J4?Sb < config(lynx) = 2.8.5-18
d~QZcR indexhtml
fK
4,k:YC libc.so.6
+<})`(8 libc.so.6(GLIBC_2.0)
gl$}t H libc.so.6(GLIBC_2.1)
9M]%h libc.so.6(GLIBC_2.2)
Jn\@wF9xd libc.so.6(GLIBC_2.3)
+|K/*VVn` libcrypto.so.4
Jx+e_k$gHO libncursesw.so.5
6,raRg6 libssl.so.4
.Ce0yAl~ libz.so.1
R9q9cBi3 rpmlib(CompressedFileNames) <= 3.0.4-1
Can:!48 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
\D5_g8m:
--------------------------------------------------------------------------------
?PSJQ3BC| Tfytc$aQ "KHe6otmi_ 列出包中的配置文件
I9ZJ"29 s
+Q'\? -c,--configfiles选项的作用是列出包中的配置文件
p|`[8uY? j
e;^i,& 示例:
1nZ7xCDK98 Ly_.%f [root@localhost ~]# rpm -qc lynx
qDK\MQ! /etc/lynx-site.cfg
xXQW|#X\ /etc/lynx.cfg
95IR.Qfn! /etc/lynx.cfg.cs
?y|8bw< /etc/lynx.cfg.ja
lxh}N, /etc/lynx.cfg.sk
[ApAd --------------------------------------------------------------------------------
b/g~;| < /I@`B2 =vD}O@tN 显示有关于包的改变信息的日志:
$.Qu55=z< )uK Tf=; --changllog选项的作用是显示有关于包的改变信息的日志。
,AuejMd eFz!`a^dX 示例:
52v@zDY A5 <T7~U 此为部分显示结果
nK>D& S_! [root@localhost ~]# rpm -q --changelog lynx
s g6e%
5 * 五 7月 09 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-18
feA(Rj - Removed perl dependencies (bug #127423).
+V,Ld&r * 三 6月 16 2004 Elliot Lee <
sopwith@redhat.com>
pP^"p"<s - rebuilt
<=gf|( * 三 5月 26 2004 Tim Waugh <
twaugh@redhat.com> 2.8.5-16
JrJTIUf_ - No longer need lynx-284-ipv6-salen.patch.
mKZ^FgG - No longer need lynx2-8-2-telnet.patch.
"SFs\] Z * 六 2月 14 2004 Elliot Lee <
sopwith@redhat.com> 2.8.5-15
Y}hz UKJ - rebuilt
hB1Gtc4n * 二 12月 02 2003 Tim Waugh <
twaugh@redhat.com> 2.8.5-14
I`KBj6n - Updated to dev16, fixing bug #110196.
yiAusl; - No longer need crlf patch.
IEQ6J}L - Use shipped ja translations.
12 S[m~L% - Use %find_lang.
&Tn7 - Default config file now sets UTF-8 (bug #110986).
40Z/;,wp{ --------------------------------------------------------------------------------
D]zpG ?{KC@c*c W<OO:B.ty 包选择选项
{3kI~s 'k!V!wcD^y package_name
tOVYA\] 查询已安装包的package_name。
QMBV"E_aY Ku<_N]9 -a,--all
zE_t(B(Q 查询所有已安装拨。
~\~XD+jy" b 1t7/q -f file,--file file
L}.V`v{zc 找出什么包拥有文件file。
:taRCh5 [.*o<
KP -g group,--group group
fH[:S9@ 找出什么包拥有组group。
!|;w(/ Dwi[aC+k -p package_file
pTzfc`~xv 查询未安装包package_file
' $5o5\ GcA!I!j/ --querybynumber num
a&~]77) 查询第num个数据库条目。主要用于调试。
dD}!E #zv'N -qf,--queryformat num
Xn:ac^ 指定显示查询结果时所采用的格式,使用标记来表示不同的数据类型(NAME,FILENAME,DISTRIBUTION)。格式说明是标准printf格式化的一个变体。
+H8;*uZ|k, ;WpPdR2 --specfile specfile
!Knv/:+ 查询specfile,就好象它是个包
{1j[RE ||vQW\g --triggeredby pkg
EL=}xug,? 列出触发安装pkg包的包。
]Zz<9zix *|Fl&`2 --whatrequires capability
Or[uq,Dm16 列出要求特定能力来行使职责的包。
7LdNE|IP $N`uM --whatprovides capability
?FRQ!R 列出提供特定能力的包。
fl18x;^I --------------------------------------------------------------------------------
TAn.5
wH9t w=H4#a?fc SsF
5+=A 信息选择选项:
$/uNV1]o t?j2Rw3f`I -c,--configfiles
hhvP*a_J 列出包中的配置文件。
-!p-nk@9| ,9;d"ce --changelog
-?Aa RwZ, 显示有关于包的改变信息的日志。
*cn#W]AE Y)X58_En -d,--docfiles
G
]mX+? 列出包中的文档文件。
.cX,"2;n lZupn? --dump
AFcA5:ja 转储包中每个文件的信息。这个选项必须至少与-l,-c或-d之一共同使用。
I#tEDeF2 以下列顺序输出信息:
aE2
3[So path size mtime md5sum mode owner group isconfig isdoc rdev symlink
]\:FFg_O6t {\HE'C/? --filebypkg
6@HY+RCx 列出每个包中的所有文件。
tKUy&]T UW[{Y|oE -i
<.<Q.z 显示包的信息,包括名字,版本和描述。
N#`aVW'{v2 'D4KaM.d -l,--list
x{|n>3l`b9 列出包中所有文件
#2!M+S {@u}-6:wAT --last
m 5NF)eL 根据安装时间列出包,最新的包排第一位。
x6x6N&f? s!E-+Gw --provides
=9;jVaEMJL 列出这个包所提供的实际能力。
9h6xl i IK6XJsz$J -R,--requires
4l?98 列出这个包所依赖的任何包。
p3eJFg$ ZN ?P4#ZS -s,--state
s
`r tr 列出包中的每个文件及其状态。可能的状态为normal,not installed或replaced。
OQA3 ~\Vu 6]}Xi:I --scripts
g/q$;cB 列出任何在安装和卸载过程中所使用的包特定的shell脚本。
EN%Xs578 32IN;X| --------------------------------------------------------------------------------
8&=+Mw o /fq DOWUnJ;5 卸载
nWK"i\2#G FZ^byIS[ uninstall命令的语法为:
::vw1Es +G_6Ek4 rpm -e package_name
B!le=V,@, rpm --erase package_name
ZtEHP`Iin
HC8{); 示例:
ZX.VzZS !+M H?A [root@localhost ~]# rpm -e lynx
6iFd[<.*j [root@localhost ~]# rpm -q lynx
b['TRYc=: package lynx is not installed
):+H`Hcm --------------------------------------------------------------------------------
79%${ajSI " I@Z:[=2 ^U_B>0`ch 卸载选项为:
)vS##-[_ A?;/]m; --allmatches
r DY q]` 删除包的所有版本。应该只指定一个包,否则会导致错误。
*k'9 %'< j86s[Dty --nodeps
I01On>"@7 在卸载包之前不检查依赖性。
i*Y/q-N| 't{=n[ --noscripts
5Tpn`2F 不执行任何预卸载和后卸载脚本。
\+MR`\|3 y Ht63z8' --notriggers
,[bcyf 不执行任何由这个包的删除而出发的脚本。
'EREut,>' h3p 3~xq --test
kQIWDN 不真正卸载任何包,仅仅查看活动过程。