目录
5.1 YUM(Yellow dog Updater,Modified)
一.典型应用程序的目录结构
文件类型 | 保持目录 |
普通执行程序文件 | /usr/bin |
服务器执行程序文件和管理程序文件 | /usr/sbin |
应用程序配置文件 | /etc |
日志文件 | /var/log |
应用程序参考文档文件 | /usr/share/doc |
二. 常见的软件包封装类型
文件类型 | 保存目录 |
RPM软件包 | 扩展名为“.rpm” |
DEB软件包 | 扩展名为“.deb” |
源代码软件包 | 一般为“.tar.gz”、“.tar.bz2”等格式的压缩包 包含程序的原始代码 |
绿色免安装的软件包 | 软件包的扩展名不一,以TarBall格式的居多 在压缩包内提供已编译好的执行程序文件 解开压缩包后的文件即可直接使用 |
1. RPM包 : RPM Package Manager的缩写 是红帽公司自主研发的一款工具,实用性强。RPM包是预先在linux机器上编译好并打包好的文件,安装起来非常快捷。但是也有一些缺点,比如安装的环境必须与编译时的环境一致或者相当;包与包之间存在相互依赖的情况。
2. DEB包:在Linux系统中类似于windows中的软件包(exe),几乎不需要什么复杂的编译即可通过鼠标点击安装使用。此外,deb广泛应用于越狱后iOS软件及MeeGo(含Maemo软件)中。Debian包是将包的文件信息以及包内容,经过gzip和tar打包而成。
3. 源代码软件包 :是需要我们自己把源代码编译成二进制的可执行文件。如果你读得懂这些源代码,那么你就可以去修改这些源代码自定义功能,然后再去编译成你想要的。使用源码包的好处除了可以自定义修改源代码外还可以定制相关的功能,因为源码包在编译的时候是可以附加额外的选项的。
4. 绿色免安装的软件包 :顾名思义自行理解比如Windows的截图软件。
三.rpm命令的格式
RPM软件可以实现几乎所有的功能,新增,删除,更新等
3.1 查询已安装的软件包
选项 | 功能效果 |
rpm -qa(all) | 显示当前系统中以 RPM 方式安装的所有软件列表 |
rpm -q 软件名 | 查询指定软件是否已安装 |
rpm -qi 软件名 | 查看指定软件包的名称、版本、许可协议、用途描述等详细信息 |
rpm -ql(list) 软件名 | 显示指定的软件包在当前系统中安装的所有目录、文件列表 |
rpm -qc (configfiles ) 软件名 | 列出已安装的指定软件的配置文件 |
rpm -qd(docfiles) 软件名 | 列出已安装的指定软件的软件包文档所在位置 |
rpm -qR (requires) 软件名 | 列出已安装的指定软件的依赖的软件包及文件 |
rpm -qf(file) 软件名 | 查看指定的文件或目录是由哪个软件包所安装的 |
rpm-qpd | 查询未安装指定软件包的文档位置 |
rpm -qpi | 查询未安装指定软件包的完整名称详细信息 |
rpm -qpl | 查询未安装指定软件包的文件列表 |
rpm -qpc | 查询未安装指定软件包的配置文件位置 |
3.2 安装卸载升级命令
格式:rpm [选项] rpm软件包
选项 | 效果 |
-i | 安装一个新的RPM软件包 |
-U | 升级某个软件包,若未安装过则进行安装 |
-F | 升级某个软件包,若未安装过则直接结束 |
-h | 在安装或升级过程中已#号显示读条 |
-v | 强制安装某个软件包 |
--force | 强制安装某个软件包 |
-e 软件名 | 卸载指定的软件 |
--nodeps | 在安装或升级、卸载一个软件包时,不检查与其他包的依赖关系 |
安装路径 | 含 义 |
/etc/ | 配置文件安装目录 |
/usr/bin/ | 可执行的命令安装目录 |
/usr/lib/ | 程序所使用的函数库保存位置 |
/usr/share/doc/ | 基本的软件使用手册保存位置 |
/usr/share/man/ | 帮助文件保存位置 |
四. 编译安装
大部分是c语言开发的,更方便的使用
软件版本比较新,新功能,修复bug
可以自行定义配置文件的路径
源码可能有100个功能,红帽认为你可能不需要会自行处理砍掉,自行定制50
总结来说,编译安装自由度高,可以安装较新版本。
4.1 程序包编译安装
源代码-->预处理-->编译-->汇编-->链接-->执行
多文件:文件中的代码之间,很可能存在跨文件依赖关系。
虽然有很多开源软件将软件打成包,供人们使用,但并不是所有源代码都打成包,如果想使用开源软件,可能需要自已下载源码,进行编译安装。另外即使提供了包,但是生产中需要用于软件的某些特性,仍然需要自行编译安装。但是利用源代码编译安装是比较繁琐的,庆幸的是有相关的项目管理工具,可以大大减少编译过程的复杂度。
4.2 编译安装的实施
第一步:首先这里我选择自建一个空目录来进行我们的安装操作,然后在自建目录下去下载我们所需要软件的源代码包,进行解压操作,具体如下图:
第二步:解压之后,切换到解压后的目录中,在该目录内安装编译环境所需要的包,具体如下图:
第三步:这时候就可以开始我们的编译安装真正的实施啦操作了。编译安装这里会有三小步,具体详解如下图:
五. yum 安装
5.1 YUM(Yellow dog Updater,Modified)
yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间
5.2 YUM项目的实施
步骤详解:
第一步:使用mount命令挂载光驱到/mnt目录下,具体操作如下图:
第二步:我们通常会在yum目录中把网络源统一移进一个我们在其下建的子目录下,这一步主要是为了减少网络源对我们的干扰,具体操作如下图:
第三步:创建本地YUM源,注意baseurl的路径指向光驱挂载的目录下,具体操作如下图:
第四步:清除旧缓存,生成新缓存,具体操作如下图:
第五步:这个时候我们就可以安装我们所需要的软件了。