一、应用程序与命令系统的关系
二、典型应用程序的目录结构
三、常见的软件包封装类型
四、RPM软件包管理工具
4.1RPM概述
RPM软件包管理器Red-Hat package Manage
由Red Hat公司提出, 被众多Linux发行版所采用
建立统一的文件数据库
详细记录软件包安装、卸载、升级等变化信息
自动分析软件包依赖关系
保持各应用程序在一个协调、有序的整体环境中允许
4.2RPM命令的功能
rpm命令能够实现几乎所有对RPM软件包的管理功能
执行"man rpm"命令可以获得关于rpm命令的详细帮助信息
查询、验证RPM软件包的相关信息
安装、升级、卸载RPM软件包
维护重建RPM数据库信息等综合管理操
查询已安装的RPM软件信息
格式:rpm -q[子选项] [软件名]
[root@localhost opt]# rpm -q python python-2.7.5-76.el7.x86_64
[root@localhost opt]# rpm -q elinks lynx 未安装软件包 elinks 未安装软件包 lynx [root@localhost opt]#
常用选项
-qa 当前系统已安装的软件包查询
-qi 查看已安装的指定软件的详细信息 --info
-ql 查看已安装的指定软件包在当前系统中安装的所有目录 --list
-qc 查看已安装的指定软件的配置文件
-qd 列出已安装的指定软件的软件包文档所在位置
-qR 列出已安装的指定软件的依赖的软件包及文件
-qf 反向查看已安装的指定的文件或目录属于哪个安装包 --file
-qF 查询已安装的指定软件属于哪个安装包
查询未安装的RPM软件信息
格式: rpm -qp[子选项] rpm包文件
常用选项
-qpi 查询指定软件包的详细信息
-qpl 查询指定软件包的准备要安装的所有目录及文件列表
-qpc 查询指定软件包的配置文件
-qpd 查询指定软件包的软件包文档的位置
五、安装、升级、卸载RPM包
挂载
什么是挂载? 将硬件(比如:光盘,光驱等)挂载在目录上使用,变成文件。
mount: 你的包在你的光驱里并没有放在系统中,光盘的包只有挂载在光盘到我的系统
umount:解挂载,跟着硬件设备走,不再挂的文件下
查询挂载:df -h
格式: rpm [选项] RPM软件包 rpm -ivh RPM软件包 #安装软件包,install rpm -evh RPM软件包 #卸载软件包
常用选项
-i 安装一个新的RPM软件包。
-U 升级某个软件包,若未安装过,则进行安装。
-F 升级某个软件包,若未安装过,则放弃安装。
-h 在安装或升级软件包的过程中,以“#”号 显示安装进度。
-v 显示软件安装过程中的详细信息。
–force 强制安装某个软件包,比如要安装版本更旧的软件包
-e 卸载指定名称的软件包
–nodeps 在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系
例如:
1、需要依赖别的包,所以安装不成功
2、安装成功
3、查询是否已安装
4、卸载
六、yum源代码编译安装
1、什么是yum
yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的Shell 前端软件包管理器
基于 RPM 包管理,能够从指定的服务器自动下载 RPM
包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
1、yum和rpm的区别
yum安装源代码软件包需要编译安装,需要安装支持c和c++程序语言的编译器,如gcc、gcc-c++、make。
如果使用rpm方式安装,则需要先安装多个依赖包,这样会很繁琐。这里可以使用 yum方式进行一键安装
2、yum格式
yum [可选项] [要进行的操作] [安装包名 ...]
2、常用的yum命令
yum check-update //列出所有可更新的软件清单命令
yum update //更新所有软件命令
yum install <package_name> //仅安装指定的软件命令
yum update <package_name> //仅更新指定的软件命令
yum list // 列出所有可安裝的软件清单命令
yum remove <package_name> //删除软件包命令
yum search 查找软件包命令
清除缓存命令:
yum clean packages //清除缓存目录下的软件包
yum clean headers // 清除缓存目录下的 headers
yum clean oldheaders //清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders)
3、配置本地yum源仓库
mount /dev/cdrom /mnt/ #把光盘挂载到/mnt目录下 (前提把虚拟机光盘选项勾选已连接)
挂载 设备 目录或文件夹
mount:挂载,你的包在你的光驱里并没有放在系统中,光盘的包只有先挂载在光盘到我的系统
什么是挂载:将硬件,比如光盘、光驱等,挂载在目录上使用,变成文件
unmount:解挂载,跟着硬件设备走,不在挂在的文件下
**df -h:**查看挂载
一个挂载点同一时只能挂载一个设备
实操:
1.挂载并查看是否成功
[root@localhost ~]# mount /dev/sr0 /mnt/ //写保护,将以只读的方式挂载,挂载到/mnt目录下 [root@localhost ~]# df -Th #查看挂载
2.切换至yum.repo.d目录,新建一个文件夹,再将自带的仓库移走
[root@localhost ~]# cd /etc/yum.repos.d/ //切换至cd /etc/yum.repos.d/ [root@localhost yum.repos.d]# mkdir beifen //创建一个文件夹,名为beifen [root@localhost yum.repos.d]# mv *.repo beifen/ //把自带的仓库以.repo结尾的移到新建的beifen文件夹下
3.新建yum仓库文件
[root@localhost yum.repos.d]# vim yxp.repo //新建yum仓库文件 [song] name=song //名字任取 baseurl=file:///mnt //设置链接地址,file://是固定格式,挂在根目录下的mnt enabled=1 //开机自启 gpgcheck=0 //无需验证 [root@localhost yum.repos.d]# yum list [root@localhost yum.repos.d]# yum clean all //清除缓存
4.尝试安装