(八)Linux系统中的软件管理

本文详细介绍了Linux系统中软件管理的相关内容,包括软件包的类型如DEB和RPM,软件包的名称结构解析,rpm命令的使用,如何搭建本地软件仓库以及构建网络共享型仓库,还涉及dnf命令管理和epel扩展源的安装与应用。通过实例操作,演示了如何在Linux环境中进行软件的安装、卸载、查询等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

###1.Linux中软件包的类型###

###2.软件包的名称结构###

###3.rpm命令管理软件包###

###4.本地软件仓库的搭建###

###5.构建共享型网络软件仓库###

###6.dnf软件管理命令###

 ###7.epel扩展源的安装及使用###


实验环境:有一台主机,且主机能连接外部的公众网络
进行如下操作检验:ping www.baidu.com


###1.Linux中软件包的类型###


1)DEB               UBlinux  DEBlinux
2)RPM              rehat  centOS  fadora
3)bz2 |gz|xz        #1.需要源码安装
                           #2.绿色软件,解压直接可用  
                           #ntfs-3g_ntfsprogs-2017.3.23.tgz     需要编译”configure"
                           #Firefox-latest-x86_64.tar.bz2           绿色
“注意在rhle8中只能使用绿色软件,源码编译软件和rpm软件”

###2.软件包的名称结构###


[dhcp-server]-[4.3.6-30].[el8].[x86_64].[rpm]
           1                  2          3          4         5
1.软件名称
2.软件版本
3.软件的授权协议版本
4.软件架构
5.软件类型后缀

###3.rpm命令管理软件包###

wget                     ##下载
rpm     -ivh           ##安装参数组合 (install     verbose     hash)      -------> 安装没有依赖性的软件
            -e             ##卸载

            -a             ##所有
            -f              ##文件
            -p             ##软件包
            -q             ##查询
            -l              ##软件安装文件列表
            -c             ##配置文件
            -d             ##说明
            --info       ##软件信息
            --force      ##强制


           

            --nodeps      ##忽略依赖性
            --script         ##查询软件在安装或卸载过程中的运行脚本


              --kv          ##检测软件md5校验码

             --v            ##检测已安装软件在系统中的文件修改信息

###4.本地软件仓库的搭建###

file:///mnt           ##访问本地文件


系统软件仓库的作用:
#在系统中对软件进行管理
#rpm命令是不能解决依赖关系的
#如果需要软件在安装过程中自动解决依赖关系 ,需要搭建系统软件仓库

搭建方法:
1)在系统中加载安装系统时使用的安装镜像
mount /xxxx/rhle8.2-xxxxxxxx.iso /xxxx
2)编写软件仓库文件
/etc/yum.repos.d/           ##软件源指向文件配置目录----在此目录中不能有无法访问的源指南
vim /etc/yum.repos.d/xxxx.repo
                                        ##软件仓库指向文件

[AppStream]                                            ##仓库名称        ----> 仓库名字之间不能出现空格
name=westos AppStream                      ##描述
baseurl=file:///westos/AppSteam          ##地址
gpgcheck=0                                            ##不检测gpgkey  (无授权检测)
gpgcheck=1
gpgkey=file:///etc/pki/rem-gpg/RPM-GPG-REDHAT-release
enable=1|0


[BaseOS]
name=westos BaseOS
baseurl=file:///westos/BaseOS/
gpgcheck=0

3.test
dnf install 
gcc -y                            ##测试安装有依赖性的文件

###5.构建共享型网络软件仓库###

##与外界共享需要安装超文本传输协议   

dnf httpd -y

## 打开 

systemctl enable --now httpd

##关闭防火墙,即可在网页上访问本机                 

systemctl disable --now firewalld

##网络共享即只共享一部分 

  mkdir /var/www/html/westos

##卸载掉挂载在本地软件仓库的挂载 

  umount /linuxrui

##将网络挂载在新建立的共享型网络软件仓库   

mount /iso/rhel-8.2-x86_64-dvd.iso /var/www/html/westos/ 

vim /etc/yum.repos.d /linuxrui.repo   ##编写软件仓库

dnf list               ##查看软件仓库是否建立成功   

以上挂载为临时挂载,重启后会重置挂载   

------> 开机自动挂载    vim /etc/rc.d/rc.local 

  在/etc/rc.d/rc.local文件中添加 mount /iso/rhel-8.2-x86_64-dvd.iso /var/www/html/westos/

    执行此命令添加权限   chmod +x /etc/rc.d/rc.local     

由此即可实现永久挂载!

###6.dnf软件管理命令###

软件仓库信息的存放目录 /var/cache/dnf/

1)安装管理包
dnf   repolist                             ##列出仓库信息
        clean all                            ##清除系统中已经加载的仓库缓存信息   /var/cache/dnf
         list all                               ##列出所有软件
         list availabled                  ##列出未安装软件
         list instabled                   ##列出已安装软件
         install                              ##安装
         remove                            ##卸载
         reinstall                           ##重新安装
         search                             ##搜索
         whatprovides                 ##搜索包含文件的软件包
         history                            ##dnf执行历史
         history info                    ##dnf执行历史详细信息
         group list                       ##l列出软件组
         group list --installed     ##列出已安装软件组
         group list --available    ##列出未安装软件组
         group list --hidden       ##列出隐藏软件组
         group install                 ##安装软件组
         group info                     ##查看软件组信息

 

dnf group install  软件名称 --downloadonly  --destdir=/mnt  -y          ##只下载不安装      

                                                                                               --destdir=目录     表示下载到指定目录

2)下载安装包
yumdownloader                                            #下载软件包到本地指定位置
yumdownloader httpd                                  #下载仓库中指定软件的安装包到当前目录
yumdownloader --destdir=/mnt                  #下载仓库中指定软件的安装包到指定/mnt/目录
yumdownloader httpd --destdir=/mnt --resolve    #下载仓库中指定软件安装包和软件依赖性到/mnt目录中

 ###7.epel扩展源的安装及使用###

dnf search ansible         ##ansible软件不能使用     -------> epel 扩展源

              
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值