Linux 软件包可细分为两种,分别是源码包和二进制包
实际上 ,源码包就是一堆源代码程序。计算机只能识别机器语言也就是二进制。所以源码包的安装需要一名翻译官来 翻译源码包 转换为 二进制包
Linux 的默认安装包就是 二进制包
目前两大主流的 二进制包 管理系统:
RPM
功能强大,安装与升级`查询和卸载非常方便
因此很多发行版的Linux都使用它
例如: Fedora,Centos,SuSE
DPKG
由 Debian Linux所开发的包管理机制 主要应用Debian 和 Ubuntu 之中
其和 RPM 的原理和形式大同小异,这里不详细阐述
RPM 是众多人的选择,其好处:
管理简单,通过几个命令即可实现 安装,卸载,升级和查询
安装速度比源码包快很多
缺点是:
无法看到源码
功能选择不如源码灵活
依赖性强
(当你需要安装A包时,需要先安装 b和c,安装 b的时候又需要安装 d。
类似 安装 java的时候,想完美运行Java程序的话 ,有 jre还不够,还要有完整的 jdk)
这里主讲 RPM
RPM 命名一般格式如下:
包名 - 版本号 - 发布次数.发行商.Linux平台.适合的硬件平台.包拓展名
例如: httpd-2.2.15-15.el6.centos.1.i686.rpm
1 安装命令:
rpm -ivh 包全名
i 安装
v 更加详细的信息
h 打印 ,显示安装进度
安装过程 第一个 100% 表示完成安装准备工作
第二个100% 才是完成安装
2 安装完程序之后,可以通过一下命令控制服务进程
service 服务名 start|stop|restart|status(查看服务状态)
3 升级命令
rpm -Uvh 包全名
大写 U 表示 如果软件没有 安装,则直接安装最新版
rpm -Fvh 包全名
大写F 表示 如果软件没有安装,则不会安装
4 卸载命令
rpm -e 包名
rpm 支持 使用 -nocteps 选项,即 不检测依赖性直接卸载,但是不推荐该方式,容易导致其他软件无法使用
5 查询命令
rpm [选项] 查询对象
-q 表查询 (query)
-qa 表示找到含有包名的所有软件包 (query | all)
-qi 表 软件的信息 (query| information)
-qip 表查询未安装的软件包 (query|information|package)
-ql 表 列出软件包所有文件的安装目录 (query|list)
若想列出 未安装软件包的所有文件以及 其安装路径,则:
-qlp
-qR 查询包名的其他依赖包 (requires)
反向查询,格式:
(-qf 系统文件名) 用于查询某个文件所属哪个rpm 软件包
拓展:
-qRp P:自己理解
第五小节 入口:shell基础
网友评论