前言
在Linux的系统中,我们安装软件的时候,有的时候可能会遇到一些问题,下面就是关于这些问题的解决方案的总结。(常年更新中)
使用rpm的时候提示未安装
yum search rpm 报错:
rpm.x86_64 : The RPM package management system
解决方法:
【1】用yum安装rpm
yum install rpm.x86_64
rpm 安装rpm包,提示安装成功,可是查询不到
当我们用rpm进行安装rpm包的时候,它会提示我们进度走到了100%并安装成功,但是当我们使用rpm查询软件是否安装的时候却找不到。下面为解决方法,如方法不可使用请看下一条。
解决方法:
【1】使用别的查询方法
rpm -qa |grep “软件名”
rpm -q “软件名”
rpm -e 软件名(看一下是否可卸载)
【2】重装rpm,再安装
yum repolist rpm
yum install rpm.x86_64
rpm -ivh “rpm包名”
【3】重装软件包
rpm -ivh –replacepkgs rpm包名
【4】使用rpmbuild安装
rpm源码包(.src.rpm文件)
.src.rpm结尾的文件是由软件的源代码包装而成的,用户要安装这类rpm软件包,必须使用命令rpmbuild:(如未安装此工具:yum -y install rpm-build)
<1>把源代码解包并编译、安装
rpmbuild –recompile xxx.xxx.src.rpm
<2>在安装完成后,还会把编译生成的可执行文件重新包装成i386.rpm的RPM软件包。
rpmbuild –rebuild xxx.xxx.src.rpm
Wrote: /usr/src/redhat/RPMS/i386/xxx.xxx.i386.rpm
<3>根据上方Wrote的 xxx.xxx.i386.rpm 的路径,.执行安装
rpm -ivh /usr/src/redhat/RPMS/i386/xxx.xxx.i386.rpm
<4>rpm -qa | grep 软件包名(查看)
rpm包提示已经安装,但删除的时候又提示没有安装
如果你安装的是xxx.xxx.i386.rpm这类的rpm包,使用rpm -e xxx.xxx.i386.rpm,提示”already installed“
可能是软件包名不对,因为此类的包装上后的包名会变化(少了.i386)。
解决方法:
【1】
rpm -qa |grep 软件名
rpm -e –nodeps 查到的软件包名
/usr/src/kernels 目录为空
(/usr/src/kernels为安装当前系统的内核源码的存放目录)
有时我们在安装系统后,发现没有安装当前系统的内核源码在/usr/src/kernels目录下。
解决方法:
【1】yum -y install kernel-devel
/usr/src/目录里面没有redhat目录
首先系统要是redhat
/usr/src/radhat目录一般是在安装*.src.rpm的包生成
解决方法:
【1】安装*.src.rpm的包
把源代码解包并编译、安装
rpmbuild –recompile xxx.xxx.src.rpm
在安装完成后,还会把编译生成的可执行文件重新包装成i386.rpm的RPM软件包。
rpmbuild –rebuild xxx.xxx.src.rpm
Wrote: /usr/src/redhat/RPMS/i386/xxx.xxx.i386.rpm
<3>根据上方Wrote的 xxx.xxx.i386.rpm 的路径,.执行安装
rpm -ivh /usr/src/redhat/RPMS/i386/xxx.xxx.i386.rpm
<4>自动生成usr/src/radhat目录