Categories: Linux

Linux 使用 yum 復原動作、降級套件教學與範例

介紹如何在 Linux 中使用 yum 套件管理系統,復原安裝的更新套件。

在 CentOS Linux 或是 RHEL(Red Hat Enterprise Linux)中使用 yum 升級或安裝套件之後,如果新版本的軟體發生問題,就可以考慮使用 yum 的歷史紀錄功能,將已經升級的套件降級回原本的版本。

降級的動作對於 selinuxselinux-policy-*kernelglibc 這類較核心的套件是不支援的,yum 的歷史記錄只能用於小幅的套件降級。

yum 復原動作

假設我們使用 yum 安裝了一個 screen 套件:

# 安裝 screen 套件
sudo yum install screen

安裝完套件之後,如果我們想要復原過去的操作,可以先使用 yum 搭配 history 參數列出過去的套件管理操作歷史記錄:

# 列出歷史記錄
sudo yum history
ID     | 指令列                   | 日期與時間       | 動作           | 已變動
-------------------------------------------------------------------------------
    14 | install screen           | 2021-05-05 21:02 | Install        |    1
    13 | install epel-release     | 2021-05-05 20:59 | Install        |    1
    12 | update net-tools         | 2021-05-05 20:46 | Upgrade        |    1  <
    11 |                          | 2020-11-25 17:58 | Reason Change  |    2 >
    10 |                          | 2020-11-25 17:58 | Reason Change  |   14
     9 | -v -y install rng-tools  | 2020-11-25 17:58 | Install        |   51
     8 | install python3 python3- | 2020-11-25 17:57 | Install        |    3
     7 | -y update                | 2020-11-25 17:54 | I, U           |  217 EE
     6 |                          | 2020-11-25 17:54 | Reason Change  |    1
     5 | -v -y install iscsi-init | 2020-11-25 17:54 | Install        |    3
     4 |                          | 2020-11-25 17:54 | Reason Change  |    1
     3 | -C -y remove firewalld - | 2020-01-14 05:52 | Removed        |   11 EE
     2 | -C -y remove linux-firmw | 2020-01-14 05:52 | Removed        |    1
     1 |                          | 2020-01-14 05:49 | Install        |  432 EE

假設我們想要將安裝 screen 套件的動作復原,可以使用 yum 搭配 history undo 參數,並指定要進行復原的動作 ID。

以這裡安裝 screen 套件的動作來說,其 ID 就是 14,若要將其復原則可執行:

# 復原 ID 為 14 的歷史動作
sudo yum history undo 14

yum 降級套件

假設我們想要降級指定的套件,可以使用 yum 搭配 downgrade 參數,並指定要進行降級的套件名稱。

例如若想要降級 httpd 套件,則執行:

# 降級 httpd 套件至上一個版本
sudo yum downgrade httpd

若只有指定套件名稱,沒有指定版本的話,就會降級至該套件的上一個版本,而如果想要降級至自己指定的版本號,可以連同版本一起指定:

# 降級 httpd 套件至 2.2.3-22.el5 版本
sudo yum downgrade httpd-2.2.3-22.el5

參考資料

Share
Published by
Office Guide

Recent Posts

Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤

本篇介紹如何在 Python ...

1 年 ago

Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例

本篇介紹如何在 Ubuntu ...

1 年 ago

Linux 網路設定 ip 指令用法教學與範例

本篇介紹如何在 Linux 系...

1 年 ago

Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例

介紹如何在 Linux 系統中...

1 年 ago