Amazon Linux インスタンスでのインスタンスソフトウェアの更新
ソフトウェアは、最新の状態に維持することが重要です。Linux ディストリビューションのパッケージは頻繁に更新されます。これにより、バグが修正され、機能が追加されて、セキュリティ上の弱点に対する防御措置が行われます。最初に Amazon Linux インスタンスを起動して接続する際、セキュリティ上の目的から、ソフトウェアパッケージを更新するように促すメッセージが表示される場合があります。このセクションでは、システム全体またはパッケージを 1 つだけ更新する方法を紹介します。
この情報は、Amazon Linux 2 と Amazon Linux に適用されます。AL2023 の詳細については、「AL2023 ユーザーガイド」の「パッケージの管理とシステム更新の実行」を参照してください。
注記
Amazon Linux AMI は 2023 年 12 月 31 日にサポート終了となり、2024 年 1 月 1 日以降、セキュリティアップデートやバグ修正は一切行われません。Amazon Linux AMI のサポート終了およびメンテナンスサポートの詳細については、ブログ記事「Update on Amazon Linux AMI end-of-life
Amazon Linux 2 の変更と更新については、「Amazon Linux 2 リリースノート」を参照してください。
AL2023 への変更と更新の詳細については、「AL2023 リリースノート」を参照してください。
重要
この情報は、Amazon Linux に適用されます。その他のディストリビューションの情報については、各ドキュメントを参照してください。
重要
Amazon Linux 2 AMI を使用する EC2 インスタンスを IPv6 専用サブネットに起動した場合は、インスタンスに接続して sudo amazon-linux-https
disable
を実行する必要があります。これにより、AL2 インスタンスが http パッチサービスを使用して、IPv6 経由で S3 の yum リポジトリに接続できるようになります。
Amazon Linux インスタンスのすべてのパッケージを更新するには
-
(オプション) シェルウィンドウで screen セッションを開始します。時折、ネットワークが遮断され、インスタンスへの SSH 接続が切断されることがあります。この状態が長時間におよぶソフトウェア更新中に発生した場合、インスタンスは混乱した状態になりますが、その復元は可能です。screen セッションを開始しておけば、接続が遮断された場合でも更新を続行でき、後で問題なくセッションに再接続できます。
-
セッションを開始するには screen コマンドを実行します。
[ec2-user ~]$
screen
-
セッションが中断された場合、インスタンスにログインし直し、利用できる画面を表示します。
[ec2-user ~]$
screen -ls
There is a screen on:
17793
.pts-0.ip-12-34-56-78 (Detached) 1 Socket in /var/run/screen/S-ec2-user. -
screen -r コマンドと前のコマンドのプロセス ID を使用して、画面に再接続します。
[ec2-user ~]$
screen -r
17793
-
screen の使用が終わったら、exit コマンドを使用してセッションを閉じます。
[ec2-user ~]$
exit
[screen is terminating]
-
-
yum update コマンドを実行します。オプションで、
--security
フラグを追加すれば、セキュリティ更新のみを適用できます。[ec2-user ~]$
sudo yum update
-
表示されたパッケージを確認したら、「
y
」と入力して Enter キーを押し、この更新を受け入れます。システムのパッケージをすべて更新するには数分かかります。実行中、yum 出力には更新のステータスが表示されます。 -
(オプション) インスタンスの再起動 により、更新によって最新のパッケージおよびライブラリが使用されていることを確認します。カーネル更新は再起動が発生するまでロードされません。
glibc
ライブラリを更新した後も再起動が必要です。サービスを制御する更新の場合は、更新を取得するにはサービスの再起動で十分かもしれませんが、システムを再起動することで、それ以前のすべてのパッケージとライブラリの更新を確実に完了できます。
Amazon Linux インスタンスの 1 つのパッケージを更新するには
システム全体ではなく、1 つのパッケージ (とその依存関係) を更新するには、この手順を使用します。
-
更新するパッケージの名前を指定した yum update コマンドを実行します。
[ec2-user ~]$
sudo yum update
openssl
-
表示されたパッケージ情報を確認したら、「
y
」と入力して Enter キーを押し、この更新を受け入れます。時折、解決する必要があるパッケージ依存関係ある場合、リストには複数のパッケージがあります。実行中、yum 出力には更新のステータスが表示されます。 -
(オプション) インスタンスの再起動 により、更新によって最新のパッケージおよびライブラリが使用されていることを確認します。カーネル更新は再起動が発生するまでロードされません。
glibc
ライブラリを更新した後も再起動が必要です。サービスを制御する更新の場合は、更新を取得するにはサービスの再起動で十分かもしれませんが、システムを再起動することで、それ以前のすべてのパッケージとライブラリの更新を確実に完了できます。