1 .在linux上如何判断是否安装了某个软件?
我的系统是red hat。 使用命令rpm检查是否安装了某个软件,得到了以下结果。
我在使用rpm-QA(|grep ) matlab。 回到车上什么也看不到
我用rpm -qa fluent。 回到车上什么也看不到
虽然使用的是rpm -qa vasp,但是回到车上什么也看不到
但是,实际上肯定有matlab和fluent,但我使用[root@node1 /]# rpm -q fluent
显示的是package fluent is not installed,matlab也一样
另外,命令[root@node1 /]# man rpm
返回的是No manual entry for rpm
为什么会这样呢?
rpm-QA |组软件包
yum命令在yum搜索中尝试
使用rpm -ivh matlab中的内容,在rpm -qa | grep matlab中一定会找到。 如果你是用make make install放进去的话。 那么,你最好直接去找可执行文件。 确定是否安装了find/-name matlab。 如果已安装,则可以看到可执行文件已释放到哪个目录。
rpm -qa检查是否安装了软件,grep和find检查文件的位置
2 .安装文件的默认保存路径?
对于其他人分发的二进制软件包,可执行文件通常安装在Linux系统/usr/智能季节下; 如果是自己从源代码安装的,可执行文件通常位于/usr/local/智能季节下。 但是,除非在配置时指定安装位置,否则无法安装。
例如:
-ivh xxx1.rpm
可执行文件通常安装在/usr/智能季节下
2,/configure (或./configure --prefix=/usr/local ) )。
化妆
制造安装
可执行文件通常位于/usr/local/智能季节下。 因为缺省参数为--prefix=/usr/local
./configure --prefix=/usr (或./configure --prefix=/opt是您的主目录--prefix=~,即/home/xxx的缩写
化妆
制造安装
可执行文件通常位于/usr/智能季节下。 (或相应地处于//智能季节之下。 或者在/home/xxx/智能季节下。 xxx是你家的目录。 )
在任何情况下,只需在bash控制台下键入可执行文件的前几个字符,然后连续按Tab键两次,即可列出所有可能的命令。 如果只有一个可能性,则会自动显示该文件的全名。 这称为命令完成。 要运行当前目录中的可执行文件,必须在命令的开头使用. /。 例如./myprogram
另外,典型的可执行文件位于系统搜索路径中,可以通过直接在控制台中输入命令名称来执行。 例如,假设您编译并安装了一个名为synaptic的软件。 只需在KDE的konsole虚拟控制台下输入synaptic。
很遗憾,如果可执行文件不在系统的搜索路径中,将报告没有此命令。 必须将可执行文件的位置放在环境变量PATH中,并使用冒号作为分隔符。 例如,通过将以下命令PATH='~/聪明季节:$PATH '添加到您家目录的. profile或. bashrc文件中,可以将您家目录的聪明季节目录添加到搜索路径中
只要您想知道“命令文件”在系统中的位置,就可以随时使用which命令,例如$which pwd
/usr/聪明的季节/pwd
表示pwd命令位于/usr/聪明的季节下。
3 .如何在3.linux上查看某个软件安装在哪个目录中?
rpm -ql软件名称
怎么分不开?
是怎么安装的?
一般来说,安装源代码和软件包有两种方法。
如果安装了源代码,就可以查看配置日志;
如果是rpm等封装方式,就必须调查其中的数据库
,比如 rpm -q 进行查询.-q <== 查询(查询本机已经安装的包时不需要版本名称)
-qi #查询被安装的包的详细信息(information)
-qa | grep dhcp <== 列出所有被安装的rpm package
-qc 列出配置文件(/etc下的文件)
-qd 列出帮助文件(man)
-ql dhcp <== 查询指定 rpm 包中的文件列表
-qf /聪明的季节/ls <== 查询哪个库里包含了 ls 文件(注意,需要安装了 /聪明的季节/ls 后才能查到)
-qp < rpm package name> <== 根据rpm包查询(.rpm 文件),可以接其他参数(如i查详细信息,l查文件列表等)
-qR 列出需要的依赖套件
++++++++++++++++++++++++++++++++++++++++++
4.应用实例:安装glib的问题?
请问:系统已安装了底版本glib,rpm格式,我下载了glib高版本,原码,我想更新他,按照文档所说的:
tar vzfx glib-XXXXXXX.tar.gz
./configure
make
make install
后, 我再
rpm -q glib
显示的还是以前底版本的glib,我又想rpm -e底版本的glib,可是这种蠢办法行不通,因为很多程序都是depends他的.
请大家帮我这个菜鸟解决这个蠢问题.
++++++++++++++++++++++++++++++++++++++++++++
自己编译并安装.tar.gz格式的源代码并不影响到.rpm的数据库。如果不出意外的话,你需要的东西应该已经正确安装了(我可没说能正确使用)。用
rpm -ql xxx
查一下那个低版本的安装在哪个目录下,在./configure后设置,重新make并make install就行。
例如,原来的glib安装在/usr/share/glib下,那就用:
./configure --prefix=/usr/share
make
make install
源代码的编译安装需要试验,可能它会直接把一大堆文件拷贝到/usr/share下,而不建glib目录。看一看你已经安装的,应该有所启发的。