文章目录
Linux中应用的安装以及管理程序
一、linux 应用程序基础
1.1、应用程序与系统命令的关系
角色 | 系统命令 | 应用程序 |
---|---|---|
文件位置 | 一般在/bin和/sbin目录中,或为Shell内容指令 | 通常在/usr/bin和/usr/sbin目录中 |
主要用途 | 完成对系统的基本管理工作,例如IP配置工具 | 完成相对独立的其他辅助任务,例如网页浏览器 |
适用环境 | 一般只在字符操作界面中运行 | 根据实际需要,有些程序可在图形界面中运行 |
运行格式 | 一般包括命令字、命令选项和命令参数 | 通常没有固定的执行格式 |
1.2、典型应用程序的目录结构
文件类型 | 保存目录 |
---|---|
普通执行程序文件 | /usr/bin |
服务器执行程序文件和管理程序文件 | /usr/sbin |
应用程序配置文件 | /etc |
日志文件 | /var/log |
应用程序参考文档文件 | /usr/share/doc |
应用程序手册页文件 | /usr/local/share/man |
1.3、常见的软件包封装类型
文件类型 | 保存目录 |
---|---|
RPM软件包 | 拓展名为.rpm |
DEB软件包 | 拓展名.deb |
源代码软件包 | 一般为.tar.gz、.tar.bz2等格式的压缩包包含程序的原始代码 |
绿色免安装的软件包 | 软件包的拓展名不一,以TarBall格式的居多 在压缩内提供已编译好的执行程序文件 解开压缩包的文件即可直接使用 |
1.4、RPM包管理工具
rpm命令能够实现几乎所有对RPM软件包的管理功能
rpm命令功能
查询、验证RPM软件包的相关信息
安装、升级、卸载RPM软件包
维护RPM数据库信息等综合管理操作
查看已安装的RPM软件信息
rpm -q选项 软件名
-qa 显示当前系统中以rpm方式安装的所有软件列表
-q 查询指定软件是否已安装
-qc 列出已安装的指定软件的配置文件
-ql 显示已安装的指定软件的文件列表
-qd 列出已安装的指定软件的软件包文档所在位置
-qi 显示已安装的指定软件的详细信息
-qF 查询已安装的指定软件属于哪个安装包
-qf 查询这个文件或目录属于哪个安装包内容
-qR 列出已安装的指定软件的依赖的软件包及文件
查看未安装的RPM软件包文件中信息
rpm -qp子选项 PRM包文件
-qpc 查看指定软件包的配置文件
-qpl 查询指定软件包的文件列表
-qpd 查询指定软件包的软件包文档的位置
-qpi 查询指定软件包的详细信息
安装、升级、卸载RPM软件包
rpm 选项 软件包
-i:安装一个新的PRM软件包
-U:升级某个软件包,若未安装过,则进行安装。
-F:升级某个软件包,若未安装过,则放弃安装。
-h:在安装或升级软件包的过程中,以“#”号显示安装进度
-v:显示软件安装过程中的详细信息。
--force:强制安装某个软件包,比如要安装版本更旧的软件包
-e:卸载指定名称的软件包。
--nodeps:在安装或升级、卸载一个软件包时,不检查与其他 软件包的依赖关系。
常用组合:
rpm -ivh 安装
rpm -evh 删除
解决软件包依赖关系方法
安装有依赖关系的多个软件时,被依赖的软件包需要先安装,可同时指定多个.rpm包文件进行安装
卸载有依赖关系的多个软件时,依赖其他程序的软件包需要先卸载,可同时指定多个软件名进行卸载
忽略依赖关系
结合“–nodeps”选项,但可能导致软件异常
二、本地yum仓库设置
什么是yum
yum(全称yellow dog updater,modified)是一个fedora和redhat以及centos中的shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖关系,并且一次安装所以依赖的软件包,无须繁琐的一次次下载、安装。
yum能干什么
yum主要可以自动处理安装包的依赖关系,简化安装步骤,类似windows中的一键安装。
2.1、yum常用的操作命令:
yum -y insatll 软件名 //安装、升级软件包,-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 //查询命令属性哪个软件包
2.2、yum源
yum源就是一个软件集合地,你只需要搜索并安装你想要的软件,它会帮你解决大部分软件的依赖问题。
如图:centos 7.6中的部分yum源
2.3、本地yum源
yum源虽然可以简化我们在Linux上安装软件的过程,但是yum的公共仓库是需要联网的,通常生产环境中又无法上网,不能连接公网上的yum源,所以就无法使用yum通过公共仓库安装软件。为了在内网中也可以使用yum安装相关软件,就需要配置本地yum源。
本地yum源原理如图:
2.4、配置本地yum源
(1)挂载镜像文件到目录中,以光盘挂载为例挂载在/mnt下
mount /dev/cdrom /mnt
挂载后查看,挂载目录是否有文件:
(2)为了可以改会,建议备份原yum源配置文件,yum源配置文件在/etc/yum.repos.d/中
mkdir bak
mv *.repo bak
(3)创建并配置本地yum源配置文件
vim loacl.repo
输入一些内容:
[local] //本地仓库类别
name=local //本地仓库名
baseurl=file:///mnt //指定url(路径位置)访问路径为光标挂载目录/mnt
enabled=1 //使能此yum源配置
gpgcheck=0 //不验证软件包的签名
(4)清除yum的缓存,并跟新缓存使yum指向本地仓库
yum clean all && yum makecache
(5)验证本地yum源是否成功
先断网
ifdown ens33 //断开ens33网卡
ifup ens33 //连接ens33网卡
如果使用Xshell连接的,建议到本机上进行,断开网卡后,会断开Xshell连接
三、源代码编译安装
源代码安装的优点:
获得最新的软件版本,及时修复bug
根据用户需要,灵活定制软件功能(类似为主程序安装插件)
适用环境:
需要安装新版本的应用程序(尚未有yum安装包)
当前安装的程序无法满足需要时
需要为应用程序添加新的功能时
源代码编译安装环境
正常大环境:编译安装需要安装支持c / c++程序语言的编译器,gcc 、gcc-c++、 make