アップデートの種類
[バージョン番号の振られ方]
FreeBSDにはシステムを更新するために、freebsd-updateコマンドが用意されています。freebsd-updateコマンドでは以下に示す3種類の更新を実行する事ができます。
- セキュリティの脆弱性と不具合の修正(アップデート)
- マイナーバージョンのアップグレード
- メジャーバージョンのアップグレード
アップデートでは、プログラムの一部分を更新します。それに対してアップグレードでは、プログラム(システム)全体を新しく更新します。アップグレードの事をバージョンアップとも言います。
アップグレードによる更新ではプログラム(システム)自体が変わるため、新しく機能が追加されたり、動作要件が変わる事があります。特にメジャーリリースへのアップグレードでは、パッケージソフトのアップグレードも必要になります。
セキュリティの脆弱性と不具合の修正
このアップデートはセキュリティの脆弱性と不具合をパッチレベルで修正します。
パッチ(patch)は英語で、「つぎあて」、「一区画」というような意味があり、プログラムの一部分を修正する場合に「パッチを当てる」、「パッチを適用する」などと言います。
FreeBSDでは、リリース公開後に見つかったセキュリティの脆弱性は、セキュリティ勧告(Security Advisories)として報告されます。それ以外の問題については不具合情報(Errata)として報告されます。
セキュリティ勧告とErrata情報はFreeBSD公式サイトのトップページまたは以下のページで一覧を確認できます。
FreeBSD公式サイト(日本語)
セキュリティ勧告(Security Advisories)
不具合情報(Errata)
マイナーバージョンのアップグレード
この更新では、FreeBSD11.0からFreeBSD11.1のようにマイナーバージョンの更新を行います。
マイナーバージョンの更新では、ほとんどの場合パッケージソフトはそのままでも動作します。しかし、パッケージソフトも脆弱性や不具合がないとは言い切れないので更新する事をお勧めします。
メジャーバージョンのアップグレード
この更新では、FreeBSD11.xからFreeBSD12.xのようにメジャーバージョンの更新を行います。
メジャーバージョンの更新はシステムに大きな変更が加えられるので、そのままでは動作しないパッケージソフトが出てくる可能性があります。そのためパッケージのアップグレードも必要になってきます。必要に応じて旧パッケージソフトの削除、新パッケージソフトのインストールが必要になる場合もあります。
保守終了時期
FreeBSD各リリースの保守終了予定日は以下のページで確認できます。
サポートされている FreeBSD のリリース
https://www.freebsd.org/ja/security/#sup
使用中のリリースがいつまでサポートされているか確認し、保守終了予定日になる前に適切にシステムを更新することをお勧めします。
また、リリースの更新だけでなく定期的にセキュリティ勧告を確認して必要に応じてセキュリティアップデートを実行することが望ましいと思います。
作業前の確認
データのバックアップ
freebsd-updateコマンドにはロールバックの機能があり、更新がうまくいかなかった場合、最後に更新されたところまで戻す事ができます。
しかし、更新が失敗してシステムが起動しなくなった場合の事を考えて更新する前にバックアップを取る事をお勧めします。
少なくともドキュメントファイル、マルチメディアファイル、データベースファイルなどのデータはバックアップしておかないと消えたら元に戻せません。
現版数(バージョン)の確認
使用中のバージョンは以下のコマンドで確認できます。
# uname -srm FreeBSD 11.3-RELEASE-p3 amd64
[オプション]
-s operating system
-r current release level
-m current hardware platform
unameコマンドで表示される版数はカーネルに適用されたパッチレベルの修正を含むカーネルの版数になります。
セキュリティパッチは、カーネルにだけ適用されるものではないのでカーネルの修正を伴わない更新がされている場合、適用されている版数よりもunameコマンドで表示される版数が低い場合があります。
カーネル以外の修正を含む版数を確認するには以下の方法で確認します。
# freebsd-version -kur 11.3-RELEASE-p11 11.3-RELEASE-p11 11.3-RELEASE-p11
[オプション]
- -k installed kernel
- インストールされているカーネルの版数(パッチレベルを含む)を表示します。更新中にまだ再起動していない状態(旧カーネルで稼働中)では、新しいカーネルの版数(パッチレベルを含む)を表示します。
- -u installed userland
- ユーザーランドにインストールされた版数(パッチレベルを含む)を表示します。カーネル以外の修正を含む版数を確認するにはこのオプションで確認します。
- -r running kernel
- 稼働中のカーネルの版数(パッチレベルを含む)を表示します。
セキュリティパッチの適用方法
セキュリティパッチを適用するには次のようにします。
# freebsd-update fetch # freebsd-update install # shutdown -r now
再起動後、アップデートされているか確認する。
# uname -srm FreeBSD 11.3-RELEASE-p11 amd64 # freebsd-version -kur 11.3-RELEASE-p11 11.3-RELEASE-p11 11.3-RELEASE-p11
リリースのアップグレード方法
マイナーバージョンのアップグレード
例. 11.3-RELEASE ⇒ 11.4-RELEASE
- 使用中のリリースのセキュリティパッチを実施する。
- マイナーリリースのアップグレードを実施する。
# freebsd-update upgrade -r 11.4-RELEASE
現リリースから新リリースの間に行われた変更について、いくつか質問がきた時は、コメントを確認しながら「y」で応答する。
To install the downloaded upgrades, run "/usr/sbin/freebsd-update install".
上記メッセージを表示し、コマンドプロンプトに戻ったら以下のコマンドの入力する。
# freebsd-update install
ここで再起動後に再度 install をするようにメッセージを表示するのでメッセージを確認して必ず実行する事。
src component not installed, skipped
Installing updates...
Kernel updates have been installed. Please reboot and run
"/usr/sbin/freebsd-update install" again to finish installing updates.
# shutdown -r now
この状態でfreebsd-versionを実行すると以下のような表示になります。
# freebsd-version -kur 11.4-RELEASE-p1 11.4-RELEASE-p1 11.3-RELEASE-p11
# freebsd-update install src component not installed, skipped Installing updates... done.
「Installing updates… done.」と表示したら完了なので再起動する。
# shutdown -r now
再起動後、アップデートされているか確認する。
# uname -srm FreeBSD 11.4-RELEASE-p1 amd64 # freebsd-version -kur 11.4-RELEASE-p1 11.4-RELEASE-p1 11.4-RELEASE-p1
メジャーバージョンのアップグレード
- 使用中のリリースのセキュリティパッチを実施する。
- 現行リリースの最終マイナーバージョンまでアップグレードを実施する。
- メジャーリリースのアップグレードを実施する。
やり方は基本的にマイナーリリースのアップグレードと同じです。
例.11.4-RELEASE ⇒ 12.1-RELEASE
# freebsd-update upgrade -r 12.1-RELEASE # freebsd-update install # shutdown -r now # freebsd-update install # freebsd-update install # shutdown -r now
パッケージソフトのアップデート
通常は次の操作でパッケージソフトをアップデートします。
# pkg update -f # pkg upgrade -y # shutdown -r now
メジャーリリースのアップグレードを行った場合、以下の操作を実行してパッケージも新リリース向けにアップグレードする必要があります。
# pkg-static install -fy pkg # pkg upgrade -y # freebsd-update install # shutdown -r now
コメント