第7章 SUSE Linux Enterpriseのアップデート

目次

7.1. 用語集
7.2. 新しい保守モデル
7.3. 準備作業
7.4. YaST Wagonによるアップグレード
7.5. zypperによるアップグレード
7.6. SLE 10 SP4からSLE 11 SP2への更新
7.7. SLE 11 SP1からSLE 11 SP2への更新
7.8. サービスパックのインストール
7.9. Atomicアップデート

概要

SUSE® Linux Enterprise (SLE)には、完全な再インストールを実行せずに既存のシステムを新しいバージョンに更新できるオプションがあります。新たにインストールする必要はありません。ホームディレクトリ、システム設定などの古いデータは、そのまま保持されます。製品のライフサイクル中に、サービスパックを適用すると、システムのセキュリティを増大し、ソフトウェアの欠陥を修正することができます。CD/DVDドライブから、またはネットワーク上のインストールソースからインストールします。

[Note]リリースノート

リリースノートの現行バージョンは、 オンライン(http://www.suse.com/documentation/sles11/#additional)で読むことができます。

7.1. 用語集

この章では、いくつかの用語を使用します。それらの情報を理解するには、以下の定義をお読みください。

Deltarpm

delatrpmは、2つの定義されたパッケージバージョンのバイナリ差分のみで構成されているので、ダウンロードサイズは最小です。

マイグレーション

SUSE以外のオペレーティングシステムまたは製品からSUSE製品に(たとえば、WindowsからSUSE Linux Enterprise Serverに)インストールします。

パッチ

パッチは、1つ以上のパッケージから成り、deltarpmで適用されることがあります。また、まだインストールされていないパッケージへの依存関係を導入することもあります。

パッケージ

パッケージは、rpm形式の圧縮ファイルであり、特定のプログラムのファイルを含んでいます。

サービスパック(SP)

複数のパッチを組み合わせて、インストールまたは展開しやすい形式にします。サービスパックには番号が付けられ、通常、プログラムのセキュリティ修正、更新、アップグレード、または拡張機能が含まれます。

更新

パッケージまたはディストーションの新しいバージョンをインストールします。

アップグレード

パッケージまたはディストーションの新しい(主要)バージョンをインストールします。これにより、新しい機能を使用できます。

7.2. 新しい保守モデル

新しい保守モデルでは、サービスパックの柔軟性と制御を組み合わせます。このモデルには、次の利点があります。

  • サービスパックが軽量化し、そのテストと展開が容易になります。

  • 旧バージョンとの共存を可能にする一方で、フルシステムをサポートします。

  • 選択的な機能拡張でサービスパック間のマーケットニーズに対処し、一般更新リポジトリ内におけるより多くの更新を可能にします。機能拡張の選択により、サービスパックの間隔が長期化するのを緩和します。

上記の一部の側面は、図7.1「メンテナンス配信の進化」で説明されています。

図7.1 メンテナンス配信の進化

メンテナンス配信の進化

弊社の製品のライフサイクルは10年です。そのうち7年間は一般サポート、3年間は拡張サポートが適用されます。主要リリースは4年ごと、サービスパックは18カ月ごとに作成されます。Long Term Service Pack Support(長期サービスパックサポート)は、延長された期間つまり延長された主要リリースライフサイクルをサポートします(図7.2「長期サービスパックサポート」参照)。

図7.2 長期サービスパックサポート

長期サービスパックサポート

Long Term Service Pack Supportには、アクティブな購読(標準または優先のいずれか)が必要です。このサポートは、L1やL2の購読約款には影響しません。セキュリティ更新は、プロアクティブに処理されます。これらは、非ユーザ主導の更新であり、重大な脆弱性やカーネルでのローカルルートエクスプロイトなどのルートエクスプロイトの修正をユーザ介入なしで直接実行します。

拡張サポートレベルの範囲は、8年目から10年目までになります。これらのサポートレベルには、継続されるL3エンジニアリングレベルの診断とリアクティブな重大なバク修正が含まれます。これらのサポートレベルでは、重要でないカーネルでのローカルルートエクスプロイトなどのルートエクスプロイトに対しては、ユーザ介入なしで直接実行可能な更新をプロアクティブにサポートします。さらに、限られたパッケージ除外リストを使用して、既存のワークロード、ソフトウェアスタック、およびハードウェアをサポートします。概要については、表7.1「セキュリティ更新とバグの修正」を参照してください。

表7.1 セキュリティ更新とバグの修正

 

—一般サポート—

拡張サポート

トピック

現在のSP

SP (n-1) 6ヶ月

SP (n-1) LTSS

6年目と7年目 LTSS

8、9、10年目 LTSS

L1/L2テクニカルサービス

先行保守

 

 

PLDPによるドライバ更新

  

先行セキュリティ更新

 

L3エンジニアリングサポート

バックポートあり

 


7.3. 準備作業

更新の前に、古い設定ファイルを別個のメディア(テープデバイス、リムーバブルハード デスクなど)にコピーします。データの安全を確保します。主に、/etcの下に格納されているファイル、また、/var/optの下にあるディレクトリとファイルの一部に当てはまります。さらに、/home (HOMEディレクトリ)下のユーザデータをバックアップメディアに書き込むようにします。このデータは、rootユーザでバックアップします。rootのみに、すべてのローカルファイルに関する読み込みパーミッションがあります。

更新を開始する前に、ルートパーティションの記録をとります。df /コマンドは、ルートパーティションのデバイス名リストを表示します。例7.1「df -hの出力例」に示すように、書き留めておくルートパーティションは、/dev/hda3です(/としてマウントされています)。

例7.1 df -hの出力例

Filesystem     Size  Used Avail Use% Mounted on
/dev/sda3       74G   22G   53G  29% /
tmpfs          506M     0  506M   0% /dev/shm
/dev/sda5      116G  5.8G  111G   5% /home
/dev/sda1       44G    4G   40G   9% /data

ソフトウェアは、バージョンが上がるたびに増加する傾向があります。そのため、更新する前に、はじめにdfコマンドで、利用できるパーティションの容量を調べてください。ディスク容量が不足していると思われる場合は、システムの更新とパーティション再設定を行う前に、データをバックアップしておきます。各パーティションに必要な容量を決定する一般的なルールはありません。必要な容量は、特定のパーティションプロファイルおよび選択したソフトウェアによって異なります。

[Note]システムバージョン要件

このバージョンにアップグレード可能な正確なシステムバージョンの要件については、更新製品に添付されているリリースノートを参照してください。リリースノートには、アップグレード手順に関する追加情報が含まれています。

[Note]製品バージョンのアップグレード要件

最後のバージョン(たとえば、SUSE Linux Enterprise 11 SP1)から現在のバージョン(たとえば、SUSE Linux Enterprise 11 SP2)へのアップグレードでは、中間のどのサービスパックバージョンもスキップしないでください。つまり、SUSE Linux Enterprise 10 SP3以前のバージョンからこのサービスパックにアップグレードしたり、SUSE Linux Enterprise 11 GAからSUSE Linux Enterprise 11 SP2にアップグレードしたりしてはなりません。システムのアップグレードを開始する前に、すべての利用可能なオンラインアップデートを正常に適用しておきます。

7.4. YaST Wagonによるアップグレード

YaST Wagonは、自動化されたYaSTオンラインマイグレーションプロシージャです。YaST Wagonを起動してSP機能レベルにアップグレードする前に、次の要件が満たされていることを確認してください。

  • アップデート作業中は、ノベルカスタマセンターにアクセスする必要があるため、システムは常時オンラインでなければなりません。

  • セットアップにサードパーティのソフトウェアまたはアドオンソフトウェアが含まれている場合は、別のコンピュータでこのプロシージャをテストして、依存関係が更新によって破損していないかどうか確認してください。

  • すべてのプロセスが正常に完了することを確認してください。そうしないと、システムに不整合が発生してしまいます。

[Note]

Wagonによるアップグレードマイグレーション中に、累積更新が更新されます。したがって、他のソフトウェア管理ツール(zypperやディスクトップアップデートアプレットなど)の使用を避けることをお勧めします。移行中は、ディスクトップアップデートアプレットの停止をお勧めします。

  1. マイグレーションパッチ([更新スタックの更新]) が更新リポジトリから入手できる場合は、root としてwagonを使用してコマンドラインからマイグレーションプロシージャを起動します。

    [Note]マイグレーションパッチの通知

    マイグレーションパッチが使用可能になると、GNOMEデスクトップの右下隅に、通知メッセージが表示されます。この通知メッセージ内のリンクをクリックして、マイグレーションプロシージャを起動します。

  2. ようこそ]ダイアログを確認します。

  3. 通常のYaSTオンライン更新でまだインストールされていない場合は、wagonによって、まず、事前選択されているマイグレーションパッチがインストールされます([更新スタックの更新)。このパッチには、パッケージ管理スタックと、必要に応じて新しいカーネルが含まれています。したがって、システムの再起動が必要です。

    YOUの詳細については、第1章 YaSTオンラインアップデート (↑管理ガイド)を参照してください。

  4. システムを再起動すると、wagonは、[アップデート方法]での指定に従って、マイグレーションを続行します。事前選択した[カスタマセンタ]の設定は保持してください。サードパーティ関係のリポジトリ設定を後で検証したい場合は、[自動リポジトリ変更のチェック]を有効にします。このダイアログを確認します。

  5. ノベルカスタマセンターの環境設定]でマイグレーションステータスを登録し、更新リポジトリを確認します(SLES11-Updates]の代わりに[SLES11-SP1-Poolになっている)。

  6. 自動リポジトリ変更のチェック]を有効にした場合は、[設定されたソフトウェアリポジトリ]メニューが表示されます。

  7. 実際のマイグレーションプロシージャが実行される前の最後のダイアログとして、[ディストリビューションアップグレード設定]ダイアログが表示されます。すべての設定を注意深くチェックしてください。確認後はロールバックできません。

    パッケージのインストールとシステムの環境設定(SuSEconfig)が自動的に実行されます。再起動が必要です。

  8. ノベルカスタマセンタ]で新バージョンを登録します。更新したソフトウェアリポジトリを再度確認します。そこでは、SLES11-SP1-Updatesが現在有効になっています。

  9. 最後に、[移行が完了しました]ダイアログを確認し、システムを再起動します。

7.5. zypperによるアップグレード

更新用のスクリプトソリューションが必要な場合は、zypperを使用します。

zypperでオンライン更新を開始して、SP2の機能レベルまでアップグレードする前に、7.4項 「YaST Wagonによるアップグレード」に一覧されている要件が満たされているかどうか確認してください。

次のシーケンスは、システムをSP2パッチレベルにアップグレードするために必要な最小のコマンドシーケンスです。

  1. すべてのサービスとリポジトリを更新します。

    zypper refresh -s
  2. パッチ、特にパッケージ管理スタックを更新します。

    zypper update -t patch
  3. 更新したばかりのパッケージ管理スタックを使用して、残りのパッチを更新します。

    zypper update -t patch
  4. /etc/products.d/*.prodからのディストーション更新に関する製品固有情報を読みます。それらには、ディストーションアップグレードに関する情報が含まれています。

  5. 前に取得した名前を使用して、次のように、マイグレーション製品情報をインストールします。

    grep '<product>' /etc/products.d/*.prod
    /etc/products.d/sle-sdk.prod:      <product>sle-sdk-SP2-migration</product>
    /etc/products.d/SLES.prod:         <product>SUSE_SLES-SP2-migration</product>
  6. 製品を登録して、プールリポジトリを取得します。

    suse_register -d 2 -L /root/.suse_register.log
    ...
    Execute command: /usr/bin/zypper ... modifyservice --ar-to-enable SMT-https_srv64_suse_de:SLES11-SP2-Pool SMT-https_srv64_suse_de
    Execute command exit(0):
    Execute command: /usr/bin/zypper ... modifyservice --ar-to-enable SMT-https_srv64_suse_de:SLE11-SDK-SP2-Pool SMT-https_srv64_suse_de
    Execute command exit(0):
  7. サービスとリポジトリを更新 します。

    zypper refresh -s
  8. 古いGA製品からのすべてのリポジトリを無効にし、新しいSP2プールリポジトリを有効にします。ISVの場合は、アドオン製品にも同じ手順を適用します。古いリポジトリは、SP2アップグレードを含んでいなければ、有効なままです。

    次のコマンドを使用して、リポジトリを無効にします。

    zypper services
    zypper modifyrepo --disable REPO_ALIAS

    次のコマンドを使用して、リポジトリを有効にします。

    zypper modifyrepo --enable REPO_ALIAS
  9. zypperを使用して、ディストーションアップグレード(dup) を実行します。

    zypper dup
  10. マイグレーションが完了したら、新しい製品を再度登録します。

    suse_register -d 2 -L /root/.suse_register.log

    これによって、古いGA更新リポジトリが削除され、新しいSP2更新リポジトリが追加されます。SP1-PoolリポジトリとSP1-Updateリポジトリは変更しないでください。

  11. システムを再起動して、SP2カーネルを実行します。

7.6. SLE 10 SP4からSLE 11 SP2への更新

SUSE Linux Enterprise Server 10 SP4からSUSE Linux Enterprise Server 11 SP2にアップグレードする場合は、このセクションで概説される手順に従います。10 SP4から11 SP2への自動アップグレードについては、第22章 SUSE Linux Enterprise 11 SP1から11 SP2への自動アップグレードを参照してください。まず、古いシステムを最新のパッチレベルに更新してください。

  1. 7.3項 「準備作業」の説明に従って、準備手順を実行します。

  2. YaSTによるアプローチ(7.4項)またはzypperによるアプローチ(7.5項)を実行して、SP機能レベルにアップグレードします。

7.6.1. 起こり得る問題

デフォルトのシステムを以前のバージョンから現行バージョンに更新する場合は、YaSTが必要な変更を解析し、実行します。カスタマイズに依存して、中には失敗する手順があったり、すべての更新手続きが失敗する可能性もありますので、その場合はバックアップデータをコピーして元に戻してください。システムの更新を開始する前に、次の点を確認してください。

7.6.1.1. /etc内のpasswdとgroupの確認

システムを更新する前に、/etc/passwd/etc/groupに、構文エラーがまったく存在していないことを確認してください。この目的で、rootになって検証ユーティリティpwckgrpckを起動し、報告されたエラーを取り除きます。

7.6.1.2. PostgreSQL

PostgreSQL(postgres)を更新する前に、データベースをダンプします。詳細については、pg_dumpのマニュアルページを参照してください。この作業が必要になるのは、更新の前にPostgreSQLを実際に使用している場合だけです。

7.7. SLE 11 SP1からSLE 11 SP2への更新

SLE 11 SP1からSLE 11 SP2にアップグレードする場合は、このセクションで概説される手順に従います。

  1. 7.3項 「準備作業」の説明に従って、準備手順を実行します。

  2. Novell Customer Center登録を実行します。

  3. SP2リポジトリをクライアントに追加します。

  4. yast2 online_updateを実行します。

7.8. サービスパックのインストール

サービスパックを使用して、SUSE Linux Enterpriseのインストールを更新します。サービスパックを適用するには、さまざまな方法があります。サービスパックメディアを使用して全く新しいインストールを開始することも、既存のインストールを更新することもできます。14.2項 「インストールソースを保持するサーバのセットアップ」には、システムを更新し、一元的ネットワークインストールソースをセットアップするための可能なシナリオが記載されています。

[Tip]インストールの変更

変更の詳細については、サービスパックメディアに含まれているインストールに関する説明を読んでください。

7.8.1. サービスパックのインストール

[Note]

既存のSUSE Linux Enterprise 11システムからSUSE Linux Enterprise 11 サービスパック(SP)へのアップグレードについては、7.8.2項 「サービスパックへのアップグレード」を参照してください。

SUSE Linux Enterpriseサービスパックのインストール手順は、元のSUSE Linux Enterpriseメディアの手順とよく似ています。元のインストールと同じように、ローカルのDVDドライブまたはネットワーク上の一元的インストールソースからインストールする方法を選択できます。

7.8.1.1. ローカルDVDドライブからインストールする

SUSE Linux Enterprise SPの新しいインストールを開始する前に、サービスパックのインストールメディア(DVD)が全部揃っていることを確認してください。

手順7.1 サービスパックメディアからブートする

  1. 1枚目のSUSE Linux Enterprise SPメディアを挿入し、コンピュータをブートします。元のSUSE Linux Enterprise 11のインストール時と同様のブート画面が表示されます。

  2. [インストール]を選択し、第6章 YaSTによるインストールのYaSTインストールに関する説明に従って作業を続行してください。

7.8.1.2. ネットワークインストール

SUSE Linux Enterprise SPのネットワークインストールを開始する前に、次の要件が満たされていることを確認してください。

7.8.1.2.1. ネットワークインストール - DVDからのブート

ブートメディアとしてSPのDVD を使ってネットワークインストールを実行するには、次の手順に従います。

  1. SUSE Linux Enterprise SP DVD 1を挿入し、コンピュータをブートします。元のSUSE Linux Enterprise 11のインストール時と同様のブート画面が表示されます。

  2. インストール] を選択してサービスパックカーネルをブートし、 F3キーを押してネットワークインストールソースの種類(FTP、HTTP、NFS、またはSMB)を選択します。

  3. 適切なパス情報を入力するか、[SLP]をインストールソースとして選択します。

  4. 表示されるものから適切なインストールサーバを選択するか、6.1.2項 「SLPを使用しないネットワークソースからのインストール」に説明しているとおり、ブートオプションプロンプトを使用してインストールソースの種類とその実際の場所を指定します。YaSTが起動します。

    第6章 YaSTによるインストールの説明に従って、インストールを完了します。

7.8.1.2.2. ネットワークインストール—PXEブート

ネットワークからSUSE Linux Enterpriseサービスパックのネットワークインストールを実行するには、次の手順に従います。

  1. 14.3.5項 「ターゲットシステムでPXEブートの準備をする」に従って、DHCPサーバのセットアップを調整してPXEブートに必要なアドレス情報を取得します。

  2. PXEブートに必要なブートイメージが保管されるTFTPサーバをセットアップします。

    このセットアップを実行するには、 SUSE Linux EnterpriseサービスパックのCDまたはDVDの1枚目を使用するか、または14.3.2項 「TFTPサーバのセットアップ」の手順に従います。

  3. ターゲットコンピュータにPXEブートとWake-on-LANを準備します。

  4. ターゲットシステムのブートを開始し、VNCを使用してこのコンピュータで実行中のインストールルーチンにリモートで接続します。詳細については、14.5.1項 「VNCによるインストール」を参照してください。

  5. ライセンス契約に同意して、言語、デフォルトのデスクトップ、その他のインストール設定を選択します。

  6. [インストールする]をクリックして、インストールを開始します。

  7. 次のようにインストール操作を続行します: rootのパスワードの入力、ネットワーク設定の完了、インターネット接続のテスト、オンラインアップデートサービスの有効化、 ユーザー認証方法の選択、およびユーザー名とパスワードの入力

    SUSE Linux Enterpriseのインストール方法の詳細については、第6章 YaSTによるインストールを参照してください。

7.8.2. サービスパックへのアップグレード

システムをサービスパック(SP)機能レベルまでアップグレードするには、2つの推奨方法があります。まず、SPメディアからブートする方法があります。代わりの方法として、Wagonを実行することもできます。新しい機能レベルにアップデートすることにより、新しいドライバやソフトウェア拡張機能など、追加機能をシステムで利用できるようになります。

他のアップグレード方法としては、たとえば、zypperコマンドの手動実行、パッチCDの使用、ローカルにインストールしたSMTシステムの使用などがあります。

[Note]

System zシステムでは、パッチCDによる更新オプションは利用できません。

7.8.2.1. SPメディアからのブート

SPメディアからブートして、YaSTのインストールモードで、[更新]を選択します。

7.9. Atomicアップデート

Atomicアップデートは、システムの2つのコピーを管理し、更新失敗後の容易な復元を可能にするツールに基づいています。提供されたツールを使用するには、特別なディスクパーティション設定が必要です。システムの各コピーは、それ独自のプライマリパーティションに常駐します。更新が失敗した場合、常に、システムの前の状態(もう一方のパーティションで利用できる)に戻ることができます。

7.9.1. 設定

[Warning]厳格なパーティション分割要件

実装では、ディスクパーティションに関する厳格な要件があります。つまり、最初のルートパーティションは、/dev/sda1とし、全デスクサイズの半分を超えてはなりません。次に、ツールによって、システムの2つ目のルートパーティションとして/dev/sda2が作成されます。追加パーティション(可能な場合)は、両方のブートパーティションで共有されます。したがって、追加パーティションのサイズを考慮に入れて、最初のパーティションのサイズを適宜減らしてください。大まかな計算は、次のようになります。

ディスク全体のサイズ-sda1のサイズ-sda2のサイズ = 追加パーティションの空き領域

  1. /dev/sda1が単一のルートパーティションとして全ディスクサイズの半分未満を占めるシステムをインストールします。

  2. インストールしたシステムを、必要に応じてカスタマイズします。multi-update-toolsパッケージを必ずインストールしてください。

  3. multi-update-setup --partitionを実行します。このコマンドは、同様のサイズでシステムの2つ目のルートパーティション(/dev/sda2)を作成します。

  4. 必要に応じてディスクの残りをパーティション分割し、カスタマイズ(*)を続行します。

  5. multi-update-setup --cloneを実行して、システムをもう一方のパーティションにコピーします。このコマンドで、ターゲットシステムの/etc/fstabにある/ (ルート)エントリも変更します。

  6. 必要に応じて、さらにカスタマイズ(*)します。

  7. multi-update-setup --bootloaderを実行して、ブートローダの設定を初期化します。ブートローダのメニューに、もう一方のシステムをブートするためのエントリが組み込まれます。

    [Warning]必須のGRUBブートローダ

    GRUBブートローダのインストールは必須です。それらのツールは、他のブートローダと互換性がありません。

  8. (*)でマークされたカスタマイズがない場合は、multi-update-setup --completeを使用して3つのステップをすべて実行します。

7.9.2. もう一方のシステムの更新

multi-updateを実行します。このコマンドは、chroot環境でzypperを実行し、もう一方のシステムを更新します。どちらのシステムがアクティブかは重要でありません。そのブートメニューは、ブート時にデフォルトとして表示されます。

7.9.3. トラブルシューティング

更新したシステムのブートローダが更新後に破損している場合は、アクティブフラグを変更して、もう一方のシステムのルートパーティション用に設定し、そのシステムをブートできるようにする必要があります。

更新したシステムがまったくブートしない場合は、ブートローダメニューにアクセスしてもう一方のシステムを選択する必要があります。

GRUBの詳細については、第9章 ブートローダGRUB (↑管理ガイド)を参照してください。

7.9.4. 詳細情報

詳細については、multi-update-toolsパッケージに同梱されている/usr/share/doc/packages/multi-update-tools/READMEを参照してください。