Freebsd-updateを使用したFreeBSDオペレーティングシステムのアップグレード

この記事では、を使用してFreeBSDオペレーティングシステムをアップグレードしますfreebsd-update。このfreebsd-updateユーティリティを使用して、インスタンスを最新のパッチリリースで更新するか、マイナーリリースまたはメジャーリリースのいずれかにアップグレードすることもできます。

ステップ1:インスタンスを更新する前に考慮すべきポイント

  • インスタンスをバックアップします。最も簡単な方法は、スナップショットを撮ることです。オプションで、からの構成ファイルの追加バックアップを選択することもできます/etc/
  • メンテナンス期間を予約して、その期間内にアップグレードを計画およびテストできるようにします。マイナーリリースまたはパッチリリースのアップグレードと比較して、メジャーリリースのアップグレードにより多くの時間を確保する必要があります。
  • メジャーリリースにアップグレードする場合はfreebsd-update、実稼働サーバーで試す前に、テストまたは開発インスタンスでをテストする方が安全です。スナップショットを使用してテストインスタンスをすばやく起動し、本番インスタンスに影響を与えることなくアップグレードをテストできます。
  • アップグレードを開始する前に、インスタンスのサービスをシャットダウンすることをお勧めします。例:Webサーバー、データベースなど。アップグレードが完了したら、これらを有効にできます。この手順は、メジャーリリースのアップグレードで特に重要です。
  • アップグレードを開始する前に、ターゲットのFreeBSDリリースのリリースノートを確認してください。
  • /var特に新しいマイナーリリースまたはメジャーリリースにアップグレードする場合は、パーティションに少なくとも500MBの空き容量が必要です。

手順2:最新のパッチリリースへの更新

アップデートをダウンロードする

パッチリリースには、オペレーティングシステムファイルとバイナリの修正が含まれており、カーネルの変更も含まれている場合があります。を使用してアップデートを取得しfreebsd-updateます。以下のコマンドの出力は、簡潔にするために編集されています。

# freebsd-version
11.0-RELEASE-p1
# freebsd-update fetch
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 4 mirrors found.
Fetching public key from update4.freebsd.org... done.
Fetching metadata signature for 11.0-RELEASE from update4.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata files... done.
Inspecting system... done.
Preparing to download files... done.
Fetching 998 patches......... done.
Applying patches... done.
Fetching 6 files... done.
The following files will be removed as part of updating to 11.0-RELEASE-p11:
/boot/kernel/hv_ata_pci_disengage.ko
...
The following files will be added as part of updating to 11.0-RELEASE-p11:
/usr/share/zoneinfo/Asia/Barnaul
...
The following files will be updated as part of updating to 11.0-RELEASE-p11:
/bin/freebsd-version
...
WARNING: FreeBSD 11.0-RELEASE-p1 is approaching its End-of-Life date.
It is strongly recommended that you upgrade to a newer
release within the next 2 months.

アップデートのインストール

アップデートがサーバーにダウンロードされました。それらをインストールします。

# freebsd-update install
src component not installed, skipped
Installing updates... done.

必要に応じて、新しいカーネルで再起動します

からへの更新11.0-RELEASE-p111.0-RELEASE-p11は新しいカーネルのインストールが含まれるため、インスタンスを再起動して、新しくインストールされたカーネルで起動します。

# shutdown -r now
... system reboot ... 
# freebsd-version
11.0-RELEASE-p11

これで、インスタンスがから11.0-RELEASEに正常にアップグレードされました11.0-RELEASE-p11。サービスを再度有効にして、インスタンスをテストします。

ステップ3:マイナーまたはメジャーリリースへの更新

アップグレードのダウンロード

このセクションでは、FreeBSDインスタンスをFreeBSDからFreeBSD 11.0-RELEASEにアップグレードします11.1-RELEASEfreebsd-updateこのコマンドは、以前のパッチリリースのアップグレードから、この場合に異なります。ローカルの変更が原因でファイルに競合がある場合はfreebsd-update、から同じことが通知され、競合を解決できるようになります。

# freebsd-version
11.0-RELEASE-p11
# freebsd-update upgrade -r 11.1-RELEASE
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 4 mirrors found.
Fetching metadata signature for 11.0-RELEASE from update4.freebsd.org... done.
Fetching metadata index... done.
Fetching 1 metadata files... done.
Inspecting system... done.

The following components of FreeBSD seem to be installed:
kernel/generic kernel/generic-dbg world/base world/lib32

The following components of FreeBSD do not seem to be installed:
world/base-dbg world/doc world/lib32-dbg

Does this look reasonable (y/n)? y
Fetching metadata signature for 11.1-RELEASE from update4.freebsd.org... done.
Fetching metadata index... done.
Fetching 1 metadata files... done.
Inspecting system... done.
Fetching files from 11.0-RELEASE for merging... done.
Preparing to download files... done.
Fetching 11513 patches.....10....11510. done.
Applying patches... done.
Fetching 262 files... done.
Attempting to automatically merge changes in files... done.
The following files will be removed as part of updating to 11.1-RELEASE-p0:
/usr/include/netinet/ip_ipsec.h
...
The following files will be added as part of updating to 11.1-RELEASE-p0:
/boot/kernel/amd_ecc_inject.ko
...
The following files will be updated as part of updating to 11.1-RELEASE-p0:
/.cshrc
...
To install the downloaded upgrades, run "/usr/sbin/freebsd-update install".

アップグレードのインストール

ファイルがダウンロードされ、すべての競合が解決されたので、先に進んでアップデートをインストールできます。

# freebsd-update 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.

新しいカーネルで再起動し、インストールを続行します

インスタンスが再起動したら、実行中のカーネルのバージョンを確認して、インストールを再開できます。

# uname -a
FreeBSD fbsd 11.1-RELEASE FreeBSD 11.1-RELEASE #0 r321309: Fri Jul 21 02:08:28 UTC 2017
    [email protected]:/usr/obj/usr/src/sys/GENERIC  amd64
# freebsd-version
11.0-RELEASE-p11
# freebsd-update install
src component not installed, skipped
Installing updates...
Completing this upgrade requires removing old shared object files.
Please rebuild all installed 3rd party software (e.g., programs
installed from the ports tree) and then run "/usr/sbin/freebsd-update install"
again to finish installing updates.

メジャーバージョンでは、さまざまなアプリケーションバイナリインターフェイス(ABI)を使用しているため、ほとんどのサードパーティアプリケーションが動作しなくなります。ポートを使用してサードパーティアプリケーションをビルドする場合は、それらのアプリケーションをすべてビルドする必要があります。パッケージ管理システムを使用する場合は、次のコマンドを使用できます。

# pkg-static upgrade -f

すべてのパッケージを再インストールしたら、freebsd-updateインストールを完了します。

# freebsd-update install
src component not installed, skipped
Installing updates... done.
# freebsd-version
11.1-RELEASE

おめでとうございます。インスタンスがにアップグレードされました11.1-RELEASE!これで、必要なすべてのサービスを有効にして、インスタンスが期待どおりに動作していることを確認できます。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。