RHEL 6 から RHEL 8 へのアップグレード

Red Hat Enterprise Linux 8

Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 8 へのインプレースアップグレードの手順

Red Hat Customer Content Services

概要

このドキュメントでは、Red Hat Enterprise Linux (RHEL) 6 から RHEL 8 へのインプレースアップグレードを実行する方法を説明します。RHEL 8 へのアップグレードは 2 段階のプロセスです。RHEL 8 にアップグレードする前に、システムを RHEL 6 から RHEL 7 にアップグレードする必要があります。

はじめに

このドキュメントのガイドラインは、次の既存のドキュメントを頻繁に参照しています。

このドキュメントには、RHEL 6 から RHEL 8 へのアップグレードに固有の追加手順も含まれています。

Red Hat ドキュメントへのフィードバック (英語のみ)

ご意見ご要望をお聞かせください。ドキュメントの改善点はございませんか。改善点を報告する場合は、以下のように行います。

  • 特定の文章に簡単なコメントを記入する場合は、以下の手順を行います。

    1. ドキュメントの表示が Multi-page HTML 形式になっていて、ドキュメントの右上端に Feedback ボタンがあることを確認してください。
    2. マウスカーソルで、コメントを追加する部分を強調表示します。
    3. そのテキストの下に表示される Add Feedback ポップアップをクリックします。
    4. 表示される手順に従ってください。
  • より詳細なフィードバックを行う場合は、Bugzilla のチケットを作成します。

    1. Bugzilla の Web サイトにアクセスします。
    2. Component で Documentation を選択します。
    3. Description フィールドに、ドキュメントの改善に関するご意見を記入してください。ドキュメントの該当部分へのリンクも記入してください。
    4. Submit Bug をクリックします。

第1章 アップグレードの計画

インプレースアップグレードは、システムを RHEL の新しいメジャーバージョンに移行するのに推奨される方法です。

重要

開始する前に、システムに特定の変更を行ったらアップグレードプロセスを続行できなくなる状況を防ぐために、リンク先のドキュメントを含むこの参考文献を読むことが推奨されます。特に、システムがこのドキュメントで説明されている要件を満たしていることと、お客様が既知の制限を把握しているようにしてください。

1.1. 要件

RHEL 6 から RHEL 8 へアップグレードするためにシステムが満たす必要のある一般的な基準は次のとおりです。

  • アーキテクチャーが Intel 64 または IBM Z である。
  • RHEL Server バリアントがインストールされている。
  • FIPS モードが無効になっている。
  • システムには LUKS で暗号化されたパーティションまたはボリュームが含まれていない。
  • RHEL 8 の最小 ハードウェア要件 が満たされている。
  • RHEL 6、RHEL 7、および RHEL 8 のコンテンツを含むリポジトリーへのアクセスが提供されます。

さらに要件と制限があることに注意してください。詳細は、次を参照してください。

1.2. 考慮事項

アップグレードする前に、以下を検討する必要があります。

  • RHEL メジャーリリース間の重要な変更

    詳細は、次を参照してください。

  • Red Hat が配布していないアプリケーション

    Red Hat が提供していない、アップグレードするシステムでアプリケーションを実行する場合は、次の点を考慮してください。

    • RPM ベースのアプリケーションの場合:

      • 特定のターゲットバージョンと互換性のあるパッケージが必要です。
      • すべての依存関係を含むパッケージは、アクセス可能なリポジトリーで利用できます。
    • 非 RPM ベースのアプリケーションの場合:

      • この 2 つのメジャーバージョンのアップグレード中に、依存関係とライブラリーが変更された可能性があります。特定のターゲットバージョンで依存関係とライブラリーが使用可能であることを確認してください。
      • アプリケーションが Python や Ruby などのインタープリター型言語で記述されている場合は、ターゲットバージョンですべてのライブラリが使用可能かどうかを確認します。

1.3. アップグレードプロセスの概要

RHEL 6 から RHEL 8 へのインプレースアップグレードには、次の主要な手順が必要です。

  1. RHEL 6 システムをアップグレードする準備を行い、RHEL 6 システムを RHEL 6.10 の最新バージョンに更新します。
  2. RHEL 6 システムのアップグレード前の評価を実行し、報告された問題を解決します。
  3. RHEL 7.6 へのインプレースアップグレードを実行します。
  4. RHEL 7 システムを RHEL8 システムへアップグレードする準備を行うために、RHEL 7 システムを RHEL 7.8 に更新します。
  5. RHEL 7 システムのアップグレード前の評価を実行し、このフェーズで特定された問題を解決します。
  6. RHEL 8.2 へのインプレースアップグレードを実行します。
  7. アップグレードされたシステムの状態を確認します。

詳細な手順は、以下の章を参照してください。

第2章 RHEL 7 へのアップグレード用に RHEL 6 システムの準備

このセクションでは、RHEL 6 システムを RHEL 7 にアップグレードするための準備に必要な手順の概要を説明します。

RHEL 6 システムから RHEL 7 へインプレースアップグレードを行うための準備は、次の手順で行います。

  1. RHEL 6 システムをバックアップし、バックアップがリカバリー可能であることを確認します。

    環境でバックアップを作成する方法は、バックアップソフトウェアのドキュメントを参照してください。次の一覧に、バックアップと復元に関する追加リソースを示します。

  2. RHEL 6 システムを RHEL 6.10 に更新し、ホストを再起動します。

    # yum update
    # reboot
  3. RHEL 6 の Extras リポジトリーを有効にし、RHEL 7 へのインプレースアップグレードに必要なユーティリティーをインストールします。詳細は「Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 7 への移行方法」「ステップ 1: システムの準備」セクションを参照してください。

第3章 RHEL 6.10 から RHEL 7.6 へのアップグレード

このセクションでは、RHEL 6 から RHEL 7 へのインプレースアップグレードの主な手順を説明します。

インプレースアップグレードは、主に、システムのアップグレード前の評価と、実際のインプレースアップグレードの 2 段階で構成されます。

  • アップグレード前のフェーズでは、Preupgrade Assistant がシステムから情報を収集して分析し、考えられる修正措置を提案します。Preupgrade Assistant はシステムに変更を加えません。
  • インプレースアップグレードフェーズでは、Red Hat アップグレードツールが RHEL 7 パッケージをインストールし、可能な場合は基本構成を調整します。

RHEL 6 から RHEL 7 へのインプレースアップグレードを実行するには、以下を行います。

  1. Preupgrade Assistant を使用してシステムのアップグレードの可能性を評価し、アップグレードを続行する前にレポートで特定された問題を修正します。詳細な手順は、「Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 7 への移行方法」「ステップ 2: システム評価の実行」を参照してください。
  2. Red Hat アップグレードツールを使用して RHEL 7.6 にアップグレードします。詳細な手順は、「Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 7 への移行方法」「Step 3: アップグレードの実行」セクションを参照してください。

第4章 RHEL 8 へのアップグレードのための RHEL 7 システムの準備

このセクションでは、RHEL 8 へのアップグレードを続行する前に、RHEL 7 システムで実行する必要があるアクションを説明します。

RHEL 7 システムを RHEL8 システムへアップグレードするための準備は、次の手順で行います。

  1. GRUB Legacy ブートローダーを GRUB2 に移行します

    アップグレード後も、RHEL 7 は GRUB Legacy ブートローダーを使用します。ただし、GRUB Legacy は RHEL 7 以降のバージョンでは対応していません。したがって、ブートローダーを手動で GRUB2 に移行する必要があります。詳細は、『RHEL 7 システム管理者のガイド』「GRUB Legacy から GRUB 2 へのアップグレード」セクションを参照してください。

  2. インストールされたパッケージの潜在的な問題を解決します。詳細は「インストールされたパッケージが現在の RHEL メジャーバージョンと一致することを確認」を参照してください。
  3. カスタムスクリプト System V および Upstart を、systemd サービスに合わせて調整します。

    RHEL 7システムでは、systemdUpstart を init システムとして置き換えます。システムの起動時のシステムサービスの並列起動など、systemd が提供する機能を使用するには、レガシースクリプトの System V および Upstart を、手動で systemd サービスに変換します。詳細は、「Converting traditional sysV init scripts to Red Hat Enterprise Linux 7 systemd unit files」を参照してください。

  4. スクリプトのシステムディレクトリーへのパスを更新します。

    RHEL 7 システムでは、/bin ディレクトリー、/sbin ディレクトリー、/lib ディレクトリー、および /lib64 ディレクトリーは、/usr 内の対応するディレクトリーへのシンボリックリンクに置き換えられました。たとえば、RHEL 8では、/bin は、/usr/bin/ ディレクトリーへのシンボリックリンクです。

    /bin/sbin/lib、および /lib64 が実際のディレクトリーにあることを期待するスクリプトまたはアプリケーションを使用する場合は、それに応じて調整してください。たとえば、スクリプトおよびアプリケーションを次のように更新できます。

    • /usr/bin/ などの /usr 内のパスを使用します
    • /bin/sbin/lib、および /lib64 がディレクトリーではなくシンボリックリンクであることを受け入れます。
  5. YUM 4 API を使用するように YUM スクリプトとプラグインを更新します。

    RHEL 8 は、YUM 3 の Python API に対応しなくなりました。レガシー API を使用するスクリプトまたは YUM プラグインを使用する場合は、それを YUM 4 API に移行します。詳細は「YUM スタックへの主な変更」を参照してください。

  6. アップグレード後に特定のパッケージが見つからない場合は、「トラブルシューティング」の章の「RHEL 7 へのアップグレード後に不足しているパッケージをインストール」セクションを参照してください。
  7. 『RHEL 8 の導入における検討事項』を確認し、必要に応じてシステムに追加の変更を加えます。
  8. システムを RHEL 7.8 に更新し、ホストを再起動します。

    # yum update
    # reboot
  9. すべてのアプリケーションとサービスが構成され、期待どおりに機能することを確認します。たとえば、ホストで DNS サーバーを実行している場合は、アップグレード後も構成が有効であること、およびサービスがアップグレード前と同じように機能することを確認します。
  10. 『RHEL 7 から RHEL 8 へのアップグレード』「アップグレードに向けて RHEL 7 システムの準備」に記載されている準備手順に従います。

第5章 RHEL 7.8 から RHEL 8.2 へのアップグレード

このセクションでは、RHEL 7 ホストを RHEL 8 に更新する方法を説明します。RHEL バージョン 7.8 は、RHEL 8.2 にアップグレードするための前提条件であることに注意してください。

RHEL 6 から RHEL 7 へのインプレースアップグレードと同様、インプレースアップグレードは主に 2 つの段階で構成されます。1 つ目は、システムが変更されていないシステムのアップグレード前の評価、もう 1 つは実際のインプレースアップグレードです。RHEL 7 から RHEL 8 へのアップグレードの場合は、両フェーズが Leapp ユーティリティーにより処理されます。

RHEL 7.8 から RHEL 8.2 へのインプレースアップグレードを実行するには、以下を行います。

  1. 『RHEL 7 から RHEL 8 へのアップグレード』「アップグレード前レポートの確認」で説明されているように、システムのアップグレード可能性を評価し、報告された問題を修正します。
  2. 『RHEL 7 から RHEL 8 へのアップグレード』「RHEL 7 から RHEL 8 へのアップグレードの実行」の指示に従って、RHEL 7 システムを RHEL 8 にアップグレードします。

関連情報

第6章 アップグレード後のタスクの実行

このセクションでは、システムを RHEL 8 にアップグレードした後に実行する必要がある主なアクションを提案します。

具体的には、システムを RHEL 8 にアップグレードしたら、以下のタスクを実行します。

  1. アップグレードされたシステムの状態を確認します。推奨手順の一覧は、『RHEL 7 から RHEL 8 へのアップグレード』ドキュメントの「RHEL 8 システムのアップグレード後の状態の確認」の章を参照してください。
  2. セキュリティポリシーを再評価して再適用します。詳細な手順は、『RHEL 7 から RHEL 8 へのアップグレード』ドキュメントの「セキュリティーポリシーの適用」セクションを参照してください。
  3. ファイルシステム上でデフォルトの SELinux セキュリティーコンテキストを復元します。

    # restorecon -Rv /

    SELinux セキュリティーコンテキストを復元すると、大きなファイルシステムで時間がかかる可能性があることに注意してください。必要に応じて、-e directory パラメーターを使用して、大規模なファイルシステムまたはリモートファイルシステムを除外できます。詳細は、man ページの restorecon(8) を参照してください。

  4. アップグレード中に処理されなかったアプリケーションを手動で移行します。これは、ベース RHEL から入手できるアプリケーションと、Red Hat Software CollectionsRed Hat Developer Toolset、または Red Hat Developer Tools から提供されるおよびアプリケーションの両方に適用できます。

    RHEL 8 ホストでは、いくつかのユーザー空間コンポーネントがアプリケーションストリームとして配布されます。アプリケーションストリームの使用は、『ユーザー空間コンポーネントのインストール、管理、および削除』ドキュメントを参照してください。

    移行の手順は、各コンポーネントについて、Red Hat カスタマーポータルの RHEL 8 のドキュメント を参照してください。たとえば、データベースの場合は、『さまざまな種類のサーバーのデプロイメント』ドキュメントの「データベースサーバー」の章を参照してください。

  5. インストールされたパッケージの潜在的な問題を解決します。詳細は「インストールされたパッケージが現在の RHEL メジャーバージョンと一致することを確認」を参照してください。

第7章 トラブルシューティング

このセクションでは、RHEL 6 から RHEL 7 へ、および RHEL 7 から RHEL 8 へのインプレースアップグレード後に、パッケージ関連の問題をトラブルシューティングして解決する方法を説明します。

7.1. インストールされたパッケージが現在の RHEL メジャーバージョンと一致することを確認

現在インストールされている RHEL のメジャーバージョン用に構築されたパッケージのみがインストールされていることを確認します。

  1. RHEL のメジャーバージョンが異なるインストール済みパッケージを表示するには、次のコマンドを実行します。

    • RHEL 7 では、次のように入力します。

      # rpm -aq | grep -v -e '[.]el7' -e '^gpg-pubkey-'
    • RHEL 8 では、次のように入力します。

      # rpm -aq | grep -v -e '[.+]el8' -e '^gpg-pubkey-' -e '^libmodulemd1-'
  2. 前の手順で報告されたパッケージには対応していないため、削除または交換します。詳細は「RHEL バージョンが異なるパッケージをインストールすることはできますか?」を参照してください。

    前の手順のコマンドで出力が表示されなかった場合、インストールされているすべてのパッケージは、インストールされている RHEL メジャーバージョン用に構築されており、それ以上のアクションは必要ありません。

7.2. 依存関係エラーの修正

インプレースアップグレードの後、パッケージの依存関係の一部がアップグレードツールによって削除されている間にパッケージがインストールされる可能性があります。この問題を解決するためには、以下を行います。

  1. 依存関係エラーを特定します。

    # yum check dependencies

    コマンドが出力を表示しない場合、それ以上のアクションは必要ありません。

  2. 依存関係エラーを修正するには、影響を受けるパッケージを再インストールします。この操作中に、yum ユーティリティーは不足している依存関係を自動的にインストールします。必要な依存関係がリポジトリーで利用できない場合は、そのパッケージを手動でインストールします。

7.3. RHEL 7 へのアップグレード後に不足しているパッケージをインストール

RHEL 6 から RHEL 7 へのアップグレード後に特定のパッケージが見つからない場合は、そのパッケージを含む Red Hat Upgrade Tool にリポジトリーが提供されていない可能性があります。アップグレード後にそのようなパッケージをインストールするには、たとえば次のコマンドを使用できます。

# cd /root/preupgrade
# bash noauto_postupgrade.d/install_rpmlist.sh kickstart/RHRHEL7rpmlist_kept

さまざまな問題が RPM のインストールを妨げる可能性があることに注意してください。この場合は、問題を解決してください。アップグレードされたシステムにインストールする必要があるパッケージの一覧を含む他のファイルの詳細は、/root/preupgrade/kickstart/README ファイルおよびアップグレード前のレポートを参照してください。

7.4. 既知の問題

アップグレード時の既知の問題:

  • RHEL 6 から RHEL 7 の場合は、『Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 7 への移行方法』「既知の問題」セクションを参照してください。
  • RHEL 7 から RHEL 8 の場合は、『RHEL 7 から RHEL 8 へのアップグレード』「既知の問題」セクションを参照してください。

第8章 関連情報

法律上の通知

Copyright © 2020 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.

このページには機械翻訳が使用されている場合があります (詳細はこちら)。