linux软件包使用技巧总结

查找特定文件属于哪个软件包:

显示软件包详细信息

apt-cache show

rpm -ql

显示软件包具体内容:

显示系统已有软件包

dpkg -l

显示软件包变化历史 :

apt-listchanges

在每个软件包被安装以后,都会在文档目录( /usr/share/doc/packagename ) 生成一个 changelog.Debian.gz 的文件

“按需”安装软件包

1
# auto-apt run ./configure 自动安装缺少的软件包
1
auto-apt update,auto-apt updatedb和 auto-apt update-local来完成更新。

undefined

1
下载源码包编译
1
apt-get source packagename 仅下载
1
apt-get -b source packagename 下载编译
1
2
通常会下载三个文件:一个.orig.tar.gz、一个.dsc和一个.diff.gz。对于Debian专用的软件包,不会下载最后一个文件,第一个文件的文 件名中没有"orig"项。  dpkg-source通过.dsc文件中的信息,将源码包解包到 packagename-version目录,下载下来的源码包中有一个 debian/目录,里面是创建.deb包所需的文件。想要下载的源码包自动编译成软件包,只需在命令行中加上-b如果你不打算在下载后就立刻创建.deb文件,你可以在之后用下面的命令创建:     $ dpkg-buildpackage -rfakeroot -uc -b
上述命令应当在下载后为软件包创建的目录中执行。要安装用这种方式构建好的 软件包,只能直接使用软件包管理器,例如: # dpkg -i file.deb
1
gmc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
发现该软件包既不能重装又不能删除,试试下 面两个命令:     # apt-get -f install
# dpkg --configure -a当RPM安装好后,因为某些原因损坏了,或者在删除某些软件时候因为依赖性的关系,被删除了一部分,在使用的时候或者安装其他软件的时候,提示依赖性不能被解决。那么就需要重新安装,但是安装的时候提示你已经安装过了。这个时候就需要重新安装,或者强制安装。命令如下:
# rpm -ivh --force 名称.rpm# rpm -ivh --force(这里必须是两个-,不是一个) --nodeps   名称.rpm

rpm
-e --force --nodeps XXXXXXXX 删除 以 snow-1.1.rpm 为例#rpm
-ivh snow-1.1.rpm { i:安装、v:详细信息、h:用#表示进度 }#rpm -e snow { 删除 }#rpm
-ivh --force snow-1.1.rpm { 强制重装 }#rpm -e --nodeps snow { 去除内部相关性检查删除 snow,
不推荐使用}#rpm -Uvh snow {升级 }#rpm
-q snow { 查询 }#rpm -ql snow { 查询 snow所拥有的文件 }#rpm
-qlc snow { 查询snow的文档文件 }#rpm -qld snow { 查询snow的配置文件 }#rpm
-qp snow-1.1.rpm { 查询文件,但不查询数据库 }#rpm -qa { 查询所有以安装的软件包 }#rpm
-qf /usr/X11R6/bin/snow { 查询包的所有者 }#rpm -qR snow-1.1.rpm { 查询 snow包期望系统具有的情况
}#rpm --checksig snow-1.1.rpm { 验证完整性签名 }#rpm
-V snow { 验证安装后是否被修改过 } apt-file是一个软件包查找工具,可以查到软件包所含的文件和安装的位置。

apt-file update更新软件包的文件库,第一次使用或apt-get update后都需运行一次。apt-file search file_name查找该文件存在于哪些软件包中。apt-file list package_name显示该软件包的文件。

更新缓冲

yum update

yum makecache

yum search

yum install

下载软件包

yumdownloader **

下载软件包源码包

yumdownloader –source

重建rpm包

rpmbuild –rebuild

显示配置参数

rpmbuld –showrc

重建deb包