linux基础学习(4):rpm包与相关命令

1.linux内的软件包分类

linux只有2种软件包:源码包二进制包

(1)源码包

源码包就是开源的源程序包,使用者可以直接看到其程序,也可以进行修改

(2)二进制包

由于源码包安装难度大,后来就出现了二进制包,但二进制包不再是开源的了

linux的二进制包以.rpm结尾,windows的二进制包以.exe结尾

red hat的二进制包是RPM包,ubuntu的二进制包是DPKG包

*对于大型环境,最好用源码包;对于小型环境或者本地环境,最好用rpm包

2.rpm包

2.1 rpm包命名规则

为例,这样完整的一串称为包全名

*httpd:软件包名,也就是包名

*2.2.15:软件版本

*15:发行次数

*e16.centos:适合的linux平台

*i686:适合的硬件平台。如果是x86_64代表64位平台;如果是noarch代表没有平台限制

*rpm:后缀

如果命令中需要敲入软件包名称,那么:对于未安装的软件,需要使用包全名,同时要使用绝对路径;对于已安装的软件,使用包名即可,也不需要使用绝对路径

2.2 rpm包软件的服务控制命令

(1)systemctl与service

对于用rpm包安装的服务,可以用systemctl命令来管理

*centos7使用systemctl命令,centos6使用service命令

启动服务:systemctl start 服务名 | service 服务名 start

关闭服务:systemctl stop 服务名 | service 服务名 stop 

重启服务:systemctl restart 服务名 | service 服务名 restart

显示服务的状态:systemctl status 服务名 | service 服务名 status

在开机时启用服务:systemctl enable 服务名

在开机时禁用服务:systemctl disable 服务名

(2)直接使用绝对路径控制

RPM包的绝对路径  start | stop | status | restart

其实systemctl与service就是这种方法的简化版

3.rpm命令

3.1下载:rpm -ivh 包全名

选项--force:不管是否安装,都强制重装

3.2升级:

(1)rpm -Uvh 包全名:如果没安装,会安装最新版本;如果有旧版本,会进行升级。

(2)rpm -Fvh 包全名:只会对旧版本进行升级,不会进行安装。

3.3卸载:rpm -e 包名

卸载也会受到rpm包依赖性的限制。

*yum命令卸载虽然可以解决依赖性问题,但可能会删掉其他相关的重要安装包,所以不建议使用。

3.4查询:

(1)查询是否已安装

rpm -q 包名:查询是否已安装

rpm -qa:查询所有安装的包

rpm -qa | grep 包名:查询已安装的所有包含包名的rpm包

(2)查询详细信息

rpm -qi 包名:查询已安装的包

rpm -qip 包全名:查询未安装的包

(3)查询rpm包文件列表和具体的安装目录

rpm -qi 包名:查询已安装的包

rpm -qip 包全名:查询未安装的包

(4)查询系统文件属于哪个包

rpm -qf 系统文件名

你可能感兴趣的:(linux,学习,运维)