一、简单介绍
rpm:快速安装、卸载、升级,减少编译安装的错误。
yum:解决rpm安装时候软件包之间的依赖。
dnf:功能和性能上升级了yum,yum和dnf命令上是可以完全互换。同时增加了模块和程序流的功能。
二、配置本地dnf
1、创建目录
mkdir -p /iso /mnt/cdrom
2、上次系统镜像到iso下,挂载到cdrom目录下
mount -o loop,ro /iso/rhel-8.3-x86_64-dvd.iso /mnt/cdrom/
3、配置开机自动挂载
vi /etc/fstab
/iso/rhel-8.3-x86_64-dvd.iso /mnt/cdrom iso9660 loop,ro 0 0
4、配置yum的源
vi /etc/yum.repos.d/local.repo
[InstallMedia-BaseOS]
name=RHEL8-BaseOS
metadata_expire=-1
baseurl=file:///mnt/cdrom/BaseOS
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enable=1
gpgcheck=1
[InstallMedia-AppStream]
name=RHEL8-AppStream
metadata_expire=-1
baseurl=file:///mnt/cdrom/AppStream
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enable=1
gpgcheck=1
5、清理、创建缓存、查看是否被启用
dnf clean all
dnf makecache
dnf repolist
三、dnf命令
dnf -version #版本号
dnf repolist [all] #显示配置的可用的软件仓库
dnf clean all #删除已缓存的数据
dnf makecache #创建元数据缓存
dnf install/reinstall #安装、重新安装软件
dnf upgrade #升级软件包
dnf remove #卸载软件
dnf search #搜索软件
dnf reposync #下载远程仓库所有的软件包
dnf config-manager #配置dnf软件仓库
dnf download #只下载指定的软件包
dnf install --destdir=./ --downloadonly #下载软件包和依赖软件包
dnf -enablerepo=xxxx install xxx #从指定的软件仓库中安装软件
四、模块和程序流
dnf module install php:7.1/minimal
其中:php模块名称、7.1程序流版本、minimal(最小软件配置),common(默认配置),devel(修改所需要的配置)
1、列出postgresql的所有模块
dnf module list postgresql
2、安装10的客户端
dnf module install postgresql:10/client
3、安装9.6的服务端
dnf module install postgresql:9.6/server
4、已经安装了postgresql10的客户端
dnf module install postgresql:10/client
rpm -qa|grep postgresql
5、切换应用模块流
dnf module reset postgresql
6、升级10到12
dnf module install postgresql:12/client
rpm -qa|grep postgresql
7、启动和禁用模块
dnf module enable postgresql
dnf module disable postgresql
8、卸载
dnf module remove postgresql:12/client