linux下查看软件的安装路径

如何在linux下查看软件的安装路径

本文由CSDN-蚍蜉撼青松【主页:http://blog.csdn.net/howeverpf】整理编辑,转载请注明原文或本文出处!

原文链接http://blog.renren.com/share/178371526/1716299598

注:有改动,添加了3.2节。    

 

一般说来都是安装到/usr/share和/usr/local里了。

1.你可以通过whereis 软件名来查找系统里的文件位置(只适合安装路径加入PATH里的情况)

比如你想查找eclipse文件,那么就:

[root@localhost ~]# whereis eclipse

会显示:

eclipse: /usr/bin/eclipse /usr/lib/eclipse /usr/share/eclipse

2.如果是rpm包安装的话,可以使用rpm -qal查询一下

rpm -qf /路径/程序名 

可以查到一个程序属于哪个rpm包,然后

rpm -ql 该rpm包名

可以看到那个包的所有文件和路径等等。还可以解开成一个cpio文件等等之类的,仔细研究一下rpm的参数吧。完全可以做到任何你想做的。

 

3.如果是源码安装的话,

3.1安装的时候,你可以使用-prefix指定安装路径,这样,你可以很轻松知道软件的安装路径;

       源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install),具体的安装方法一般作者都会给出文档,这里主要讨论配置(configure)。Configure是一个可执行脚本,它有很多选项,使用命令./configure –help输出详细的选项列表,如下: 

-bash-3.00# ./configure --help 
Usage: configure [options] [host] 
Options: [defaults in brackets after descriptions] 
Configuration: 
--cache-file=FILE cache test results in FILE 
--help print this message 
--no-create do not create output files 
--quiet, --silent do not print `checking...' messages 
--version print the version of autoconf that created configure 
Directory and file names: 
--prefix=PREFIX install architecture-independent files in PREFIX 
[/usr/local] 
--exec-prefix=EPREFIX install architecture-dependent files in EPREFIX 
[same as prefix] 
--bindir=DIR user executables in DIR [EPREFIX/bin] 
………….(省略若干) …………

        很多的选项,个人认为,你可以忽略其他的一切,但请把—prefix加上。这里以安装supersparrow-0.0.0为例,我们打算把它安装到目录 /usr/local/supersparrow,于是在supersparrow-0.0.0目录执行带选项的脚本./configure –prefix=/usr/local/supersparrow,执行成功后再编译、安装(make,make install);安装完成将自动生成目录supersparrow,而且该软件所有的文件都被复制到这个目录。为什么要指定这个安装目录?是为了以后的维护方便,如果没有用这个选项,安装过程结束后,该软件所需的软件被复制到不同的系统目录下,很难弄清楚到底复制了那些文件、都复制到哪里去了—基本上是一塌糊涂。 
        用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。

 

3.2 如果安装的时候没有使用—prefix,那么使用locate命令

        以查找codeblocks的安装路径为例,输入以下命令,

locate codeblocks                       //查找结果直接显示在命令行终端(条目太多的话显示不完)

locate codeblocks > codeblocks          //将查找结果保存在当前目录下一个名为codeblocks的文件中

        locate命令和find查找档案的功能类似,但执行locate时查找的不是整个硬盘,而是系统为硬盘中的所有档案和目录资料所预先建立的一个索引数据库slocate.db,因此查询速度会比find快。该索引数据库一般是由操作系统通过定时任务定时更新,当然定时任务不会很实时,这个会导致刚刚安装的软件找不到,这时候大家需要使用updatedb命令来手动更新slocate.db。
        Linux内置了一个叫cron的daemon(即守护进程、服务),这是一个自动执行指定任务的程序。cron把命令行保存在crontab(cron table)文件里,这个文件通常在 /etc 目录下。【每个系统用户都可以有自己的crontab(在 /var/spool/cron/ 下)。】OS通过cron daemon来周期性调用updatedb程序,以此来定期更新locate所用到的索引数据库。在默认值中,updatedb每天会运行一次,可以由修改crontab来更新设定值。
        locate指定用来搜寻符合条件的档案,它会去储存档案与目录名称的数据库内,寻找合乎范本样式条件的档案或目录,可以使用特殊字元(如”*”或”?”等)来指定范本样式,如指定范本为kcpa*ner, locate会找出所有起始字串为kcpa且结尾为ner的档案或目录,如名称为kcpartner若目录录名称为kcpa_ner则会列出该目录下包括子目录在内的所有档案。 

-----本文由CSDN-蚍蜉撼青松【主页:http://blog.csdn.net/howeverpf】整理编辑,转载请注明原文或本文出处!-----

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值