2024年7月23日火曜日

unattended-upgrade で esm リポジトリを追加する方法

unattended-upgrade で esm リポジトリを追加する方法

概要

unattended-upgrade は自動でパッケージの更新を行ってくれますがデフォルトでは標準のパッケージリポジトリのみ対象です 今回はあとから追加したリポジトリ (Ubuntu pro で使える esm リポジトリ) を追加する方法を紹介します
なお esm 以外にも docker や ansible なども同じ方法で可能です

環境

  • Ubuntu 22.04

追加するパッケージ情報の確認

  • grep -e 'Origin:' -e 'Suite:' /var/lib/apt/lists/esm.ubuntu.com_*
/var/lib/apt/lists/esm.ubuntu.com_apps_ubuntu_dists_jammy-apps-security_InRelease:Origin: UbuntuESMApps
/var/lib/apt/lists/esm.ubuntu.com_apps_ubuntu_dists_jammy-apps-security_InRelease:Suite: jammy-apps-security
/var/lib/apt/lists/esm.ubuntu.com_apps_ubuntu_dists_jammy-apps-updates_InRelease:Origin: UbuntuESMApps
/var/lib/apt/lists/esm.ubuntu.com_apps_ubuntu_dists_jammy-apps-updates_InRelease:Suite: jammy-apps-updates
/var/lib/apt/lists/esm.ubuntu.com_infra_ubuntu_dists_jammy-infra-security_InRelease:Origin: UbuntuESM
/var/lib/apt/lists/esm.ubuntu.com_infra_ubuntu_dists_jammy-infra-security_InRelease:Suite: jammy-infra-security
/var/lib/apt/lists/esm.ubuntu.com_infra_ubuntu_dists_jammy-infra-updates_InRelease:Origin: UbuntuESM
/var/lib/apt/lists/esm.ubuntu.com_infra_ubuntu_dists_jammy-infra-updates_InRelease:Suite: jammy-infra-updates

ここで表示された Origin と Suite 情報を使って unattended-upgrade に追加します

追加するにはファイルを作成します

/etc/apt/apt.conf.d/51unattended-upgrades-esm-packages の追加

番号は 50 のあとがいいです
51 に続く名前は好きな名前で OK です

  • sudo vim /etc/apt/apt.conf.d/51unattended-upgrades-esm-packages
Unattended-Upgrade::Allowed-Origins {
        "UbuntuESMApps:jammy-apps-security";
        "UbuntuESMApps:jammy-apps-updates";
        "UbuntuESM:jammy-infra-security";
        "UbuntuESM:jammy-infra-updates";
};

リポジトリが追加されたか確認

  • sudo unattended-upgrade --dry-run
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libpython3.10_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/python3.10_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/libpython3.10-stdlib_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/python3.10-minimal_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/libpython3.10-minimal_3.10.12-1~22.04.4_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk-3-common_3.24.33-1ubuntu2.2_all.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk2.0-bin_2.24.33-2ubuntu2.1_amd64.deb /var/cache/apt/archives/libgail-common_2.24.33-2ubuntu2.1_amd64.deb /var/cache/apt/archives/libgail18_2.24.33-2ubuntu2.1_amd64.deb /var/cache/apt/archives/libgtk2.0-0_2.24.33-2ubuntu2.1_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk2.0-common_2.24.33-2ubuntu2.1_all.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/linux-libc-dev_5.15.0-116.126_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk-3-common_3.24.33-1ubuntu2.2_all.deb /var/cache/apt/archives/libgtk-3-0_3.24.33-1ubuntu2.2_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure --recursive /tmp/apt-dpkg-install-mev2tk
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/gtk-update-icon-cache_3.24.33-1ubuntu2.2_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk-3-common_3.24.33-1ubuntu2.2_all.deb /var/cache/apt/archives/libgtk-3-0_3.24.33-1ubuntu2.2_amd64.deb /var/cache/apt/archives/libgtk-3-bin_3.24.33-1ubuntu2.2_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending

esm のリポジトリあるパッケージも追加されていれば OK です

esm リポジトリを追加する前の更新パッケージ一覧

念の為確認しましたがパッケージが少なくなっていることは確認できました

  • sudo rm /etc/apt/apt.conf.d/51unattended-upgrades-esm-packages
  • sudo unattended-upgrade --dry-run
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/linux-libc-dev_5.15.0-116.126_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/gtk-update-icon-cache_3.24.33-1ubuntu2.2_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk-3-common_3.24.33-1ubuntu2.2_all.deb /var/cache/apt/archives/libgtk-3-0_3.24.33-1ubuntu2.2_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk2.0-bin_2.24.33-2ubuntu2.1_amd64.deb /var/cache/apt/archives/libgail-common_2.24.33-2ubuntu2.1_amd64.deb /var/cache/apt/archives/libgail18_2.24.33-2ubuntu2.1_amd64.deb /var/cache/apt/archives/libgtk2.0-0_2.24.33-2ubuntu2.1_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libpython3.10_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/python3.10_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/libpython3.10-stdlib_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/python3.10-minimal_3.10.12-1~22.04.4_amd64.deb /var/cache/apt/archives/libpython3.10-minimal_3.10.12-1~22.04.4_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure --recursive /tmp/apt-dpkg-install-dh2t4Z
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk2.0-common_2.24.33-2ubuntu2.1_all.deb
/usr/bin/dpkg --status-fd 10 --configure --pending
/usr/bin/dpkg --status-fd 10 --no-triggers --unpack --auto-deconfigure /var/cache/apt/archives/libgtk-3-common_3.24.33-1ubuntu2.2_all.deb /var/cache/apt/archives/libgtk-3-0_3.24.33-1ubuntu2.2_amd64.deb /var/cache/apt/archives/libgtk-3-bin_3.24.33-1ubuntu2.2_amd64.deb
/usr/bin/dpkg --status-fd 10 --configure --pending

最後に

unattended-upgrade に追加のリポジトリを追加する方法を紹介しました
デフォルトでは標準リポジトリだけなので注意が必要です
unattend-upgrade は apt upgrade コマンドを実行しているわけではなく個別のパッケージ更新の仕組みになっているので apt upgrade を直接実行してくれているわけではないので注意しましょう

参考サイト

0 件のコメント:

コメントを投稿