Linux —— 软件管理

 

目录

1. 软件安装包格式类型

2. rpm包名称分析

3. rpm命令

4. yum软件仓库

4.1 搭建软件仓库的目的

4.2 搭建软件仓库的步骤

5. yum命令

6. 第三方软件库

7. 共享软件仓库

7.1 实验环境

7.2 软件仓库支持的访问方式

7.3 搭建共享软件仓库的方式

7.4 建立共享目录

7.5 在共享目录中存放软件


1. 软件安装包格式类型

rpm:Red-Hat Package Manager(RPM软件包管理器)的缩写。包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用。 

deb:应用于Ubuntu和Debian系统。我们这里使用的是Redhat系统。

tar:

  • 绿色软件,调用脚本可以直接运行;
  • 源码编译,需要编译以后才可以执行。

2. rpm包名称分析

dhcp-4.2.5-68.el7_5.1.x86_64.rpm

1       2            3           4           5

软件名称:dhcp

软件版本:4.2.5-68

软件授权:el7_5.1

软件位:x86_64

软件后缀:后缀名为rpm表示该软件包为rpm类型

3. rpm命令

命令参数功能
rpm-ivh安装
 -v显示过程
 -hhash 检测查看软件中的hash值是否有改变
 -iinstall安装
 -e卸载
 -q查看
 -a所有
 -qa查看所有安装过的软件
 -l列出安装后在系统中生成的文件
 -p操作对象为软件包
 --scripts查看软件在安装或卸载时在系统中执行的脚本
 --force强制安装
 -nodeps忽略软件依赖性安装
 -K检测软件是否是原版软件

  软件包拆解方式:rpm2cpio dhcp-4.2.5-68.el7_5.1.x86_64.rpm  | cpio -id

4. yum软件仓库

yum命令是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

yum中包含了查找、安装、删除某一个、一组甚至全部软件包的命令。

4.1 搭建软件仓库的目的

由于rpm命令不可以自动处理依赖性关系,所以这里通过yum仓库来解决该问题,自动处理依赖性关系。

4.2 搭建软件仓库的步骤

  • 得到与当前系统匹配的系统安装景象文件
  • 建立系统安装景象挂载点: 
mkdir  /softwaresource
  • 挂载景象到景象挂载点:
## 两种方式
mount /rhel7-xxxxxx.xxxxxx.iso  /software   
mount /dev/cdrom                /software   

将镜像挂载到挂载点即可,在这里我通过光驱挂载

mount /dev/cdrom /softwaresource/ 

 

  • 配置系统访问软件路径(yum仓库指向文件) 
cd /etc/yum.repos.d
vim dsd.repo                                               

[dsdrhel7.6]
name=dsd rhel7.6 source                                    ## 仓库名称
baseurl=file:///softwaresource                             ## 资源路径
gpgcheck=0                                                 ## 软件包授权检测开关
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release  ## 软件包授权码
enabled=1                                                  ## 仓库启用开关
         
[dsdAppStream]
name=dsd rhel8.1 AppStream
baseurl=file:///softwaresource/AppStream
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled=1

[dsdBaseOS]
name=dsd rhel8.1 BaseOS
baseurl=file:///softwaresource/BaseOS
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled=1

  • 清空yum缓存识别新文件案内容 
yum clean all 

5. yum命令

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

 


  • yum search dhcp 

 


6. 第三方软件库

  • 把所有rpm结尾的软件包存放到一个目录/software中
mv *.rpm /software

  • createrepo -v /software  ##生成软件数据库存放软件属性

  • vim /etc/yum.repos.d/dsd.repo
[software]
name=dsd rhel7.6 source
baseurl=file:///software
gpgcheck=0
enabled=1

  • yum clean all

7. 共享软件仓库

7.1 实验环境

rhel7_node1,为共享仓库方

rhel7_node2,为接收共享仓库方

7.2 软件仓库支持的访问方式

file://         ## 本地文件
ftp://          ## 文本传输协议
http://         ## 超文本传输协议
nfs:            ## 网络文件系统

7.3 搭建共享软件仓库的方式

  • 在含有软件资源的主机中安装共享软件

  • 关闭selinux和firewald
vim /etc/sysconfig/selinux
SELINUX=disabled
reboot

 

7.4 建立共享目录

mkdir /var/ftp/rhel7.6
mkdir /var/ftp/software

7.5 在共享目录中存放软件

  • 所有第三方软件放入/var/ftp/software并执行createrepo -v /var/ftp/software
cp /software/* /var/ftp/software/   ## 将/software/目录下的所有内容复制到/var/ftp/software/中
createrepo -v /var/ftp/software/  

 

 

  • 挂载系统zhong安装镜像资源到/var/ftp/rhel7.6
mount /dev/cdrom /var/ftp/rhel7.6   ## 使用此命令将系统镜像临时挂载到/var/ftp/rhel7.6处
vim /etc/rc.d/rc.local              ## 永久挂载系统安装镜像资源到/var/ftp/rhel7.6处,并将上命令添加到其中。
chmod 755 /etc/rc.d/rc.local        ## 增加执行权限,要不然无法生效。

 

 

 

  • 在rhel_node2中测试
ftp://192.168.43.10/software/   ## 显示资源
ftp://192.168.43.10/rhel7.6/    ## 显示资源

 

但是,这个时候我们去通过yum repolist查看仓库中还是没有信息

接下来我们给rhel7.6_node2中配置信息,读取共享软件仓库信息,如下步骤: 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值