Warning message

This translation is outdated. For the most up-to-date information, please refer to the English version.

Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 7 への移行方法

Solution Verified - Updated -

Environment

  • Red Hat Enterprise Linux 6.x から Red Hat Enterprise Linux 7 への移行
製品バリエーション x86 アーキテクチャー x86_64 アーキテクチャー IBM Power IBM z Systems
Desktop エディション サポートなし サポートなし N/A N/A
Workstation エディション サポートなし サポートなし N/A N/A
Server サポートなし サポートなし サポートあり サポートあり[1] サポートあり[2]
HPC Compute Node サポートなし サポートあり N/A N/A
CloudForms ソフトウェアを実行しているサーバー N/A サポートなし N/A N/A
Satellite ソフトウェアを実行しているサーバー N/A サポートなし[3] N/A N/A
[1] Red Hat Enterprise Linux for Power (ビッグエンディアン)
[2] Red Hat Enterprise Linux for IBM z Systems
[3] Red Hat Satellite 6 ドキュメントは、Satellite 環境を RHEL 6 から RHEL 7 に移行する情報と必要なツールを提供しますが、インプレースアップグレードはこの手順ではサポートされていません。Satellite 6 ドキュメント を参照してください。

Issue

  • 最新の Red Hat Enterprise Linux 6 を最新の Red Hat Enterprise Linux 7 にインプレースアップグレードする方法
  • Preupgrade Assistant および Red Hat Upgrade Tool を使用して Red Hat Enterprise Linux 6 を Red Hat Enterprise Linux 7 にアップグレードする方法

Resolution

概要

Red Hat Enterprise Linux 7 (RHEL 7) は、以前の RHEL メジャーバージョン (RHEL 6) からのインプレースアップグレードを可能にする初の RHEL のメジャーリリースです。インプレースアップグレードは、既存のオペレーティングシステムを維持したままで Red Hat Enterprise Linux の新規のメジャーリリースにシステムをアップグレードする方法です。 注意: Amazon Web Services(AWS) インスタンスおよび Amazon Machine Image のアップグレードはこの手順の対象外となります。 この RHEL 6 から RHEL 7 へのアップグレード手順は、Red Hat Enterprise Linux システムが以下の基準を満たす場合に完全にサポートされます。
  • 最新の Red Hat Enterprise Linux 6: RHEL 7 にアップグレードする前に、RHEL 6 から開始し、最新の RHEL 6 パッケージがインストールされるようにシステムを更新する必要があります (以下の手順で説明します)。
  • すべてのサーバーエディション (x86 以外): この手順に従うと RHEL 6 のすべてのサーバーエディション (x86以外) をアップグレードできます。RHEL Workstation および Desktop システムはサポートされません。POWER アーキテクチャーのアップグレードはサポートされます。上記の表を参照してください。32 ビットアーキテクチャーからのアップグレードはサポートされません。
  • パッケージグループの制限: このアップグレードプロセスで処理されるのは、次のパッケージグループとパッケージのみです: Minimal (@minimal)、Base (@base)、Web Server (@web-server)、DHCP Server、File Server (@nfs-server)、および Print Server (@print-server)。その他のパッケージとグループのアップグレードはサポートされていませんが、パッケージを RHEL 6 システムからアンインストールしてから、アップグレードされた RHEL 7 システムにそれらを正常に再インストールできる場合があります。以下の表を参照してください。
RHEL 6 から RHEL 7 へのアップグレードでサポートされるユースケース:
サポート対象 サポート対象外
アップグレードされるソース 最新の RHEL 6.X 最新の 6.X 以前の RHEL 6 バージョン
目的の RHEL バージョン 最新の RHEL 7.X 最新の 7.X 以前の RHEL 7 バージョン
ファイルシステム 同様のファイルシステムのアップグレード
例: ext3 から ext3、ext4 から ext4、xfs から xfs
異なる種類のファイルシステムのアップグレード
例: ext4 から xfs
GNOME、KDE なし すべての GNOME、KDE インストール
パッケージ/グループ Minimal (@minimal)
Base (@base)
Web Server (@web-server)
DHCP Server
File Server (@nfs-server)
Print Server
その他すべて
仮想化 KVM、VMWare Microsoft Hyper-V (近日リリース予定)
Red Hat Software Collections テストされたプロセスを使用 その他すべて
高可用性 なし すべて
アップグレード手順は以下の基本的なステップで構成されています。
  1. システムの準備
    システムを RHEL 6 の最新マイナーバージョンに更新し、必要なツールをインストールします。
  2. システム評価の実行
    Preupgrade Assistant を使用してシステムを評価し、アップグレードを実際に実行する前にアップグレードで起こりうる問題を特定します。システムは変更されないため、すべての問題に対処するまでこのステップを繰り返し実行することができます。
  3. アップグレードの実行
    システムがバックアップされたことを確認し、Red Hat Upgrade Tool を使用してアップグレードを実行します。
  4. フィードバックの提供
    問題がある場合は Red Hat に連絡します。

ステップ 1: システムの準備

  1. 最新パッケージの取得
    Red Hat Enterprise Linux の最新のマイナーバージョンを実行し、最新のパッケージがあることを確認するため、システムを登録およびサブスクライブした後に以下を入力します。
    # yum update -y
    # reboot
    
  2. Extras リポジトリーの有効化
    preupgrade-assistantpreupgrade-assistant-uipreupgrade-assistant-el6toel7preupgrade-assistant-el6toel7-data、および redhat-upgrade-tool パッケージが含まれるリポジトリーを有効にします。このリポジトリーをサブスクライブするには、Red Hat Satellite Server への接続時に RHN Classic からサブスクライブするか、CDN への接続時に Red Hat Subscription Management からサブスクライブします。 RHN Classic (Satellite):
    # rhn-channel --add --channel rhel-x86_64-server-extras-6 
    # rhn-channel --add --channel rhel-x86_64-server-optional-6 
    Red Hat Subscription Management
    # subscription-manager repos --enable rhel-6-server-extras-rpms 
    # subscription-manager repos --enable rhel-6-server-optional-rpms 
  3. 必要なパッケージのインストール
    以下を入力して、アップグレードに必要なパッケージをインストールします。
    # yum -y install preupgrade-assistant preupgrade-assistant-ui preupgrade-assistant-el6toel7 redhat-upgrade-tool
    

ステップ 2: システム評価の実行

Preupgrade Assistant (preupg コマンド) を使うと、システムに変更を加えずに、Red Hat Enterprise Linux 6 から Red Hat Enterprise Linux 7 へのアップグレード時に直面する可能性のある問題の有無をチェックすることができます。これにより、実際のアップグレードプロセスの開始前に、Red Hat Enterprise Linux 7 へのアップグレードが成功する可能性を評価することができます。 注意: 実際のアップグレードの前に、問題を発生させる可能性のあるすべての要素に対応するために Preupgrade Assistant を複数回実行することが可能です (複数回実行する必要があります)。Preupgrade Assistant がインストール済みのシステムに悪影響を与えることはありません。しかし、システム上でのインプレースアップグレードの実行後には、直前に動作していたシステムを元に戻すことはできません。 Preupgrade Assistant は以下を実行します。
  • パッケージの削除や互換性のない古い機能、名前の変更、設定ファイルの互換性欠如など、システムにインプレースアップグレードを行った場合に考えられる制限を評価します。
  • 分析結果を含むレポートを提供します。
  • インプレースアップグレード後に、より複雑な問題を完了するために使用するアップグレード後のスクリプトを提供します。
  • 情報またはログの保存を除き、お使いのシステムを変更されない状態に維持します。評価対象のシステムを変更することはありません。
Preupgrade Assistant はモジュールシステムをベースとしているため、新たなチェックおよびアップグレード操作を比較的簡単に追加できます。そのため、ツールは徐々に改善されていくことを期待できます。 Preupgrade Assistant パッケージがインストールされていると、システム評価結果を評価対象のシステムにてローカルで確認するか、ネットワーク上でレポートを複数のシステムから結果を収集する可能性があるリモートサーバーに提出することができます。これらの 2 つのオプションを以下に示します。

オプション 1: Preupgrade Assistant を実行してレポートをローカルで確認する

  1. preupg コマンドを実行してシステムの評価を実行
    # preupg    With no options, produces result.html and tar.gz results files
    The Preupgrade Assistant is a diagnostics tool 
    and does not perform the actual upgrade.
    Do you want to continue? [Y/n]
    y
    Gathering logs used by the Preupgrade Assistant:
    All installed packages : 01/10 ...finished (time 00:01s)
       ...
    |Removed rpms                                                                       |needs_inspection  |
    |Content for enabling and disabling services based on RHEL 6 system                 |needs_inspection  |
    |Python 2.7.5                                                                       |needs_inspection  |
    |Check for usage of dangerous range of UID/GIDs                                     |needs_inspection  |
    |Packages not signed by Red Hat                                                     |needs_action      |
    --------------------------------------------------------------------------------------------------------
    The tarball with results is stored in '/root/preupgrade-results/preupg_results-170629152543.tar.gz' .
    The latest assessment is stored in the '/root/preupgrade' directory.
    Summary information:
    We have found some potential risks.
    Read the full report file '/root/preupgrade/result.html' for more details.
    Please ensure you have backed up your system and/or data 
    before doing a system upgrade to prevent loss of data in 
    case the upgrade fails and full re-install of the system 
    from installation media is needed.
    Upload results to UI by the command:
    e.g. preupg -u http://example.com:8099/submit/ -r /root/preupgrade-results/preupg_results-170629152543.tar.gz .
    
  2. 評価結果の表示
    Preupgrade Assistant がシステムをスキャンすると、実行された各テストはコマンドラインの標準出力に出力され、各テストの後にその結果が表示されます。また、詳細な情報が含まれる評価レポートファイルも生成されます。
    • コマンドライン: 各テストの結果キーワードと評価概要が画面に表示されます。それらの結果をスクロールして、評価がどのように完了したかを確認します。結果のキーワードのみがが表示されます。詳細は評価 HTML レポートを参照してください。
    • 評価レポートファイル: /root/preupgrade/result.html ファイルはすべての Web ブラウザーで開くことができます。以下は、Firefox ブラウザーを使用してこのファイルを開く例になります。 # firefox file:///root/preupgrade/result.html
  3. 各テスト結果のチェック
    評価中に実行された各テストには結果キーワードが提供されます。テスト結果に可能なキーワードとその説明を以下の表に示します。
    結果キーワード 説明
    PASS すべてが正常であることを意味します。すべての終了コードが PASS として一覧表示される場合は、アップグレードに進むことができます。
    FAIL アップグレードに重大なリスクが想定されます。インプレースアップグレードを行うことはできません。
    NEEDS_ACTION アップグレードに高いリスクが想定されます。Red Hat Upgrade Tool を実行する前に、管理者によるアクションが必要です。
    NEEDS_INSPECTION 中程度または低いリスクが想定されます。この終了コードは、必ずしもアップグレードが失敗することを意味している訳ではありませんが、システムが完全に機能しない状態になる可能性があります。チェックの必要な部分があり、管理者による問題の解決が必要になる場合があります。
    FIXED アップグレードに必要な変更が自動的に行われたことを示しています。これ以上確認の必要はありません。
    INFORMATIONAL 必須情報ではないものの、役に立つ情報です。
    NOT_APPLICABLE テスト対象として指定したパッケージはシステムにありません。
    ERROR 通常、これはツール自体のエラーを示します。このタイプの問題は、Red Hat サポートに報告してください。
  4. README ファイルの表示
    出力ディレクトリー (/root/preupgrade/) には README ファイルも含まれます。preupg ツールに関する出力ディレクトリーの構造、終了コード、およびリスクの説明の詳細については、このファイルを参照します。
  5. 修正の実行
    評価中に Preupgrade Assistant によって見つかった問題を修正します。レポート上には問題ごとに Solution テキストがあり、これを参考にして問題を解決します。その後、再度評価を実行し、解決が必要な新たな問題が発生しなければステップ 3 に進みシステムをアップグレードします。

オプション 2: Preupgrade Assistant を実行してリモートでレポートを表示する

preupgrade-assistant-ui パッケージをインストールすると、Preupgrade Assistant のブラウザーベースのインターフェイスと対話することができ、これにより複数のシステムから評価レポートを収集でき、結果のフィルターを簡単に行うことができます。このアップグレード手順は GNOME デスクトップの更新に対応しないため、この手順ではリモート GUI デスクトップ上に Preupgrade Assistant からの結果を表示する方法を示します。 警告:
Preupgrade Assistant Web UI をインストールおよび使用する場合、/etc/httpd/conf.d/ ディレクトリーにファイルが追加され、コンテンツを提供するためにシステム上で httpd サービスが実行されるため、アップグレードするシステムの内容が変更されます。システムに関するデータをネットワークに公開することに懸念があるか、またはアップグレードするシステムにコンテンツを追加したくない環境では、この手順を使用しないでください。より安全に Preupgrade Assistant の評価出力をグラフィカルに表示するには、 result.html ファイルをリモートシステムにコピーし、Web ブラウザーで開きます。 Preupgrade Assistant Web UI を使用して、ネットワーク経由でブラウザーから評価結果にアクセスする場合には以下の手順を実行します。
  1. httpd パッケージのインストール
    アップグレードする RHEL 6 システムに httpd パッケージがインストールされていない場合は、以下を入力します。
    # yum -y install httpd
    
  2. conf.d ファイルの設定
    デフォルトでは、Preupgrade Assistant Web UI はローカルシステム (127.0.0.1) でのみ利用できます。ローカルシステムのすべてのネットワークインターフェースで利用可能にするには (デフォルトでは TCP ポート 8099)、以下を入力します。
    # cd /etc/httpd/conf.d
    # cp 99-preup-httpd.conf.public 99-preup-httpd.conf
    
  3. 新規 .conf ファイルの編集
    上記のようなコピーしたばかりの 99-preup-httpd.conf は、ホストの IP アドレスから Preupgrade Assistant UI を利用可能にします。IP アドレスではなくホスト名を使用してこのサービスにアクセスする場合には、このファイルの "NameVirtualHost" 行を変更することもできます。
    たとえば、名前 preupg-ui.example.com をアップグレードするシステムを示す DNS CNAME レコードがある場合、行 NameVirtualHost preupg-ui.example.com:8099 を使用してサービスにアクセスできます。
  4. ファイアウォールの解放および SELinux
    ファイアウォールが実行され、かつ SELinux が enforcing モードである場合、以下のコマンドを使用すると Preupgrade Assistant Web UI サービスで必要とされるポートへのアクセスが許可されます。
    # setsebool httpd_run_preupgrade on
    # iptables -I INPUT -m state --state NEW -p tcp --dport 8099 -j ACCEPT
    
  5. httpd サービスを再起動して新規設定をロード
    # service httpd restart
    
  6. Web ブラウザーから Preupgrade Assistant Web UI にアクセス
    別のシステムの Web ブラウザーから、IP アドレス (例: http://192.168.99.1:8099) またはホスト名 (例: http://preupg-ui.example.com:8099) のいずれかを使用して Preupgrade Assistant Web UI サービスにアクセスします。
  7. Web UI 認証情報
    Preupgrade Assistant Web UI への初回アクセス時に、ユーザーアカウントの追加 (アカウントを使用してサービスへアクセスできるようになります) または認証機能の無効化を行うことができます。
    • 認証あり
      既存のユーザーアカウントを使用するか、新規アカウントを追加します。認証システムが無効になっている場合、"Submit" を選択して新規ユーザーを作成すると、自動的に認証システムが有効になります。ユーザーを後で編集したい場合は、UI の User Management タブに移動します。
    • 認証なし
      認証が不要な場合は、「Disable Authentication」 をクリックするとグラフィカルインターフェースの使用を開始できます。
  8. preupg コマンドの実行
    アップグレードするシステムに戻ります。システム評価を実行し、結果を自動的に Preupgrade Assistant Web UI サーバーに送信するには、以下を入力します。
    # preupg -u http://localhost:8099/submit/
    The Preupgrade Assistant is a diagnostics tool 
    and does not perform the actual upgrade.
    Do you want to continue? [Y/n]
    y
    Gathering logs used by the Preupgrade Assistant:
    All installed packages : 01/10 ...finished ...
      ...
    Report submitted successfully. You can inspect it at http://localhost:8099/1/detail/
    
  9. Web UI から評価レポートを表示
    リモートシステム上の Web ブラウザーに戻り、再度 Web UI にアクセスするか、ページを再読み込みします。Preupgrade Assistant Web UI の例を以下に示します。 Preupgrade Assistant report in Web UI
  10. 報告された問題の修正
    Web UI で適切な評価レポートを見つけ、展開します。レポートの各項目を確認し、必要な変更を行って報告された問題を修正します。その後、preupg を実行して再度システムを評価し、Web UI にレポートをアップロードします。解決が必要な新たな問題が発生しなければ、ステップ 3 に進みます。

Step 3: アップグレードの実行

Preupgrade Assistant による評価が完了し、すべての問題が対応済みとなったら、次に Red Hat Upgrade Tool を使用して実際にシステムのアップグレードを実行します。 重要: Red Hat Upgrade Tool を実行する前提条件として、Preupgrade Assistant ツールの実行が必要になります。最初に Preupgrade Assistant を実行せずにシステム上で Red Hat Upgrade Tool を実行しようとすると、preupgrade-assistant has not been run というエラーが発生し、ツールが終了します。--force オプションを使用すると、このエラーをオーバーライドできる可能性がありますが、このオプションを使用してアップグレードされたシステムはサポートされません。
  1. システムのバックアップ
    Red Hat Upgrade Tool を使用してシステム上でアップグレードを実行する前に、データの損失を防ぐためにすべてのデータをバックアップしてください。
  2. 最初にテストする
    実稼働システムをアップグレードしないでください。最初にシステムをクローンし、安全な環境でアップグレード手順をテストします。
  3. Subscription Management への移行
    Red Hat Enterprise Linux 7 には RHN Classic ツールではなく Red Hat Subscription Management (RHSM) ツールが必要です。Red Hat Enterprise Linux 6 が RHN Classic ツールを使用して登録されている場合、登録を解除 (RHN Classic からシステムプロファイルを削除する を参照) した後に subscription-manager コマンドを使用して再度登録することができます。詳細は、Get Started with Red Hat Subscription Management を参照してください。Red Hat Enterprise Linux を RHN から RHSM に移行する の手順を使用することもできます。
  4. redhat-upgrade-tool の実行 このコマンドを実行して、Red Hat Enterprise Linux 7 のアップグレードに必要なパッケージをダウンロードし、パッケージをインストールする準備を行います。Red Hat Enterprise Linux 7 のパッケージの場所を指定するオプションは複数あります。
    • インストールディレクトリー
      Red Hat Enterprise Linux 7 パッケージが存在するリポジトリーの場所を指定するには、--instrepo オプションを使用します。Red Hat ではこのリポジトリーを提供しないため、ご自身で作成する必要があります。以下の例では、FTP サーバーを使用し、そのサーバー上で最新の RHEL 7 DVD の内容が rhel7/ ディレクトリーにコピーされます。さらに、最新の Red Hat Enterprise Linux 7 パッケージが含まれる HTTP または HTTPS サイトを使用することもできます。
    # redhat-upgrade-tool --network <the-latest-rhel-7-minor-version> --instrepo ftp://ftp.example.com/pub/rhel7/
    example:
    # redhat-upgrade-tool --network 7.3 --instrepo ftp://ftp.example.com/pub/rhel7/
    無効な Red Hat Enterprise Linux 7 マイナーバージョンが指定された場合、存在しないリポジトリーへの接続を試行した後にアップグレードが失敗します。
    • マウントされたインストールメディア
      システム上にマウントされたインストールメディア (たとえば、/dev/sdb デバイスから利用できる DVD または USB ドライブ) を使ってシステムをアップグレードするには、root として以下のコマンドを実行します。
    # redhat-upgrade-tool --device /dev/sdb
    
    デバイスを指定せずにこのオプションが指定された場合、ツールは現在マウントされているすべてのリムーバブルデバイスをスキャンします。
    • ISO イメージ
      ISO イメージを使用してシステムをアップグレードするには、 --iso オプションの後に ISO イメージへのパスを指定します。 たとえば、最新の RHEL 7 インストール DVD がローカルシステムの /var/isos/rhel7dvd.iso にある場合、コマンドは以下のようになります。
    # redhat-upgrade-tool --iso /var/isos/rhel7dvd.iso
    
    注意: アップグレードが正常に動作するには、RHEL 7 DVD の基本パッケージによって提供されるソフトウェアリポジトリー以外へのアクセスが必要な場合があります。RHEL 7 の Extras リポジトリーには、RHEL 6 のベースシステムに含まれ DVD に含まれていないパッケージの一部が格納されています (ほとんどはソフトウェア開発に関連するパッケージです)。RHEL 7 Base リポジトリーにはないパッケージがアップグレードに必要である場合 (依存関係に対応するため)、FTP または HTTP 上で必要なパッケージに対応する yum リポジトリーとして動作する別の RHEL 7 システムをインストールすることができます。[createrepo または reposync を使用してアップデート用にローカルリポジトリーを作成]https://access.redhat.com/ja/solutions/257763) して、アップグレード中に使用できるリポジトリーを設定します。Red Hat Upgrade Tool に追加のリポジトリーの情報を提供するには、--addrepo を使用します。コマンドは以下のようになります。
    # redhat-upgrade-tool --device /dev/sdb --addrepo optional=http://host/repo
    
  5. 再起動
    インストールを完了するには、システムを再起動する必要があります。アップグレードされるパッケージの数によりますが、再起動後にインストールが完了するまで時間がかかることがあります。すべてが正常に実行された場合、システムは Red Hat Enterprise Linux 7 で再起動し、システムの動作が正常であるかを確認できます。
  6. アップグレード後のタスクの実行
    Preupgrade Assistant によってFIXED 項目に対して作成されたスクリプトは、アップグレードの後に自動的に実行されます。管理者が手動で実行する必要のあるその他のアップグレード後のタスクは、 Preupgrade Assistant のレポートで確認できます。
  7. システムのチェック
    システムが RHEL 6 で正常に登録され、サブスクライブされている場合、このアップグレードプロセスによってシステムが RHEL 7 として自動的に再登録されます。システムが RHEL 7 システムとして適切にアップグレードされ、サブスクライブされていることを確認するには、以下を入力します。
    # yum repolist
    Loaded plugins: product-id, subscription-manager
    repo id                 repo name                                                     status
    rhel-7-rpms             Red Hat Enterprise Linux 7 Server (RPMs)                      4,323
    # cat /etc/redhat-release
    Red Hat Enterprise Linux Server release 7.0 (Maipo)
    
  8. リポジトリーリストの修正 (必要な場合)
    リポジトリーリストが適切に RHEL 7 にアップグレードされなかった場合、システムのサブスクリプションを取り消してから RHEL 7 システムとして再度サブスクライブし、必要なリポジトリーを追加します。利用可能なすべてのリポジトリーは /etc/yum.repos.d/redhat.repo ファイルに一覧表示されるはずです。
    # subscription-manager remove --all
    # subscription-manager unregister
    # subscription-manager register
    # subscription-manager attach --pool=poolID
    # subscription-manager repos --enable=repoID
    
  9. yum update の実行
    アップグレードに成功したようであれば、新規の RHEL 7 パッケージをすべて最新バージョンにアップグレードします。
    # yum update -y
    # reboot
    

ステップ 4: フィードバックの提供

アップグレード実行中に発生した問題に関するフィードバックを Red Hat にご提出ください。問題に対応するため、バグレポートサポートケース の作成にご協力ください。
アップグレードしたシステムの /var/log/upgrade.log ファイルにあるデバッグログはご自由にご提出ください。

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.

Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.