在redhat群里,一个伙计一直喊:libltdl.so.3有这个东西吗?
我恰巧刚安装CentOS5.4 所以whereis libltdl.so.3 一看有,是个链接,源文件是libltdl.so.3.1.4
就给他发过去了..
还要运行下:ln -s /usr/libltdl.so.3.1.4 /usr/lib/libltdl.so.3 才可以,因为有些软件编译中,只认识文件名,不同就不认得.
他要编译一个认证服务器软件。但是不知道这个文件是哪里的.
我查了查 很简单:
做一个根据文件(已安装)查看该文件所属软件包的清单列表,类似于rpm -qif /usr/bin/rm这样。
$ dpkg -S /usr/bin/axel
axel: /usr/bin/axel
|
这一举两得,似乎连deb文件格式也出来了,不知道管用不..看起来似乎不对.
RPM应用——查询(已安装包和未安装包)
查询功能
命令格式 rpm {-q|--query} [select-options] [query-options]
RPM的查询功能是极为强大,是极为重要的功能之一;举几个常用的例子,更为详细的具体的,请参考#man rpm
1、对系统中已安装软件的查询
1)查询系统已安装的软件
语法:rpm -q 软件名
举例:[root@localhost beinan]# rpm -q gaim
gaim-1.3.0-1.fc4
查看系统中所有已经安装的包,要加 -a 参数 ;
[root@localhost RPMS]# rpm -qa
如果分页查看,再加一个管道 |和more命令;
[root@localhost RPMS]# rpm -qa |more
在所有已经安装的软件包中查找某个软件,比如说 gaim ;可以用 grep 抽取出来;
[root@localhost RPMS]# rpm -qa |grep gaim
上面这条的功能和 rpm -q gaim 输出的结果是一样的;
2)查询一个已经安装的文件属于哪个软件包
语法 rpm -qf 文件名
注:文件名所在的绝对路径要指出
举例:
[root@localhost RPMS]# rpm -qf /usr/lib/libacl.la
libacl-devel-2.2.23-8
3)查询已安装软件包都安装到何处
语法:rpm -ql 软件名 或 rpm rpmquery -ql 软件名
举例:
[root@localhost RPMS]# rpm -ql lynx
[root@localhost RPMS]# rpmquery -ql lynx
4)查询一个已安装软件包的信息
语法格式: rpm -qi 软件名
举例:
[root@localhost RPMS]# rpm -qi lynx
5)查看一下已安装软件的配置文件
语法格式:rpm -qc 软件名
举例:
[root@localhost RPMS]# rpm -qc lynx
6)查看一个已经安装软件的文档安装位置
语法格式: rpm -qd 软件名
举例:
[root@localhost RPMS]# rpm -qd lynx
7)查看一下已安装软件所依赖的软件包及文件
语法格式: rpm -qR 软件名
举例:
[root@localhost beinan]# rpm -qR rpm-python
查询已安装软件的总结:对于一个软件包已经安装,我们可以把一系列的参数组合起来用;比如 rpm -qil ;比如:
[root@localhost RPMS]# rpm -qil lynx
2、对于未安装的软件包的查看:
查看的前提是您有一个.rpm 的文件,也就是说对既有软件file.rpm的查看等;
1)查看一个软件包的用途、版本等信息;
语法: rpm -qpi file.rpm
举例:
[root@localhost RPMS]# rpm -qpi lynx-2.8.5-23.i386.rpm
2)查看一件软件包所包含的文件;
语法: rpm -qpl file.rpm
举例:
[root@localhost RPMS]# rpm -qpl lynx-2.8.5-23.i386.rpm
3)查看软件包的文档所在的位置;
语法: rpm -qpd file.rpm
举例:
[root@localhost RPMS]# rpm -qpd lynx-2.8.5-23.i386.rpm
4)查看一个软件包的配置文件;
语法: rpm -qpc file.rpm
举例:
[root@localhost RPMS]# rpm -qpc lynx-2.8.5-23.i386.rpm
5)查看一个软件包的依赖关系
语法: rpm -qpR file.rpm
举例:
[root@localhost archives]# rpm -qpR yumex_0.42-3.0.fc4_noarch.rpm
/bin/bash
/usr/bin/python
config(yumex) = 0.42-3.0.fc4
pygtk2
pygtk2-libglade
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
usermode
yum >= 2.3.2
|
我要飞得更高(Flying Higher) by hi.baidu
DEB 的资料
如何知道文件属于哪个deb软件包2010年03月03日 星期三 上午 10:58如果你想安装某个软件包,但用apt-cache查不出它的名称,不过你 知道这个程序的文件名,或这个软件包中某些文件的文件名,那么你可以用apt-file来查找软件包名称。如下所示:
$ apt-file search filename
它用起来很象dpkg -S,不过它还会列出包含该文件的已删除软件包。它 也可以用来查找哪个软件包包含编译时所缺的文件,当然,解决这类问题auto-apt可能是更好的方案,请参考如 何“按需”安装软件包, 第 5.3 节。
用这个命令,你可以列出软件包的内容:
$ apt-file list packagename
apt-file用一个数据库来存放所有软件包的内容信息,和auto-apt 一样,这个数据库也需要实时更新,完成更新可以运行:
# apt-file update
缺省情况下,apt-file和auto-apt使用同一个数据库, 参考如 何“按需”安装软件包, 第 5.3 节。
摘自:
|
啊如何知道文件属于哪个deb软件包啊
[root@localhost ~]# rpm -qif /usr/lib/libltdl.so.3
Name : libtool-ltdl Relocations: (not relocatable)
Version : 1.5.22 Vendor: CentOS
Release : 6.1 Build Date: 2007年01月07日 星期日 16时08分38秒
Install Date: 2010年08月09日 星期一 22时31分40秒 Build Host: builder5.centos.org
Group : System Environment/Libraries Source RPM: libtool-1.5.22-6.1.src.rpm
Size : 50769 License: LGPL
Signature : DSA/SHA1, 2007年04月04日 星期三 08时24分41秒, Key ID a8a447dce8562897
URL : http://www.gnu.org/software/libtool/
Summary : GNU Libtool 动态模块加载程序的运行时库函数
Description :
The libtool-ltdl package contains the GNU Libtool Dynamic Module Loader, a
library that provides a consistent, portable interface which simplifies the
process of using dynamic modules.
These runtime libraries are needed by programs that link directly to the
system-installed ltdl libraries; they are not needed by software built using the
rest of the GNU Autotools (including GNU Autoconf and GNU Automake).
[root@localhost ~]#
|
阅读(11427) | 评论(0) | 转发(5) |