カスタマイズをバックアップおよび復元する (Windows SharePoint Services)

この記事では、SharePoint サイトに加えたカスタマイズをバックアップおよび復元する方法について説明します。

SharePoint サイトのカスタマイズには以下が含まれます。

  • マスタ ページ、ページ レイアウトおよびカスケード スタイル シート。これらのオブジェクトは、Web アプリケーションのコンテンツ データベースに格納されます。

  • Web パーツ、サイトまたは一覧の定義、カスタム列、新しいコンテンツの種類、カスタム フィールド、カスタム アクション、コード化されたワークフロー、およびワークフロー アクティビティと条件。

  • サードパーティのソリューション、およびそれらに関連付けられたバイナリ ファイルとレジストリ キー (IFilters など)。

  • 標準 XML ファイルに対する変更。

  • カスタムのサイト定義 (Webtemp.xml ファイル)。

  • リソース (.resx) ファイル。

バックアップと復元を行うために使用する方法は、SharePoint サイトのカスタマイズが一元管理されているかどうかによって、一部が決まります。

すべてのカスタマイズと変更の展開作業が、その作業を割り当てられた特定のグループまたは個人によって行われる場合、その環境は一元管理されていると見なされます。通常は、変更制御の手法を使用して、システム変更の文書化と管理が行われます。一元管理された環境では、カスタマイズ ファイルの場所は常に認識されます。

さまざまなチームや個人が、変更制御や、カスタマイズの特定と管理を行うためのその他の方法を使用しないでカスタマイズを実行する場合、その環境は一元管理されいると見なされません。この場合、カスタマイズ ファイルは、文書化されていない標準以外の場所に配置される可能性があるため、バックアップと復元が困難になります。

SharePoint サイトのカスタマイズを管理するためのベスト プラクティスと推奨事項については、「SharePoint Products and Technologies customization policy (white paper)」を参照してください。

一元管理されたシステムにおけるカスタマイズのバックアップと復元

一元管理されたシステムでは、サイトのカスタマイズはソリューション ファイルとしてパッケージ化できます。ソリューション ファイルは, .cab ベースの形式であり, .wsp という拡張子が付けられます。ソリューションとは、ファイル、サイトの定義、アセンブリなどの一連の機能定義および関連する要素定義を含めることができる展開可能で再利用可能なパッケージです。たとえば、ソリューション ファイルを使用して、アセンブリ、クラス リソース, .dwp ファイル、その他のパッケージコンポーネントなど、Web パーツ パッケージのコンテンツを展開できます。

サイトのカスタマイズをソリューション ファイルとしてパッケージ化することをお勧めします。これにより、ファイル システムのバックアップ ソリューションを使用して、バックアップと復元を必要に応じて簡単に実行できます。

注意

特定の種類のカスタマイズをコンテンツ展開パッケージとしてパッケージ化することもできます。詳細については、「Deploying authored site element customizations」を参照してください。

サード パーティのカスタマイズに関連付けられるバイナリ ファイルとレジストリ キーは、カスタム コーディングのないソリューション パッケージでは処理されません。

ソリューション パッケージを作成するには、Visual Studio 2008 extensions for Windows SharePoint Services 3.0, v1.3 - Mar 2009 CTP (英語) (https://go.microsoft.com/fwlink/?linkid=156658&clcid=0x411) を使用することをお勧めします。x64 開発をサポートする VSeWSS は、Community Technology Preview (CTP) のダウンロードとして使用できます。

ヒント

復元プロセスを簡素化するには、特定の種類のサイトまたはサイト コレクション固有の構成要素を含む一連のソリューション パッケージを作成します。これにより、特定のソリューション パッケージをフロント エンド Web サーバーに展開して、さまざまなサイト コレクション構成を復元できます。

カスタマイズをサイト コレクションに復元するには、ソリューション パッケージをサーバーにインポートして、そのソリューション パッケージを展開します。ソリューション パッケージの復元は、Stsadm コマンドライン ツールまたは SharePoint サーバーの全体管理 Web サイトのどちらかを使用して実行できます。1 つのソリューション パッケージを複数のサイト コレクションまたはサーバーに復元できます。

ソリューション パッケージの詳細とカスタマイズの展開方法については、次の記事を参照してください。

重要

この場合、Stsadm コマンドライン ツールを実行するコンピュータで Administrators グループのメンバである必要があります。サーバーの全体管理 Web サイトを使用するには、Farm Administrators SharePoint グループのメンバである必要があります。また、Windows SharePoint Services 構成データベースで db_owner ロールのメンバである必要があります。

Stsadm コマンドライン ツールを使用してソリューション パッケージをインポートする

  1. SharePoint 製品とテクノロジがインストールされているドライブで、ディレクトリ %COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\12\Bin に移動します。

  2. 次のコマンドを入力します。

    stsadm -o addsolution -filename <"ソリューション ファイル名">

Stsadm コマンドライン ツールを使用してソリューション パッケージを復元する

  1. 次のコマンドを入力します。

    stsadm -o deploysolution -name <"ソリューション ファイル名"> -url <URL name>

  2. 次のパラメータのいずれかをコマンド ラインに追加して、コマンドを実行する時間を指定します。

    -immediate

    -local

    -time

注意

前のコマンドの構文は、ソリューションがファームより小さいオブジェクトを対象とすることを前提とします。それ以外の場合は、<URL> パラメータをコマンド ラインから削除します。グローバル アセンブリ キャッシュ (GAC) に展開するアセンブリがソリューションに含まれる場合、[-allowgacdeployment] パラメータをコマンド ラインに追加します。

サーバーの全体管理を使用してソリューション パッケージを復元する

  1. サーバーの全体管理の [サーバー構成の管理] ページで、[グローバル構成] セクションの [ソリューション管理] をクリックします。

  2. [ソリューション管理] ページで、復元するソリューションをクリックします。

  3. [ソリューションのプロパティ] ページで、[ソリューションの展開] をクリックします。

  4. [ソリューションの展開] ページの [展開する時刻] セクションで、次のいずれかのオプションを選択します。

    • [今すぐ実行]

    • [指定時刻]。このオプションを選択した場合、[日付と時刻] ボックスで時刻を指定します。展開先のサーバーへの負荷が少ない時刻を選択することをお勧めします。

  5. [展開先] セクションの [このソリューションを展開する Web アプリケーションの選択] リストで、[すべてのコンテンツ Web アプリケーション] をクリックするか、特定の Web アプリケーションを選択します。

  6. [OK] をクリックします。

注意

前の手順は、ソリューションがファームより小さいオブジェクトを対象とすることを前提とします。

一元管理されていない環境でのサイト カスタマイズのバックアップと復元

一元管理されていない環境では、カスタマイズ ファイルの場所が標準化されていないため、カスタマイズのバックアップと復元を行う処理が複雑になる可能性があります。

次の表に、フロントエンド Web サーバー上で通常カスタマイズが格納される場所を一覧表示します。カスタマイズに追加のアドイン ソフトウェアや他の場所にあるファイルが必要かどうかを判断するには、開発チームまたはカスタマイズ ベンダにお問い合わせください。これらのディレクトリは、ファイル システムのバックアップ ソリューションを使用してバックアップすることをお勧めします。

場所

説明

%COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\12

よく更新されるファイル、カスタム アセンブリ、カスタム テンプレート、カスタム サイト定義

Inetpub

IIS 仮想ディレクトリの場所

%WINDIR%\Assembly

GAC。保護されたオペレーティング システムの場所で、完全なシステム アクセスを提供するために Microsoft .NET Framework コード アセンブリがインストールされています。

分散化されたカスタマイズのバックアップ

  1. すべてのカスタマイズ ファイルの名前と場所を記録します。

  2. Web.config ファイルに対するすべての変更内容を記録します。

  3. ファイル システムのバックアップ プログラムを使用してバックアップ ジョブを作成し、すべての場所のすべてのカスタマイズ ファイルをバックアップします。