我和小伙伴们今天来探讨下安装及管理程序的知识点 1.Linux应用程序基础 2.查询软件包信息 3.安装、升级、卸载、软件包 4.源代码编译安装(源代码编译安装了解即可) TIP: yum仓库能让软件安装更加流畅。
一、Linux应用程序基础
■应用程序与系统命令的关系 ●文件位置 系统命令: -般在/bin和/sbin目录中, 或为Shell内部指令 应用程序:通常在/usr/local目录中 ●主要用途 系统命令:完成对系统的基本管理工作,例如IP配置工具 应用程序:完成相对独立的其他辅助任务,例如网页浏览器 ●适用环境 系统命令: 一般只在字符操作界面中运行 应用程序:根据实际需要,有些程序可在图形界面中运行 ●运行格式 系统命令: 一般包括命令字、命令选项和命令参数 应用程序:通常没有固定的执行格式
TIP:环境变量知道命令所存放的位置
■典型应用程序的目录结构 1.文件类型普通执行程序文件:/usr/bin 2.服务器执行程序文件和管理程序文件:/usr/sbin 3.应用程序配置文件:/etc 4.日志文件:/var/log 5.应用程序文档文件:/usr/share/doc 6.应用程序手册页文件:/usr/share/man
软件包简介: 1.全称:RMP Package Manager 2.由Red Hat公司提出,被众多Linux发行版所采用 3.建立统一的数据文件 4.详细记录软件安装、卸载等变化信息 5.自动分析软件包依赖关系
软件素材参考、一般命名格式:
二、查询软件包信息
查询已安装的软件包信息 rpm -q 【子选项】 【软件名】 常用选项 -qa -qi -ql -qf -qc -qd 查询未安装的软件包文件中信息 rpm -qp【子选项】 软件包文件 常用选项 -qpi -qpl -qpc -qpd
-qa:检查已安装的所有软件包 -qi:检查某个软件包详情 Ql:软件包包含了哪些内容 -qc:检查当中的配置文件 -qf:检查有多少文件 -qd:检查文档手册
三、安装、升级、卸载、RPM软件包
摘要:Mnt/package目录放软件包。 官方提供yum源给yum仓库,yum源是软件包的存放地点,Yum install就可以解决依赖关系
1.安装或升级软件包 rpm 【选项】 rpm包文件 ...... -i:安装软件包 -u:更新软件包 -F:检查文件目录属于哪个安装包 Man--rpm:告诉你软件包具体信息以及如何去使用。
2.卸载指定的软件包 -e:卸载已安装包 ---force:强制执行 --nodeps:解决依赖关系 -h:友好显示 -v :显示过程
用软件包命令更新软件包,突然关机,数据库可能丢失。此时需重建RPM数据库: 小结: 1.学会使用软件包命令查询软件包信息的常用选项; 2.熟练掌握使用软件包命令安装、升级、卸载软件包的常用选项。
四、源代码编译安装(目前了解即可,日后会提及)
源代码编译概述 1.■使用源代码安装软件的优点 ●获得最新的软件版本,及时修复bug ●根据用户需要, 灵活定制软件功能 2.■应用场合举例 ●安装较新版本的应用程序时 ●当前安装的程序无法满足需要时 ●需要为应用程序添加新的功能时
运用
打开centos虚拟系统,用xshell软件连接上linux系统(没有安装软件的小伙伴去我之前的博客中找到安装路径,并按照我所总结的安装流程,把软件安装好),输入命令查看到已安装软件包为1324个。
所有的软件包都放在yum仓库中,仓库中的软件包都会实时更新,所以用yum安装软件包安装的都是最新软件包。我们来看一下内中乾坤,这时要输入“yum.list”查看具体信息。
官方会对更新软件包去维护,那问题来了,它的官方地址在哪?接下来,我们一起来探索它的地址究竟躲在哪了。 先输入一波命令,查看etc目录下详情:
找到源配置地点后,进入其中。里面的文件后缀都是repo。 进入centos-Base.repo中,会有各种路径,连接着官网的服务器。但缺点就是:只有在有网的时候才可以安装,没网就不行。
先来安装httpd的软件包,用yum安装系统自动解决依赖问题(非常友好)。
安装成功后,先开启httpd服务,然后把防火墙暂时关闭(不关的话会被拦截),最后把增强安全功能关闭(即置0) 用系统的ip地址在宿主机上进行查询,发现可以浏览到Apache的网站,即我们的httpd软件包安装成功。 以上软件包的安装均是在有网环境下进行。那么,问题来了,假设我们处在一个没有网络的环境中,系统是否可以在没有网络的情况下进行软件包的安装呢? 现在我来为大家揭晓如何在没网时安装软件包,如何给它建立一个yum仓库。 首先把centos系统设置成仅主机模式,在此模式下系统不能上网,只能与宿主机、宿主机中的虚拟机进行通讯。
进系统发现没有ip地址,我们来给系统配一个静态地址。 输入命令:vim /etc/sysconfig/network-scripts/ifcfg-ens33回车。 进入到网络状态下,先配置静态模式,以及ip地址、掩码和网关,完成后保存退出。退出后千万千万千万不要忘了重启网络服务,命令:service network restart回车。 查看系统ip地址:
现在是没网状态,使用yum clean all清除yum仓库的缓存。再运行yum list会有各种错误。我们现在要用到镜像安装包,还要给它建一个yum仓库。我们回到系统的设置上来,给它配置镜像文件(用原来的镜像即可): 输入命令df -h查看镜像是否挂载进来:
由上图可知,镜像文件在光驱里,那么光驱在哪呢?它在dev设备文件下。现在要把光驱挂载到一个我设置的mnt空目录当中。
查看mnt目录下,镜像文件都在这里,软件包都在packages下。
我们进packages中看一下,里面全是软件包。 在packages目录下找出vim的工具,然后使用卸载命令删除vim-enhanced-7.4.160-2.el7.x86-64文件,再用下载命令下安装及管理程序 总结:软件包在进行卸载、下载时会存在依赖关系,解决依赖关系的途径为yum仓库,在断网情况下,yum仓库又显示不出来。那么我们现在就要把刚刚的packages做成yum仓库。(此为断网下安装软件包最优方法,即创建私有yum仓库) 进入/etc/yum.repos.d目录下创建私有yum库,建好后保存退出: 完成后查看yum仓库: 将删除的httpd文件全部安装上去: 安装完毕后,
安装成功后,先开启httpd服务,然后把防火墙暂时关闭(不关的话会被拦截),最后把增强安全功能关闭(即置0)。即可以ping通外界设备。 总结: 1.有线安装软件包速度快,一旦没网离线时,就得自己创建私有yum仓库。 2.离线安装完全依赖于镜像文件(服务器一般都全程在线,很少情况下会没网掉线)。