文章目录
前言
Linux身为一个操作系统,那么必然会有应用程序的存在,就像我们所熟知的windows操作系统一样,只不过Linux中的应用程序并非像windows一样用鼠标咔咔几下就能下载安装,所以在这里就不得不提到rpm和yum的存在。
一、应用程序基础
1.rpm概述
rpm包管理工具,全称:Red-Hat Package Manager
由red had公司提出,被众多linux发行版所采用,建立统一的数据文件,详细记录软件包安装、卸载等变化信息,自动分析软件包依赖关系。
功能:可以查询、验证rpm软件包的相关信息,安装、升级、卸载rpm软件包维护rpm数据库信息等综合管理操作
简单来说就是用于互联网下载包的打包及安装工具,它生成具有.rpm扩展名的文件。
它的一般格式为:bash-4.1.2-15.el6_4.x86_64.rpm

2.应用程序与系统命令的关系
| 角色 | 系统命令 | 应用程序 |
|---|---|---|
| 文件位置 | 一般在/bin和/sbin目录中,或为shell内部指令 | 通常在/usr/bin、/usr/sbin、/usr/local/bin和/usr/local/sbin |
| 主要用途 | 完成对系统的基本管理工作,例如IP配置工具 | 完成相对独立的其他辅助任务,例如网页浏览器 |
| 适用环境 | 一般只在字符操作界面中运行 | 根据实际需要有些程序可在图形界面中运行 |
| 运行格式 | 一般包括命令字、命令选项和命令参数 | 通常没有固定的执行格式 |
3.典型应用程序的目录结构
| 文件类型 | 保存目录 |
|---|---|
| 普通执行程序文件 | /usr/bin |
| 服务器执行程序文件和管理程序文件 | /usr/sbin |
| 应用程序配置文件 | /etc |
| 日志文件 | /var/log |
| 应用程序参考文档文件 | /usr/share/doc |
| 应用程序手册页文件 | /usr/local/share/man |
4.常见软件包封装类型
| 文件类型 | 保存目录 |
|---|---|
| RPM软件包 | 扩展名为".rpm"“RHEL”“CENTOS”“FEDORA” |
| DEB软件包 | 扩展名为".deb" |
| 源代码软件包 | 一般为".tar.gz"、".tar.bz2"等格式的压缩包,包含程序的原始代码 |
| 绿色免安装的软件包 | 软件包的扩展名不一,以TarBall的居多,在压缩包内提供已编译好的执行程序文件,解开压缩包后的文件即可直接使用 |
二、RPM的应用
1.查询已安装的rpm软件信息
rpm -q [子选项] [软件名]
rpm -q elinks

常用选项:
| -q | 软件名查询指定软件是否已安装 |
|---|---|
| -qa | 显示当前系统中以rpm方式安装的所有软件列表 |
| -qi | 显示已安装的指定软件的详细信息 |
| -ql | 显示已安装的指定软件文件的列表 |
| -qf | 通过路径查找软件包 |
| -qF | 查询已安装的指定软件属于哪个安装包 |
| -qc | 列出已安装的指定软件的配置文件 |
| -qd | 列出已安装的指定软件包文档所在的位置 |
| -qR | 列出已安装的指定软件的以来的软件包及文件 |
2.查询未安装的rpm软件包文件中信息
rpm -ap[子选项] rpm包文件
rpm -qpi /mnt/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm

常用选项:
| -qpi | 查看软件包的详细信息 |
|---|---|
| -qpl | 查看软件包所包含的目录和文件 |
| -qpc | 查看软件包的配置文件(若没有,则标准输出就为空) |
| -qpd | 查看软件包的文档所在的位 |
3.安装、升级、卸载rpm软件包
rpm 【】选项 rpm包文件
rpm -ivh /mnt/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm

常用选项:
| -i | 安装新的rpm包 |
|---|---|
| -U | 没有安装过的包则进行安装 |
| -F | 升级某个软件包或没有安装过的则放弃安装 |
| rpm -e 软件名 | 卸载指定的软件包 |
| - -force | 强制某个软件包安装 |
| - -nodeps | 安装升级卸载一个软件包 |
| -h | 以#号显示安装进度 |
| -v | 显示软件安装包过程的详细信息 |
三、YUM的应用
1.YUM概述
YUM,全称Yellow dog Updater Modified,起初是由yellow dog这一发行版的开发者Terra Soft研发,用python写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke开发团队进行改进,遂有此名。
yum的宗旨是自动化地升级,安装/移除rpm包,收集rpm包的相关信息,检查依赖性并自动提示用户解决。它能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
2.yum操作命令
| yum -y install | 安装、升级软件包,"-y"选项表示自动确认 |
|---|---|
| yum -y remove | 卸载软件包,可自动解决其依赖关系 |
| yum -y update | 升级软件包 |
| yum list | 查询软件包列表 |
| yum list installed | 查看系统中已安装的软件包 |
| yum list available | 查看仓库中未安装的软件包 |
| yum list updates | 查看可升级版本的软件包 |
| yum info | 查询软件包的描述信息 |
| yum search [all] | 根据某个关键词来查找相关的软件包 |
| yum whatprovides | 查询命令属于哪个软件包 |
3.yum本地源配置
记得进入虚拟机设置进行连接

cd /etc/yum.repos.d/ (先进入repos.d)

mount /dev/sr0 /mnt/ (把光盘挂载到/mnt目录下)

mkdir repos.bak (创建目录备份)

mv *.repo repos.bak/ (把centos下面的所有东西迁移到repos)

vim local.repo (进入vim编辑器)

yum clean all && yum makecache 删除yum缓存并更新

三、源代码编译
1.源代码编译概述
源代码安装可以获得最新的软件版本,及时修复bug,最主要的是它可以根据用户需要,灵活定制软件功能。就比如在安装较新版本的应用程序、安装的程序无法满足需要或者为应用程序添加新的功能时。
Tarball封包以.tar.gz和.tar.bz2格式居多,源代码编译环境也需要确认安装支持C/C++程序语言的编译器,如:gcc、gcc-c++、make…
2.编译安装的基本过程
(1)tar解包 (用于解压并释放源代码到指定的目录)
(2)配置软件模块 (设置安装目录、安装模块等选项)
(3)make编译 (用于生成可执行的二进制文件)
(4)make install安装 (复制二进制文件到系统,配置应用环境)


ps:如果有httpd服务可输入yum -y remove httpd进行卸载httpd服务


总结
rpm在软件依赖包的问题上比较麻烦,相比较而言yum的自动处理依赖性关系,并且一次安装所有依赖的软件包功能就比较方便
挂载之前一定要记得去虚拟机中开启设备状态的连接,这一步虽然很简单,但很容易忘记。源代码编译的安装需要把编译器和依赖包记着,实在不行写在本子上也行。
tab的补全命令要学会经常使用,它的帮助可以省略很多事情。
586

被折叠的 条评论
为什么被折叠?



