文章目录
一、Linux 中软件包的类型
软件包类型 | 适用 |
---|---|
DEB | UBlinux DEBlinux |
rpm | redhat centOS fc |
bz2 / gz / xz | 源码安装(需要编译);绿色软件(直接可用) |
例:
源码安装:ntfs-3g_ntfsprogs-2017.3.23.tgz (需要编译 “configure”)
绿色软件:Firefox-latest-x86_64.tar.bz2 (直接可用)
注意:在 rhel8 中只能使用绿色软件、源码编译软件和 rpm 软件"
二、软件包的名称结构
[dhcp-server]-[4.3.6-30].[el8].[x86_64].[rpm]
1 2 3 4 5
- 软件名称
- 软件版本
- 软件的授权协议版本
- 软件架构
- 软件类型后缀
三、rpm 命令管理软件包
rpm -ivh | 安装参数组合(-i install -v verbose -h hash) |
---|---|
rpm -q | 查询 |
rpm -a | 所有 |
rpm -f | 文件(此文件的安装包) |
rpm -p | 软件包(后边跟安装包时需加此参数) |
rpm -l | 软件安装文件列表 |
rpm -e | 卸载 |
rpm -c | 配置文件 |
rpm -d | 说明文件 |
rpm --info | 软件信息 |
rpm --force | 强制 |
rpm --nodeps | 忽略依赖性 |
rpm --scripts | 查询软件在安装或卸载过程中的运行脚本 |
rpm -Kv | 检测软件md5校验码 |
rpm -V | 检测已安装软件在系统中的文件被修改信息 |
-
rpm -ivh 安装
-
rpm -e 卸载
-
rpm -q 查询
-
rpm -a 所有
-
rpm -f 文件
-
rpm -p 软件包
-
rpm -l 软件安装文件列表
-
rpm -c 配置文件
-
rpm -d 说明文件
-
rpm --info 软件信息
-
rpm --force 强制 (在已安装此软件后想再次安装时可使用)
-
rpm --nodeps
下载的安装包有依赖性无法下载时,输入此命令会忽略依赖性,下载成功
-
rpm --scripts 查询软件在安装或卸载过程中的运行脚本
-
rpm -Kv 检测软件md5校验码(对软件包是否修改过)
-
rpm -V 检测已安装软件在系统中的文件被修改信息
四、本地软件仓库的搭建
系统软件仓库的作用
- 在系统中对软件进行管理
- rpm 命令是不能解决依赖关系的,如果需要软件在安装过程中自动解决依赖关系,此时需要搭建系统软件仓库
系统软件仓库搭建方法
1.挂载镜像到你所指定的目录
镜像相当于一个光盘,要挂载到光驱(指定目录)上,才能被查看
AppStream以及BaseOS里都是软件包
2.编写软件仓库文件
/etc/yum.repos.d/
名称必须以.repo结尾
- 软件源指向文件配置目录
- 在此目录中不能有无法访问的源指向
五、dnf 软件管理命令
dnf repolist | 列出仓库信息 |
---|---|
dnf clean all | 清除系统中已经加载的仓库缓存信息 |
dnf list all | 列出所有软件 |
dnf list available | 列出未安装软件 |
dnf list installed | 列出已安装软件 |
dnf install | 安装 |
dnf remove | 卸载 |
dnf reinstall | 重新安装 |
dnf search | 搜索 |
dnf whatprovides | 搜索包含文件的软件包 |
dnf history | 执行历史 |
dnf history info Hid | 执行历史详细信息 |
dnf group list | 列出软件组 |
dnf group list --installed | 列出已安装软件组 |
dnf group list --available | 列出未安装软件组 |
dnf group list --hidden | 列出隐藏软件案组 |
dnf group install | 安装软件组 |
dnf group info | 查看软件组信息 |
-
dnf repolist 列出仓库信息
-
dnf clean all 清除系统中已经加载的仓库缓存信息
-
dnf list all 列出所有软件
-
dnf list available 列出未安装软件
-
dnf list installed 列出已安装软件
-
dnf install 安装
-
dnf remove 卸载
-
dnf reinstall 重新安装
-
dnf search 搜索
-
dnf whatprovides 搜索包含此文件的软件包
-
dnf history 执行历史
-
dnf history info id执行此id的历史详细信息
-
dnf group list 列出软件组
-
dnf group list --installed 列出已安装软件组
-
dnf group list --available 列出未安装软件组
-
dnf group list --hidden 列出隐藏软件组
-
dnf group install 安装软件组
-
dnf group info 查看软件组信息
六、网络软件仓库的搭建
网络软件仓库搭建的作用
软件仓库的搭建需要软件源,在企业中系统数量大,若给每台机子都放镜像,就会浪费大量资源;因此,我们可以把其中一台系统有的软件源共享到网络中,这样每台系统即使没有软件源但使用网络中那台主机共享的软件源就可以来搭建软件仓库。
网络软件仓库的搭建方法
在分享资源的主机端:
1.利用镜像搭建本地软件仓库
2.安装共享软件
- 共享方式 http:// [超文本传输协议]
- 提供此协议的软件 [Apache]
- 软件包名称 [httpd]
- 共享位置 [/var/www/html]
3.启用共享软件 Apache
并关闭火墙(火墙会阻止访问)
4.建立共享目录
5.把光驱挂载到共享目录
在网上可以访问到本机ip下共享的目录下的软件源
远程主机(享受资源)端:
6.书写repo文件,并访问资源
可以列出仓库信息,表明网络软件仓库搭建成功
七、下载软件安装包
「本次仓库配好的前提下」
先安装yum的工具软件包
yumdownloader | 下载软件安装包到指定目录 |
---|---|
yumdownloader httpd | 下载此软件安装包到当前目录 |
yumdownloader httpd --destdir /mnt | 下载此软件安装包到/mnt目录下 |
yumdownloader httpd --destdir /mnt --resolv | 下载此软件安装包及其依赖性到/mnt目录下 |
八、第三方软件仓库的搭建方法
「使下载的第三方软件能用dnf来管理」
并使第三方软件在网络中共享
分享端:
1.建立共享目录
2.把所有的第三方软件存放到/var/www/html/software 中
只能存在 rpm 类型的文件,压缩包是不能使用 dnf 管理的
3.采集第三方软件数据生成 repodate 目录
安装采集工具(createrepo)
对共享目录进行扫描,并生成 (repodate)数据目录
看下采集的数据repodata下有什么吧(xml压缩包里有解决依赖性的东西)
资源接收端:
4.编辑repo文件,指定第三方共享源
仓库信息可列出来,表明共享成功!
- GET