LinuCエヴァンジェリストの鯨井貴博@opensourcetechです。
yumで特定のパッケージを除外する方法の紹介です。
作業は、CentOS8で実施してます。
[root@centos8test ~]# cat /etc/centos-release CentOS Linux release 8.2.2004 (Core) [root@centos8test ~]# uname -a Linux centos8test 5.7.10 #2 SMP Thu Jul 23 23:00:48 JST 2020 x86_64 x86_64 x86_64 GNU/Linux
まず、特に除外なしでyum updateしてみます。
インストール 8 パッケージ
アップグレード 53 パッケージ とありますね。
[root@centos8test ~]# yum update メタデータの期限切れの最終確認: 0:00:53 時間前の 2020年08月19日 16時54分38秒 に 実施しました。 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン Repo サイズ ================================================================================ インストール中: kernel x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.8 M kernel-core x86_64 4.18.0-193.14.2.el8_2 BaseOS 28 M kernel-devel x86_64 4.18.0-193.14.2.el8_2 BaseOS 15 M kernel-modules x86_64 4.18.0-193.14.2.el8_2 BaseOS 23 M アップグレード中: NetworkManager x86_64 1:1.22.8-5.el8_2 BaseOS 2.3 M NetworkManager-libnm x86_64 1:1.22.8-5.el8_2 BaseOS 1.7 M NetworkManager-team x86_64 1:1.22.8-5.el8_2 BaseOS 136 k NetworkManager-tui x86_64 1:1.22.8-5.el8_2 BaseOS 306 k bind-export-libs x86_64 32:9.11.13-5.el8_2 BaseOS 1.1 M ca-certificates noarch 2020.2.41-80.0.el8_2 BaseOS 391 k coreutils x86_64 8.30-7.el8_2.1 BaseOS 1.2 M coreutils-common x86_64 8.30-7.el8_2.1 BaseOS 2.0 M dbus x86_64 1:1.12.8-10.el8_2 BaseOS 41 k dbus-common noarch 1:1.12.8-10.el8_2 BaseOS 45 k dbus-daemon x86_64 1:1.12.8-10.el8_2 BaseOS 239 k dbus-libs x86_64 1:1.12.8-10.el8_2 BaseOS 183 k dbus-tools x86_64 1:1.12.8-10.el8_2 BaseOS 85 k dnf noarch 4.2.17-7.el8_2 BaseOS 469 k dnf-data noarch 4.2.17-7.el8_2 BaseOS 145 k gnutls x86_64 3.6.8-11.el8_2 BaseOS 915 k grub2-common noarch 1:2.02-87.el8_2 BaseOS 882 k grub2-pc x86_64 1:2.02-87.el8_2 BaseOS 37 k grub2-pc-modules noarch 1:2.02-87.el8_2 BaseOS 863 k grub2-tools x86_64 1:2.02-87.el8_2 BaseOS 2.0 M grub2-tools-extra x86_64 1:2.02-87.el8_2 BaseOS 1.1 M grub2-tools-minimal x86_64 1:2.02-87.el8_2 BaseOS 202 k initscripts x86_64 10.00.6-1.el8_2.1 BaseOS 338 k iptables x86_64 1.8.4-10.el8_2.1 BaseOS 581 k iptables-ebtables x86_64 1.8.4-10.el8_2.1 BaseOS 70 k iptables-libs x86_64 1.8.4-10.el8_2.1 BaseOS 105 k jbig2dec-libs x86_64 0.14-4.el8_2 AppStream 67 k kernel-headers x86_64 4.18.0-193.14.2.el8_2 BaseOS 4.0 M kernel-tools x86_64 4.18.0-193.14.2.el8_2 BaseOS 3.0 M kernel-tools-libs x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.8 M libdnf x86_64 0.39.1-6.el8_2 BaseOS 620 k libnghttp2 x86_64 1.33.0-3.el8_2.1 BaseOS 77 k microcode_ctl x86_64 4:20191115-4.20200609.1.el8_2 BaseOS 2.7 M nspr x86_64 4.25.0-2.el8_2 AppStream 142 k nss x86_64 3.53.1-11.el8_2 AppStream 721 k nss-softokn x86_64 3.53.1-11.el8_2 AppStream 484 k nss-softokn-freebl x86_64 3.53.1-11.el8_2 AppStream 289 k nss-sysinit x86_64 3.53.1-11.el8_2 AppStream 71 k nss-tools x86_64 3.53.1-11.el8_2 AppStream 559 k nss-util x86_64 3.53.1-11.el8_2 AppStream 135 k python3-dnf noarch 4.2.17-7.el8_2 BaseOS 521 k python3-hawkey x86_64 0.39.1-6.el8_2 BaseOS 99 k python3-libdnf x86_64 0.39.1-6.el8_2 BaseOS 689 k python3-perf x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.9 M python3-syspurpose x86_64 1.26.17-1.el8_2 BaseOS 286 k selinux-policy noarch 3.14.3-41.el8_2.5 BaseOS 614 k selinux-policy-targeted noarch 3.14.3-41.el8_2.5 BaseOS 15 M systemd x86_64 239-31.el8_2.2 BaseOS 3.5 M systemd-libs x86_64 239-31.el8_2.2 BaseOS 1.1 M systemd-pam x86_64 239-31.el8_2.2 BaseOS 451 k systemd-udev x86_64 239-31.el8_2.2 BaseOS 1.3 M tzdata noarch 2020a-1.el8 BaseOS 469 k yum noarch 4.2.17-7.el8_2 BaseOS 191 k 依存関係のインストール中: grub2-tools-efi x86_64 1:2.02-87.el8_2 BaseOS 467 k libevent x86_64 2.1.8-5.el8 BaseOS 253 k unbound-libs x86_64 1.7.3-11.el8_2 AppStream 499 k 弱い依存関係のインストール中: python3-unbound x86_64 1.7.3-11.el8_2 AppStream 118 k トランザクションの概要 ================================================================================ インストール 8 パッケージ アップグレード 53 パッケージ ダウンロードサイズの合計: 130 M これでよろしいですか? [y/N]: n
では、tzdataを除外してみます。
--excludeオプションでパッケージを指定します。
選択されるパッケージが減ってますね。
[root@centos8test ~]# yum update --exclude=tzdata メタデータの期限切れの最終確認: 0:12:52 時間前の 2020年08月19日 17時25分30秒 に 実施しました。 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン Repo サイズ ================================================================================ インストール中: kernel x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.8 M kernel-core x86_64 4.18.0-193.14.2.el8_2 BaseOS 28 M kernel-devel x86_64 4.18.0-193.14.2.el8_2 BaseOS 15 M kernel-modules x86_64 4.18.0-193.14.2.el8_2 BaseOS 23 M アップグレード中: NetworkManager x86_64 1:1.22.8-5.el8_2 BaseOS 2.3 M NetworkManager-libnm x86_64 1:1.22.8-5.el8_2 BaseOS 1.7 M NetworkManager-team x86_64 1:1.22.8-5.el8_2 BaseOS 136 k NetworkManager-tui x86_64 1:1.22.8-5.el8_2 BaseOS 306 k bind-export-libs x86_64 32:9.11.13-5.el8_2 BaseOS 1.1 M ca-certificates noarch 2020.2.41-80.0.el8_2 BaseOS 391 k coreutils x86_64 8.30-7.el8_2.1 BaseOS 1.2 M coreutils-common x86_64 8.30-7.el8_2.1 BaseOS 2.0 M dbus x86_64 1:1.12.8-10.el8_2 BaseOS 41 k dbus-common noarch 1:1.12.8-10.el8_2 BaseOS 45 k dbus-daemon x86_64 1:1.12.8-10.el8_2 BaseOS 239 k dbus-libs x86_64 1:1.12.8-10.el8_2 BaseOS 183 k dbus-tools x86_64 1:1.12.8-10.el8_2 BaseOS 85 k dnf noarch 4.2.17-7.el8_2 BaseOS 469 k dnf-data noarch 4.2.17-7.el8_2 BaseOS 145 k gnutls x86_64 3.6.8-11.el8_2 BaseOS 915 k grub2-common noarch 1:2.02-87.el8_2 BaseOS 882 k grub2-pc x86_64 1:2.02-87.el8_2 BaseOS 37 k grub2-pc-modules noarch 1:2.02-87.el8_2 BaseOS 863 k grub2-tools x86_64 1:2.02-87.el8_2 BaseOS 2.0 M grub2-tools-extra x86_64 1:2.02-87.el8_2 BaseOS 1.1 M grub2-tools-minimal x86_64 1:2.02-87.el8_2 BaseOS 202 k initscripts x86_64 10.00.6-1.el8_2.1 BaseOS 338 k iptables x86_64 1.8.4-10.el8_2.1 BaseOS 581 k iptables-ebtables x86_64 1.8.4-10.el8_2.1 BaseOS 70 k iptables-libs x86_64 1.8.4-10.el8_2.1 BaseOS 105 k jbig2dec-libs x86_64 0.14-4.el8_2 AppStream 67 k kernel-headers x86_64 4.18.0-193.14.2.el8_2 BaseOS 4.0 M kernel-tools x86_64 4.18.0-193.14.2.el8_2 BaseOS 3.0 M kernel-tools-libs x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.8 M libdnf x86_64 0.39.1-6.el8_2 BaseOS 620 k libnghttp2 x86_64 1.33.0-3.el8_2.1 BaseOS 77 k microcode_ctl x86_64 4:20191115-4.20200609.1.el8_2 BaseOS 2.7 M nspr x86_64 4.25.0-2.el8_2 AppStream 142 k nss x86_64 3.53.1-11.el8_2 AppStream 721 k nss-softokn x86_64 3.53.1-11.el8_2 AppStream 484 k nss-softokn-freebl x86_64 3.53.1-11.el8_2 AppStream 289 k nss-sysinit x86_64 3.53.1-11.el8_2 AppStream 71 k nss-tools x86_64 3.53.1-11.el8_2 AppStream 559 k nss-util x86_64 3.53.1-11.el8_2 AppStream 135 k python3-dnf noarch 4.2.17-7.el8_2 BaseOS 521 k python3-hawkey x86_64 0.39.1-6.el8_2 BaseOS 99 k python3-libdnf x86_64 0.39.1-6.el8_2 BaseOS 689 k python3-perf x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.9 M python3-syspurpose x86_64 1.26.17-1.el8_2 BaseOS 286 k yum noarch 4.2.17-7.el8_2 BaseOS 191 k 依存関係のインストール中: grub2-tools-efi x86_64 1:2.02-87.el8_2 BaseOS 467 k libevent x86_64 2.1.8-5.el8 BaseOS 253 k unbound-libs x86_64 1.7.3-11.el8_2 AppStream 499 k 弱い依存関係のインストール中: python3-unbound x86_64 1.7.3-11.el8_2 AppStream 118 k トランザクションの概要 ================================================================================ インストール 8 パッケージ アップグレード 46 パッケージ ダウンロードサイズの合計: 108 M これでよろしいですか? [y/N]: n 操作が中断されました。
複数パッケージを指定する場合は、,(カンマ)を付けます。
また、--exclude='selinux'とすることで、ワイルドカードも利用できます。
続いて、設定ファイルで除外を行う方法。
/etc/yum.repos.d/配下のレポジトリ設定で、excludeを使用します。
exclude=selinux systemd(スペースで区切り) や exclude=selinux,systemd*(カンマで区切り)とすることで除外が可能です。
[root@centos8test ~]# cat /etc/centos-release CentOS Linux release 8.2.2004 (Core) [root@centos8test ~]# cat /etc/yum.repos.d/CentOS-Base.repo # CentOS-Base.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick mirrors that are updated to and # geographically close to the client. You should use this for CentOS updates # unless you are manually picking other mirrors. # # If the mirrorlist= does not work for you, as a fall back you can try the # remarked out baseurl= line instead. # # [BaseOS] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra #baseurl=http://mirror.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial exclude=selinux* systemd*
該当パッケージが、除外されています。
[root@centos8test ~]# yum update メタデータの期限切れの最終確認: 0:28:07 時間前の 2020年08月19日 17時25分30秒 に 実施しました。 依存関係が解決しました。 ================================================================================ パッケージ Arch バージョン Repo サイズ ================================================================================ インストール中: kernel x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.8 M kernel-core x86_64 4.18.0-193.14.2.el8_2 BaseOS 28 M kernel-devel x86_64 4.18.0-193.14.2.el8_2 BaseOS 15 M kernel-modules x86_64 4.18.0-193.14.2.el8_2 BaseOS 23 M アップグレード中: NetworkManager x86_64 1:1.22.8-5.el8_2 BaseOS 2.3 M NetworkManager-libnm x86_64 1:1.22.8-5.el8_2 BaseOS 1.7 M NetworkManager-team x86_64 1:1.22.8-5.el8_2 BaseOS 136 k NetworkManager-tui x86_64 1:1.22.8-5.el8_2 BaseOS 306 k bind-export-libs x86_64 32:9.11.13-5.el8_2 BaseOS 1.1 M ca-certificates noarch 2020.2.41-80.0.el8_2 BaseOS 391 k coreutils x86_64 8.30-7.el8_2.1 BaseOS 1.2 M coreutils-common x86_64 8.30-7.el8_2.1 BaseOS 2.0 M dbus x86_64 1:1.12.8-10.el8_2 BaseOS 41 k dbus-common noarch 1:1.12.8-10.el8_2 BaseOS 45 k dbus-daemon x86_64 1:1.12.8-10.el8_2 BaseOS 239 k dbus-libs x86_64 1:1.12.8-10.el8_2 BaseOS 183 k dbus-tools x86_64 1:1.12.8-10.el8_2 BaseOS 85 k dnf noarch 4.2.17-7.el8_2 BaseOS 469 k dnf-data noarch 4.2.17-7.el8_2 BaseOS 145 k gnutls x86_64 3.6.8-11.el8_2 BaseOS 915 k grub2-common noarch 1:2.02-87.el8_2 BaseOS 882 k grub2-pc x86_64 1:2.02-87.el8_2 BaseOS 37 k grub2-pc-modules noarch 1:2.02-87.el8_2 BaseOS 863 k grub2-tools x86_64 1:2.02-87.el8_2 BaseOS 2.0 M grub2-tools-extra x86_64 1:2.02-87.el8_2 BaseOS 1.1 M grub2-tools-minimal x86_64 1:2.02-87.el8_2 BaseOS 202 k initscripts x86_64 10.00.6-1.el8_2.1 BaseOS 338 k iptables x86_64 1.8.4-10.el8_2.1 BaseOS 581 k iptables-ebtables x86_64 1.8.4-10.el8_2.1 BaseOS 70 k iptables-libs x86_64 1.8.4-10.el8_2.1 BaseOS 105 k jbig2dec-libs x86_64 0.14-4.el8_2 AppStream 67 k kernel-headers x86_64 4.18.0-193.14.2.el8_2 BaseOS 4.0 M kernel-tools x86_64 4.18.0-193.14.2.el8_2 BaseOS 3.0 M kernel-tools-libs x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.8 M libdnf x86_64 0.39.1-6.el8_2 BaseOS 620 k libnghttp2 x86_64 1.33.0-3.el8_2.1 BaseOS 77 k microcode_ctl x86_64 4:20191115-4.20200609.1.el8_2 BaseOS 2.7 M nspr x86_64 4.25.0-2.el8_2 AppStream 142 k nss x86_64 3.53.1-11.el8_2 AppStream 721 k nss-softokn x86_64 3.53.1-11.el8_2 AppStream 484 k nss-softokn-freebl x86_64 3.53.1-11.el8_2 AppStream 289 k nss-sysinit x86_64 3.53.1-11.el8_2 AppStream 71 k nss-tools x86_64 3.53.1-11.el8_2 AppStream 559 k nss-util x86_64 3.53.1-11.el8_2 AppStream 135 k python3-dnf noarch 4.2.17-7.el8_2 BaseOS 521 k python3-hawkey x86_64 0.39.1-6.el8_2 BaseOS 99 k python3-libdnf x86_64 0.39.1-6.el8_2 BaseOS 689 k python3-perf x86_64 4.18.0-193.14.2.el8_2 BaseOS 2.9 M python3-syspurpose x86_64 1.26.17-1.el8_2 BaseOS 286 k tzdata noarch 2020a-1.el8 BaseOS 469 k yum noarch 4.2.17-7.el8_2 BaseOS 191 k 依存関係のインストール中: grub2-tools-efi x86_64 1:2.02-87.el8_2 BaseOS 467 k libevent x86_64 2.1.8-5.el8 BaseOS 253 k unbound-libs x86_64 1.7.3-11.el8_2 AppStream 499 k 弱い依存関係のインストール中: python3-unbound x86_64 1.7.3-11.el8_2 AppStream 118 k トランザクションの概要 ================================================================================ インストール 8 パッケージ アップグレード 47 パッケージ ダウンロードサイズの合計: 108 M これでよろしいですか? [y/N]: n 操作が中断されました。