admin管理员组

文章数量:1656136

12.linux中的软件管理

  • 前言
  • 一、软件包
    • 1.软件类型
    • 2.软件包的名称格式
  • 二、rpm
  • 三、本地软件仓库搭建
  • 四、dnf 软件管理命令
  • 五、网络软件仓库搭建
  • 六、第三方软件仓库的搭建方法
  • 总结


前言

本章主要对linux中软件管理进行系统性学习,主要内容包括软件包的分类与名称结构、rpm命令管理软件包、dhf命令管理软件、本地、网络与第三方软件仓库的搭建。


一、软件包

1.软件类型

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

2.软件包的名称格式

[dhcp-server]-[4.3.6-30].[el8].[x86_64].[rpm]

dhcp-server软件名称
4.3.6-30软件版本
el8软件的授权协议版本
x86_64软件架构
rpm软件类型后缀

二、rpm

rpm参数含义
-a所有
-f文件
-p软件包
-q查询
-l软件安装文件列表
-e卸载
-c配置文件
-d说明
- -info软件信息
- -nodeps忽略依赖性
- -script查询软件在安装或卸载过程中的运行脚本
-Kv检测软件md5校验码
-V检测已安装软件在系统中的文件被修改信息
rpm -ivh linuxqq_2.0.0-b2-1082_x86_64.rpm
安装linuxqq

-ivh 安装参数组合 -i install -v verbose -h hash
rpm -aq | grep linuxqq 查询并且抓取关于linuxqq

-qf /usr/local/bin/qq 根据程序的绝对路径查询安装包
-qf /bin/ls 查询ls程序的安装包
-ql linuxqq 查询linuxqq安装文件列表
-qlp .rpm 查询安装包.rpm需要安装的文件列表
-qc dhcp-server 查询配置文件目录

-qd dhcp-server 查询文件说明

-qp .rpm --info 查询软件包信息
-ivh .rpm --force 强制安装,(文件部分缺失或安装过)
-ivh wps-office-11.1.0.9505-1.x86_64.rpm --nodeps 忽略依赖性
-e wps-office 删除
-qp FluffyMcAwesome-A-6.4.0-11.r19335.x86_64.rpm --scripts 查询文件安装中运行的脚本
显然这个文件是个流氓软件,所以不建议安装。

-Kv 检测软件md5校验码
修改软件包文件后,查看软件发现md5码已发生更改。这类软件包不建议安装。

-V 检测已安装软件在系统中的文件被修改信息
rpm2cpio linuxqq_…rpm | cpio -id 将安装包中的usr分解出


三、本地软件仓库搭建

有些软件安装需要依赖性,通过仓库搭建取消依赖性。实验开始需要准备对应版本的镜像文件。
挂载镜像文件
mount rhel-8.2-x86_64-dvd.iso /westos/ 挂载镜像文件到/westos/
挂载成功。
进入本地仓库目录/etc/yum.repos.d/
dnf install firefox

将装机自带的文件删掉,重新编辑westos.repo文件
.repo文件中
gpgcheck=0 是否检测gpg k 与系统中的k是否配对,=0表示不check,不做这一项了
enabled=1 这个软件使用时这个仓库会被读取到,会被启用,=0则不被读取
name尽量规范

再次在镜像文件库中下载firefox成功。


四、dnf 软件管理命令

dnf repolist 列出仓库信息

dnf clean all 清空系统中已加载的仓库缓存信息
加载缓存信息位于/var/cache/dnf/

dnf list all | wc -l 列出所有软件
dnf list available 列出未安装软件
list installed | wc -l 列出已安装软件
dnf install gcc -y 下载gcc -y表示不询问

dnf remove gcc 卸载gcc
dnf reinstall gcc -y 重装gcc -y表示不询问
dnf search dhcp 搜索dhcp
dnf whatprovides /bin/ls 搜索包含文件的软件包
dnf history dnf执行历史
dnf history info 7 列出dnf执行历史的第八条详细信息
dnf group list 列出软件组
dnf group list --installed 列出已安装软件组

dnf group list --available 列出未安装软件组
dnf group list --hidden | wc -l 列出隐藏软件组
dnf group install “Network Servers” 安装软件组

dnf group list “Network Servers” 查看软件组信息
yumdownloader 下载软件包到本机指定位置;若无此服务,可在本地软件库中搜索安装。
yumdownloader httpd --destdir=/mnt --resolve --destdir=/mnt 指定路径 --resolve 包含软件依赖性


五、网络软件仓库搭建

实验逻辑:在主机中打开apache服务共享软件仓库,在虚拟机中重新编辑配置文件,访问网络软件仓库。
dnf search apache 搜索apache安装程序
安装apache
dnf install httpd-devel.x86_64 -y 安装

systemctl enable --now httpd 打开apache服务
systemctl disable --now firewalld 关闭火墙
cd /var/www/html/ 此文件夹为apache的共享文件夹
umount /westos 取消本地挂载
重新挂载到共享文件夹中
vim /etc/rc.d/rc.local 开机启动文件共享与挂载
修改开机启动文件权限
修改本机网络仓库配置文件的usl

虚拟机中
cd /etc/yum.repos.d/ ----> 移除之前的westos.repo 重新按要求编辑新的

dnf list all 成功 进入firefox 172.25.254.9/westos


六、第三方软件仓库的搭建方法

首先使用超级用户创建 /var/www/html/software 并且进入下载rpm包到此文件夹
安装采集工具 dnf install createrepo -y

createrepo . 对当前共享目录进行扫描生成repodata数据目录
主机共享第三方库已建立完成
虚拟机中:
添加software路径到网络仓库配置文件中,
/etc/yum.repos.d/westos.repo
打开网址进入172.25.254.39/software
第三方软件仓库搭建成功。


总结

本章我们学习了对软件仓库的搭建,以及软件的管理。需要熟练rpm和dnf命令的使用,以及网络软件仓库的配置。

本文标签: 软件Linux