パッチをインストールする前に、サーバーをシャットダウンする必要があります。Windowsオペレーティングシステムでは、使用中のファイルはOSによってロックされているため、パッチを適用できません。Unixスタイルのシステムでは、通常、実行中のファイルを置き換えることができますが、古いファイルはメモリ内にあります。これらの理由から、パッチをインストールする前にLiferay DXPをシャットダウンするのがベストです。
Liferayは、すべてのパッチ(フィックスパックとホットフィックス)をZIPファイルとして配布しています。LESAチケット(ホットフィックス)またはCustomer Portal(フィックスパック)からパッチをダウンロードする時は、解凍せずにパッチングツールのpatches
フォルダ(たとえば[Liferay Home]/patching-tool/patches
)に配置します。インストールされているパッチと利用可能なローカルパッチを一覧表示するには、次のコマンドを実行します:
patching-tool info
これにより、すでにインストールされているパッチの一覧と、パッチフォルダ
内のものからインストールできるパッチの一覧が表示されます。
利用可能なパッチをインストールするには、次の手順に従います。まず、以下のコマンドを発行します。
patching-tool install
変更されたすべてのOSGiバンドルが既存のバンドルを置き換えるようにするには、Liferay Homeフォルダーからosgi/state
フォルダーを 削除してください。
パッチによって作成された新しいデータベースインデックスがある場合、パッチングツールはそれらを更新するように指示します。リストを取得するには、次のコマンドを実行してください:
patching-tool index-info
パッチ適用時にはデータベース接続がないため、インデックスはポータルの立ち上げ時に作成する必要があります。サーバーにデータベースインデックスを変更する権限がある場合は、Liferay DXPに起動時に自動的にインデックスを作成するように以下をportal-ext.properties
ファイルに追加することを指示します:
database.indexes.update.on.startup=true
それ以外の場合は、インデックスをマニュアルで作成する必要があります。詳細は、patching-tool index-info
コマンド出力を確認してください。
パッチをインストールしたら、patching-tool info
コマンドを実行して確認できます。
インストール中、patching-backup-deps.zip
およびpatching-backup.zip
ファイルが作成され、WebアプリケーションのWEB-INF
フォルダ内に保存されます。これらのファイルは、Liferay DXPの元の状態を復元するために必要です。それらを削除すると、パッチ適用は無効になります。
patching-backup.zip
ファイルはまた次回パッチをインストールするために必要です。なぜなら、パッチングツールは新しいパッチをインストールする前にインストールされたフィックスパックを元に戻すからです。インストール済みのフィックスパックを元に戻すには、patching-backup.zip
の内容を調べ、 元に戻すために必要な変更を判別します。
ホットフィックスとパッチの処理
前述のように、ホットフィックスは迅速に提供される短期間の修正であり、フィックスパックは定期的にすべての顧客に提供される大きなバンドルの修正です。すでにホットフィックスがインストールされており、そのホットフィックスを含むフィックスパックがリリースされている場合は、パッチ適用ツールがそれを管理できます。フィックスパックは常にホットフィックスよりも優先されます。そのため、フィックスパックをインストールすると、それに含まれているホットフィックスがアンインストールされ、その場所にフィックスパックのバージョンがインストールされます。
パッチングツールは、フィックスパックに自動的に修正を適用します。フィックスパックの新規(固定)バージョンがリリースされている場合は、パッチングツールを使用してそれをインストールしてください。パッチングツールは、古いフィックスパックをアンインストールし、その代わりに新しいバージョンをインストールします。
フィックスパックの依存関係
一部のホットフィックスはフィックスパックに依存しています。フィックスパックに依存しているホットフィックスをインストールしようとすると、パッチングツールから通知がきます。Customer Portalに移動して 、ホットフィックスの依存関係を取得します。必要なパッチがすべてpatches
フォルダに入ったら、パッチングツールはそれらをインストールします。
パッチングツールの更新
インストールしようとしているパッチにパッチングツールのアップデートが必要な場合は、パッチングツールから通知されます。パッチングツールを更新するには、最新のものをCustomer Portalからダウンロードしてください。
新しいものをpatching-tool
フォルダの親フォルダに解凍して、既存のパッチングツールに上書きします。
クリーンアップ
パッチ適用手順を実行した後(パッチをインストールまたは削除(removed patches)したかにかかわらず )、Liferay DXPのデプロイ済みコードのキャッシュをクリーンアップすることが重要です。これをすることにより、サーバーを起動したときにインストールしたばかりのパッチを使用していることを確認できます。この手順はいたって簡単です。
キャッシュされたコードを消去するには、[Liferay Home]/work
フォルダの内容を削除します。これでサーバーを起動することができます。