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)查询系统文件属于哪个包文章来源:https://www.toymoban.com/news/detail-805636.html
rpm -qf 系统文件名文章来源地址https://www.toymoban.com/news/detail-805636.html
到了这里,关于linux基础学习(4):rpm包与相关命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!