16.04からアップグレードしたUbuntu 16.10があります。ディストリビューションのアップグレード後、しばらくすると自動更新が実行されなくなります。
「apt update」を実行すると、数分後に「ソフトウェアの更新」ウィンドウが正しく表示されることに気付きました。
更新が自動的にスケジュールされない/開始されないように、何を確認する必要がありますか?どのように機能しますか?
無人アップグレードが機能しているかどうかを確認する方法:
1)/ var/lib/apt/periodic /のタイムスタンプを確認します。ほとんどのapt関連アプリケーションは、そこで成功した実行をタイムスタンプします。
以下に例を示します。 u-uが1月30日01:38に実行されたことがわかります。
$ ls -l /var/lib/apt/periodic/ | grep unattended-upgrades
-rw-r--r-- 1 root root 0 Jan 30 01:38 unattended-upgrades-stamp
2)ログを確認します。無人アップグレードは、すべてのアクションを/ var/logに記録します。
同じ1月30日のアクティビティの例を次に示します。
$ cat /var/log/unattended-upgrades/unattended-upgrades.log | grep 2017-01-30
2017-01-30 01:38:22,190 INFO Initial blacklisted packages:
2017-01-30 01:38:22,254 INFO Initial whitelisted packages:
2017-01-30 01:38:22,254 INFO Starting unattended upgrades script
2017-01-30 01:38:22,255 INFO Allowed origins are: ['o=Ubuntu,a=yakkety-security']
2017-01-30 01:38:26,336 INFO No packages found that can be upgraded unattended and no pending auto-removals
無人アップグレードが次に実行されるタイミングを確認する方法:
Ubuntu 12.04および14.04では、無人アップグレードは/etc/cron.dailyによってトリガーされる他の毎日のメンテナンスで実行されます。毎日実行される時間については、ルートcrontabを参照してください。
Ubuntu 16.04以降では、毎日のaptメンテナンスにはsystemdによってランダムな時間が割り当てられます。
Systemdにクエリを実行して、毎日のaptタイマー(「apt-daily.timer」と呼ばれる)を確認する方法の例を次に示します。
$ systemctl list-timers apt-daily.timer
NEXT LEFT LAST PASSED
Tue 2017-01-31 10:12:03 CST 4h 49min left Mon 2017-01-30 19:18:19 CST 10h ago
1月30日(19:18)のLASTタイマーは、1月30日(01:30)の実際の実行時間とnotに一致することに注意してください。システムは一時停止または01:30にオフになり、システムが再び使用可能になったときにsystemdがタイマーを実行しました。また、NEXTタイマーは前日とは無関係であることに注意してください...毎日がランダムです。
そのランダム性は、常時稼働していないシステムが毎週数回の毎日のアップグレードを見逃す可能性が高いことを意味します。これはシステムに害を及ぼすことはありませんが、当然ユーザーを混乱させる可能性があります。
待機、タイムスタンプなし。無人アップグレードを有効にするにはどうすればよいですか?
無人アップグレードはインストールされていますが、Ubuntu 14.04以前ではデフォルトでオフになっています。
Unityで14.04以前に有効にする簡単な方法は、[システム設定]-> [ソフトウェアと更新]-> [更新]タブです。設定は理解しやすいです。
Unityを使用していない場合は、次を試して「更新」タブを探してください。
$ software-properties-gtk
16.04以降のすべてのフレーバーでは、無人アップグレードがデフォルトでインストールされ、オンになっています。同じ方法を使用して、多くの設定を変更します。
特別な設定が必要なパワーユーザーの場合、u-u設定は/etc/apt/apt.conf.d/のさまざまなファイルに保存され、他のapt設定と混合されます。 GUIはこれらの設定を使用します。
さて、無人アップグレードは実行中ですが、なぜアンインストールされた更新に関する通知を受け取るのですか?
U-uのデフォルト設定(/etc/apt/apt.conf.d/50unattended-upgradesにあります)は、-securityリポジトリーからのみパッケージをダウンロードしてインストールします。 -upgradesおよび-backportsおよびその他すべては無視されます...これらのアンインストールされたアップグレードは、手動で承認できることを通知されます。
そのファイルを(Sudoとして)編集して、他のソースを追加できます。
警告:無人アップグレードは賢くありません。システムを破壊するソース(-proposedやPPAなど)を愚かに追加すると、そうなります。あなたは警告されました。