[命令] Linux 命令 dnf (管理软件)

内容目录:

内容一: 帮助文档相关
1.1 显示 dnf 帮助信息
1.2 显示 dnf 子选项的帮助信息

内容二:软件相关
2.1 安装软件
2.1.1 交互式
2.1.2 非交互式
2.2 删除软件
2.2.1 交互式
2.2.2 非交互式
2.3 升级软件
2.3.1 升级软件
2.3.1.1 交互式
2.3.1.2 非交互式
2.3.2 升级所有软件
2.3.2.1 升级所有软件
2.3.2.1.1 交互式
2.3.2.1.2 非交互式
2.3.2.2 升级除某软件外的所有软件
2.3.2.2.1 交互式
2.3.2.2.2 非交互式
2.3.2.3 显示所有可以升级的软件
2.4 显示软件
2.4.1 显示软件
2.4.1.1 显示软件
2.4.1.2 显示软件详细信息
2.4.2 显示所有软件

内容三:软件组相关
3.1 安装软件组
3.1.1 交互式
3.1.2 非交互式
3.2 删除软件组
3.2.1 交互式
3.2.2 非交互式
3.3 显示所有可用软件组

内容四:安全相关
4.1 Errata
4.1.1 Errata
4.1.1.1 安装 Errata
4.1.1.1.1 交互式
4.1.1.1.2 非交互式
4.1.1.2 显示 Errata 的详细信息
4.1.2 所有 Errata
4.1.2.1 安装所有 Errata
4.1.2.1.1 交互式
4.1.2.1.2 非交互式
4.1.2.2 显示所有 Errata 和相关软件版本
4.1.2.3 显示所有 Errata 和相关的 CVE
4.2 CVE
4.2.1 CVE
4.2.1.1 安装 CVE
4.2.1.1.1 交互式
4.2.1.1.2 非交互式
4.2.2 所有 CVE
4.2.2.1 显示所有 CVE 和相关软件版本
4.2.2.2 显示所有 CVE 和相关的 Errata
4.2 安全补丁
4.2.1 安全补丁
4.2.1.1 安装安全补丁
4.2.1.1.1 交互式
4.2.1.1.2 非交互式
4.2.2 所有安全补丁
4.2.2.1 安装所有安全补丁
4.2.2.1.1 交互式
4.2.2.1.2 非交互式
4.2.2.2 显示所有安全补丁

内容五:软件源相关
5.1 显示所有软件源
5.2 缓存软件源列表
5.2.1 缓存所有已启用软件源列表
5.2.2 清除所有软件源列表缓存
5.2.3 保存所有软件源列表缓存

内容六:管理相关
6.1 显示 dnf 历史命令
6.2 显示 dnf 安装记录

具体的内容:

内容一: 帮助文档相关
1.1 显示 dnf 帮助信息

# dnf help

1.2 显示 dnf 子选项的帮助信息

# dnf help <option>

或者:

# dnf <option> help

内容二:软件相关
2.1 安装软件
2.1.1 交互式

# dnf install <software>

2.1.2 非交互式

# dnf -y install <software>

或者:

# dnf install <software> -y

2.2 删除软件
2.2.1 交互式

# dnf remove <software>

2.2.2 非交互式

# dnf -y remove <software>

或者:

# dnf remove <software> -y

2.3 升级软件
2.3.1 升级软件
2.3.1.1 交互式

# dnf update <software>

2.3.1.2 非交互式

# dnf -y update <software>

或者:

# dnf update <software> -y

2.3.2 升级所有软件
2.3.2.1 升级所有软件
2.3.2.1.1 交互式

# dnf update

2.3.2.1.2 非交互式

# dnf -y update

或者:

# dnf update -y

2.3.2.2 升级除某软件外的所有软件
2.3.2.2.1 交互式

# dnf update --exclude=<software>

2.3.2.2.2 非交互式

# dnf -y update --exclude=<software>

或者:

# dnf update --exclude=<software> -y

2.3.2.3 显示所有可以升级的软件

# dnf check-update

2.4 显示软件
2.4.1 显示软件
2.4.1.1 显示软件

# dnf list all | grep <software>

2.4.1.2 显示软件详细信息

# dnf info | grep <software>

2.4.2 显示所有软件

# dnf list all

内容三:软件组相关
3.1 安装软件组
3.1.1 交互式

# dnf groupinstall <group>

3.1.2 非交互式

# dnf -y groupinstall <group>

或者:

# dnf groupinstall <group> -y

3.2 删除软件组
3.2.1 交互式

# dnf groupremove <group>

3.2.2 非交互式

# dnf -y groupremove <group>

或者:

# dnf groupremove <group> -y

3.3 显示所有可用软件组

# dnf group list

内容四:安全相关
4.1 Errata
4.1.1 Errata
4.1.1.1 安装 Errata
4.1.1.1.1 交互式

# dnf update --advisory=<errata>

4.1.1.1.2 非交互式

# dnf -y update --advisory=<errata>

或者:

# dnf update --advisory=<errata> -y

4.1.1.2 显示 Errata 的详细信息

# dnf updateinfo <errata>

4.1.2 所有 Errata
4.1.2.1 安装所有 Errata
4.1.2.1.1 交互式

# dnf update-minimal --security

4.1.2.1.2 非交互式

# dnf -y update-minimal --security

或者:

# dnf update-minimal --security -y

4.1.2.2 显示所有 Errata 和相关软件版本

# dnf updateinfo list

4.1.2.3 显示所有 Errata 和相关的 CVE

# dnf updateinfo info security

4.2 CVE
4.2.1 CVE
4.2.1.1 安装 CVE
4.2.1.1.1 交互式

# dnf update --cve <CVE>

4.2.1.1.2 非交互式

# dnf -y update --cve <CVE>

或者:

# dnf update --cve <CVE> -y

4.2.2 所有 CVE
4.2.2.1 显示所有 CVE 和相关软件版本

# dnf updateinfo list cves

4.2.2.2 显示所有 CVE 和相关的 Errata

# dnf updateinfo info security

4.2 安全补丁
4.2.1 安全补丁
4.2.1.1 安装安全补丁
4.2.1.1.1 交互式

# dnf update <security patch>

4.2.1.1.2 非交互式

# dnf -y update <security patch>

或者:

# dnf update <security patch> -y

4.2.2 所有安全补丁
4.2.2.1 安装所有安全补丁
4.2.2.1.1 交互式

# dnf update --security

4.2.2.1.2 非交互式

# dnf -y update --security

或者:

# dnf update --security -y

4.2.2.2 显示所有安全补丁

# dnf check-update --security

内容五:软件源相关
5.1 显示所有软件源

# dnf repolist

5.2 缓存软件源列表
5.2.1 缓存所有已启用软件源列表

# dnf repolist

5.2.2 清除所有软件源列表缓存

# dnf clean all

5.2.3 保存所有软件源列表缓存

# dnf makecache

内容六:管理相关
6.1 显示 yum 历史命令

# dnf history

6.2 显示 yum 安装记录

# dnf history info

[步骤] Linux 脚本的管理 (通过 systemd 实现)

步骤一:要被管理的脚本

# vim /root/12456.sh

创建以下内容:

#!/bin/bash
for i in {1..5}
do
echo $i
done

(补充:这里以创建 /etc/root/for.sh 脚本为例)

步骤二:创建 systemctl 的管理文件

# vim /etc/systemd/system/12456.service

创建以下内容:

[Unit]
Description=12345
After=default.target

[Service]
Type=oneshot
ExecStart=/root/12456.sh

[Install]
WantedBy=default.target

(补充:这里以创建 /etc/systemd/system/12456.service 来管理 ExecStart=/root/12456.sh 为例)

步骤三:加载刚刚创建的 systemctl 管理文件

# systemctl daemon-reload

步骤四:给 systemctl 的管理文件添加执行权限

# chmod u+x /etc/systemd/system/12456.service

步骤五:通过 systemd 管理脚本
5.1 启动脚本

# systemctl start 12456.service

5.2 关闭脚本

# systemctl stop 12456.service

5.3 重启脚本

# systemctl restart 12456.service

5.4 让脚本开机自启

# systemctl enable 12456.service

[步骤] TeamViewer 的安装 (CentOS Linux & RHEL)

软件准备:

在 TeamViewer 的官网上下载软件 TeamViewer:

https://www.teamviewer.cn/cn/download/linux/

正文:

步骤一:系统环境要求

服服务器系统要配置好可用的软件源

步骤二:安装 epel 软件库

# rpm -Uvh https://dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/e/epel-release-8-8.el8.noarch.rpm

步骤三:安装图形系统桌面
3.1 安装图形系统桌面

# yum groupinstall -y "Server with GUI"

3.2 禁止图形系统桌面以 Wayland 的方式启动

# vim /etc/gdm/custom.conf

将以下内容:

#WaylandEnable=false

修改为:

WaylandEnable=false

(补充:此步骤是为了避免让 TeamViewer 连接时出现黑屏)

3.3 设置系统开机进入图形系统桌面

# systemctl set-default graphical.target

步骤四:安装 TeamViewer

# yum -y localinstall teamviewer_15.9.5.x86_64.rpm

(补充:这里以安装 15.9.5.x86_64 版本的 teamviewer 为例)

步骤四:重启系统

# reboot