软件安装

一、Linux中软件安装包的类型

软件安装包可以大致分为三类

rpm包是Redhat Linux提供的一种包封装格式,包的管理工具yum
dpkg包是Debain Linux提供的一种包封装格式,包的管理工具apt-get
tar包是使用UNIX系统的打包工具tar打包的

按照安装类型的不同,软件安装包可以分为两种类型:
1、绿色软件:解压后可以直接运行
2、源码编译:解压后还需要使用编译器将其编译成为可执行文件

  • rpm软件安装包
    例如在浏览器中下载wps办公软件,会提醒下载哪一种类型的安装包,我们当前所使用到的是红帽Linux,所以选择rpm格式安装包,这种安装包是可以通过命令直接进行安装的
    在这里插入图片描述
  • tar包
    当我们使用的U盘是ntfs格式时,需要在系统中安装ntfs-3g的软件,才能够识别这种格式的U盘,我们从浏览器上下载的这个软件是压缩包的格式,可以看到里面包含一个名为configure的文件,这个文件是用来检测系统环境的。这样的安装包就很有可能是一个源码包,需要对它进行编译以后再安装
    在这里插入图片描述查看源码包中包含的内容:将压缩包解压并查看其中包含的内容
    在这里插入图片描述读取其中文件README中包含的内容
    在这里插入图片描述在这里插入图片描述其中
    ./configure :检测系统环境
    make :编译
    make install :用编译后的规则进行安装
    执行第一步./configure检测系统环境出现错误,缺少C的编辑器
    在这里插入图片描述
    安装yum源仓库并下载gcc
    在这里插入图片描述

安装完成后再次执行./configure检测环境后目录中多了一个文件
在这里插入图片描述
再执行make进行编译
最后make install进行安装
在系统中插入一个ntfs格式的移动硬盘,默认情况下系统不能够识别
在这里插入图片描述通过命令可以将这个设备挂载到/mnt中
在这里插入图片描述这样系统就能够设别ntfs设备了

二、rpm安装包名称分析

例如dhcp软件的安装包名称为
在这里插入图片描述
名称中主要包含5部分的信息,但是并不是所有的rpm软件包都包含这5部分,有可能授权被隐藏了,或者此处的软件名称和安装后的软件名称不一致

dhcp软件名称
4.2.5.-68软件的版本
el7_5.1软件的授权/协议
x86_64标明软件位数
rpm后缀,表明软件是rpm类型

三、rpm命令

在管理rpm软件包时需要用到rpm命令,包含的主要参数如下表:

-ivh安装
-ivh中的-i安装
-ivh中的-v显示过程
-ivh中的-h做哈希校验,查看软件中的hash值是否有改变
-e卸载
-qa查看所有
-l列出安装后在系统中生成的文件
-p查看安装包
- -scripts查看软件在安装或者卸载时系统中执行的脚本
- -force强制安装(不能忽略依赖性)
- -nodeps忽略依赖性安装
-K检测软件是否为原版软件

找到镜像中包含的系统资源
在这里插入图片描述示例1:安装dhcp软件
在这里插入图片描述
示例2:查看系统中所有已经安装过的安装包
在这里插入图片描述
示例3:查看系统中所有已经安装好的安装包数量
在这里插入图片描述
示例4:查看dhcp是否已经安装完成
在这里插入图片描述
示例6:卸载rpm软件,注意:此处卸载软件的名称是用grep过滤得到的名称
在这里插入图片描述示例7:安装过程中只添加参数-i,没有校验过程
在这里插入图片描述示例7:安装过程中添加参数-ih,有校验过程,可以查看软件中的内容有没有被篡改
在这里插入图片描述示例8:查询软件包在安装后的名称
在这里插入图片描述示例9:查询软件包在安装后会生成什么文件
在这里插入图片描述示例10:查看软件在安装或者卸载时在系统中执行的脚本
在这里插入图片描述示例11:明确查看系统在安装或者卸载时在系统中执行脚本的重要性,安装FluffyMcAwesome-A-6.4.0-11.r19335.x86_64.rpm时,会在系统中添加一个用户ID为0的用户FluffyMcAwesome,也就是窃取了超级用户的身份,并且卸载时会将/下的所有东西清空,对系统造成损害,所以这个软件不能安装
在这里插入图片描述示例12:强制安装
当我们在系统安装完成了一个软件后不小心删除了这个软件配置文件所在目录或者软件受损后不能正常使用,就需要重新安装软件,但是重新安装时会提示这个软件已经安装过了,所以就需要强制安装一次
在这里插入图片描述在这里插入图片描述
示例13:忽略依赖性安装
当安装软件kolourpaint-4.10.5-4.el7.x86_64.rpm 时,直接安装会出现下图所示情况,会提示很多软件依赖性条目
在这里插入图片描述忽略依赖性安装
在这里插入图片描述但是,安装后的软件是不能用的,因为忽略了很多软件安装依赖性
示例14:检测软件MD5是否正确。在安装包dhcp-4.2.5-68.el7_5.1.x86_64.rpm 中追加内容改变安装包中的内容,检测安装包结果为MD5 NOT OK
在这里插入图片描述

四、yum软件仓库

搭建yum仓库的目的:rpm不能解决软件的依赖关系,而yum仓库可以解决此问题
搭建步骤(在rhel7中):
1、得到与当前系统匹配的系统安装镜像文件
2、建立系统安装镜像挂载点
在这里插入图片描述
3、挂载镜像到挂载点
在这里插入图片描述
4、配置系统访问软件路径
在这里插入图片描述
在文件zhuang.repo中写入内容
在这里插入图片描述

[zhuangrhel7]指定仓库名称
name=zhaung rhel7 source仓库描述
baseurl=file:///softwaresource资源路径
gpgcheck=0不检测软件是否授权
gpgcheck=1检测软件是否被授权
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release软件包授权码
enabled=1软件仓库被启用(默认值为1)
enabled=0软件仓库不被启用

5、对原仓库清空并且加载新的yum软件仓库
在这里插入图片描述当不启用软件仓库时
在这里插入图片描述
在这里插入图片描述检测软件是否被授权,在安装过程中会出现是否检测授权码的询问
在这里插入图片描述
在这里插入图片描述在这里插入图片描述6、安装之前存在依赖性问题的httpd软件,能够安装成功
在这里插入图片描述在这里插入图片描述
搭建步骤(在rhel8中):
1、得到与当前系统匹配的系统安装镜像文件
2、建立系统安装镜像挂载点
在这里插入图片描述
3、挂载镜像到挂载点
在这里插入图片描述
4、配置系统访问软件路径
在这里插入图片描述
在文件zhuang.repo中写入内容
在这里插入图片描述5、对原仓库清空并且加载新的yum软件仓库
在这里插入图片描述

五、yum命令

yum后可以接的参数

install安装
remove卸载
reinstall重新安装
list列出
update更新
repolist列出仓库信息
history查看yum历史
info查看软件包信息
clean all清楚yum缓存
search根据软件信息搜索
whatprovides根据软件包含文件搜索
groups install组安装
groups remove组卸载
groups info组信息

示例1:安装
在这里插入图片描述示例2:卸载
在这里插入图片描述示例3:重新安装
在这里插入图片描述示例4:列出所有已经安装的软件
在这里插入图片描述示例5:列出所有可以安装的软件
在这里插入图片描述示例6:列出指定软件的信息
在这里插入图片描述示例7:列出所有已经安装过和可以安装的
在这里插入图片描述
示例8:列出仓库信息
在这里插入图片描述示例8:列出仓库历史:只显示更新,安装和卸载
在这里插入图片描述示例9:查看历史详细信息
在这里插入图片描述示例10:根据软件信息搜索
在这里插入图片描述示例11:根据软件包含文件搜索
当删掉/bin/date时不能通过date查看时间,通过搜索文件名称找到对应软件名称
在这里插入图片描述
在这里插入图片描述重新安装软件
在这里插入图片描述执行date命令
在这里插入图片描述
示例12:列出所有的组
在这里插入图片描述

五、第三方软件仓库

步骤1:把所有要安装的以rpm结尾的软件包存放到一个目录中。这个目录中的文件只能以rpm结尾
在这里插入图片描述步骤2:在yum仓库指向文件中写入内容
在这里插入图片描述
步骤3:在系统中搜索软件发现软件还是不存在
在这里插入图片描述在系统资源中有一个非常重要的目录repodata,其中包含xml文件
查看文件中的内容,其中包含软件安装包的详细内容。由于光盘镜像中存在这样的文件而我们指定的第三方软件的目录中没有这样的文件,所以不能称之为第三方软件仓库,需要把这样的文件建立出来
在这里插入图片描述在这里插入图片描述步骤4:对目录中的所有软件包进行扫描,生成上述所需文件
在这里插入图片描述在这里插入图片描述步骤5:重新加载新的yum软件仓库,查找kolourpaint在这里插入图片描述

六、共享软件安装仓库

一、软件安装仓库支持的访问方式

file://本地文件
ftp://ftp(File Transfer Protocol)文件传输协议
http://超文本传输协议
nfs:网络文件系统

在企业中,ftp文件传输协议使用的非常多。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
二、搭建共享软件安装仓库
步骤1:在含有软件资源的主机中安装共享资源软件vsftpd
在这里插入图片描述步骤2:关闭selinux以及firewalld
SELinux「Security-Enhanced Linux」是强制访问控制安全系统,当我们搭建共享软件仓库时需要将此功能关闭,否则会阻止资源共享行为。同时系统中的火墙也需要关闭
可以用getenforce来查看当前系统中selinux的状态,默认情况下是开启的,更改配置文件并重新启动系统,使得selinux关闭
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
关闭火墙并设置为开机不启动
在这里插入图片描述步骤3:建立共享目录
当含有软件资源的服务端安装了共享软件后并不会将服务器中所有的资源全部共享出去,默认客户端只能够访问/var/ftp中的内容,所以需要在此路径中建立共享目录
在这里插入图片描述
步骤4:挂载系统安装镜像资源到/var/ftp/rhel7
在这里插入图片描述
在这里插入图片描述
步骤5:将所有的第三方软件放在/var/ftp/software中
在这里插入图片描述步骤6:在客户端测试
在服务端中打开共享资源vsftpd
在这里插入图片描述在客户端浏览器中通过文件传输协议可以看到服务端的资源
在这里插入图片描述设置服务端访问资源方式路径
在这里插入图片描述
在这里插入图片描述在这里插入图片描述完成上述步骤以后在客户端也有了yum软件仓库以及第三方软件仓库

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值