(57)【要約】【課題】  ファイルシステムの統合時に管理データとして記憶装置に記録されているユーザ識別情報の変換が必要となる。【解決手段】  ファイルサーバはファイルシステムのデータを記憶した記憶装置に接続されており、ファイルシステムを管理するファイルシステム処理部と、ファイルへのアクセス要求を受信するファイルサーバ処理部と、計算機によって使用される第一のユーザ識別情報とファイルシステムの管理データとして記憶装置に記録されている第二のユーザ識別情報との間の変換処理を行うユーザ識別情報変換処理部とを有する。ユーザ識別情報変換処理部は、計算機からファイルへのアクセス要求を受信すると、アクセス対象となっているファイルの管理データに含まれる第二のユーザ識別情報を第一のユーザ識別情報に変換し、ファイルサーバ処理部は変換後の第一のユーザ識別情報を含む管理データを計算機に送信する。【選択図】  図３
2006252085.tif 000002
【特許請求の範囲】
【請求項１】
ファイルシステムのデータを記憶した記憶装置に接続され、計算機から当該記憶装置に格納されているファイルのデータへのアクセス要求を受信するファイルサーバであって、
前記記憶装置に格納されているファイルシステムのデータを管理するファイルシステム処理部と、
前記計算機からファイルへのアクセス要求を受信するファイルサーバ処理部と、
前記ファイルシステムのユーザを識別するための、前記計算機によって使用される第一のユーザ識別情報と、前記ファイルシステムの管理データとして前記記憶装置に記録されている第二のユーザ識別情報との間の変換処理を行うユーザ識別情報変換処理部とを有し、
前記ユーザ識別情報変換処理部は、前記ファイルサーバ処理部が前記計算機からファイルへのアクセス要求を受信すると、該アクセス要求のアクセス対象となっているファイルの管理データに含まれる第二のユーザ識別情報を第一のユーザ識別情報に変換し、前記ファイルサーバ処理部は変換後の第一のユーザ識別情報を含む管理データを前記計算機に送信することを特徴とするファイルサーバ。
【請求項２】
請求項１記載のファイルサーバであって、前記ファイルサーバ処理部が前記計算機に送信する前記管理データには、当該管理データに含まれる第一のユーザ識別情報で識別されるユーザ関する、前記アクセス対象となっているファイルへのアクセス可否を示すデータが含まれることを特徴とするファイルサーバ。
【請求項３】
請求項２記載のファイルサーバであって、
前記ファイルシステムは、第一のサブファイルシステムと第二のサブファイルシステムとから構成されており、
前記記憶装置に記録されている第二のユーザ識別情報は、前記第一のサブファイルシステム若しくは前記第二のサブファイルシステム内において、ファイルシステムのユーザを一意に識別するためのユーザ識別情報であり、
前記計算機によって使用される第一のユーザ識別情報は、前記ファイルシステム内においてファイルシステムのユーザを一意に識別するためのユーザ識別情報であることを特徴とするファイルサーバ。
【請求項４】
請求項３記載のファイルサーバであって、
更に、第一のユーザ識別情報と、第二のユーザ識別情報と、該第二のユーザ識別情報を用いてユーザを一意に識別可能な前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかを識別するためのファイルシステム識別情報とを対応づけた、ユーザ識別情報変換情報を有しており、
前記ユーザ識別情報変換処理部は、前記ユーザ識別情報変換情報を用いて、第一のユーザ識別情報と第二のユーザ識別情報との間で、ユーザ識別情報の変換処理を実行することを特徴とするファイルサーバ。
【請求項５】
請求項４記載のファイルサーバであって、
前記ファイルサーバ処理部が前記計算機から受信するファイルへのアクセス要求には、アクセス対象のファイルを特定するためのパス名が含まれており、
前記ファイルサーバ処理部は、前記パス名から対応するinode番号を取得し、
前記ユーザ識別情報変換処理部は、前記inode情報から、アクセス対象のファイルが属する前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかのファイルシステム識別情報を取得し、
取得したファイルシステム識別情報と前記アクセス要求のアクセス対象となっているファイルの管理データに含まれる第二のユーザ識別情報とから、前記ユーザ識別情報変換情報を用いて、前記第二のユーザ識別情報を第一のユーザ識別情報に変換し、
前記ファイルサーバ処理部は変換後の第一のユーザ識別情報を含む管理データを前記計算機に送信することを特徴とするファイルサーバ。
【請求項６】
請求項４記載のファイルサーバであって、
前記ファイルサーバ処理部が前記計算機から受信するファイルへのアクセス要求には、前記計算機が使用している第一のユーザ識別情報とアクセス対象のファイルを特定するためのパス名が含まれており、
前記ファイルサーバ処理部は、前記パス名から対応するinode情報を取得し、
前記ユーザ識別情報変換処理部は、前記アクセス要求に含まれているinode情報から、アクセス対象のファイルが属する前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかのファイルシステム識別情報を取得し、
取得したファイルシステム識別情報と前記アクセス要求に含まれる前記第一のユーザ識別情報とから、前記ユーザ識別情報変換情報を用いて、対応する第二のユーザ識別情報を検索し、
対応する第二のユーザ識別情報が存在しない場合に、前記ユーザ識別情報変換情報に、取得した前記ファイルシステム識別情報と前記アクセス要求に含まれる前記第一のユーザ識別情報に対応する第二のユーザ識別情報を新たに登録することを特徴とするファイルサーバ。
【請求項７】
請求項４記載のファイルサーバであって、
前記ファイルサーバ処理部が前記計算機から、アクセス要求として前記計算機が使用している第一のユーザ識別情報と、新規に作成されるファイルを識別するためのパス名を含む新規ファイルの作成要求を受信した場合に、
前記ユーザ識別情報変換処理部は、新規に作成されるファイルが属する前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかのファイルシステム識別情報を取得し、
取得したファイルシステム識別情報と前記アクセス要求に含まれる前記第一のユーザ識別情報とから、前記ユーザ識別情報変換情報を用いて、対応する第二のユーザ識別情報を取得し、
取得した前記第二のユーザ識別情報を用いて前記ファイルシステム処理部に新規ファイルの作成を要求し、
前記ファイルシステム処理部は、新規にファイルを作成して、当該ファイルに関するユーザ識別情報として前記第二のユーザ識別情報を登録することを特徴とするファイルサーバ。
【請求項８】
請求項４記載のファイルサーバであって、
更に前記ユーザ識別情報変換情報を管理する変換情報管理部と、
前記ファイルシステムを構成するサブファイルシステムのマウントポイント情報と当該サブファイルシステムのファイルシステム識別情報とを対応付けて登録しているファイルシステム識別情報検索表を有しており、
前記変換情報管理部は、更新前のユーザ識別情報と更新後のユーザ識別情報と、当該更新前のユーザ識別情報が用いられる第一のサブファイルシステム若しくは第二のサブファイルシステムのマウントポイント情報とを受信し、
受信した前記マウントポイント情報に対応付けられたファイルシステム識別情報が前記ファイルシステム識別情報検索表に登録されているか否かをチェックし、
受信した前記マウントポイント情報に対応付けられたファイルシステム識別情報が前記ファイルシステム識別情報検索表に登録されていない場合には、新たなファイルシステム識別情報を当該マウントポイント情報に対応付けて前記ファイルシステム識別情報検索表に登録し、
前記新たなファイルシステム識別情報をファイルシステム識別情報として、前記更新前のユーザ識別情報を第二のユーザ識別情報として、前記更新後のユーザ識別情報を第一のユーザ識別情報として前記ユーザ識別情報変換情報に対応付けて登録することを特徴とするファイルサーバ。
【請求項９】
請求項８記載のファイルサーバであって、
受信した前記マウントポイント情報に対応付けられたファイルシステム識別情報が前記ファイルシステム識別情報検索表に登録されている場合には、
前記変換情報管理部は、前記ユーザ識別情報変換情報を検索して、受信した前記更新前のユーザ識別情報と同じ値の第二のユーザ識別情報が前記ユーザ識別情報変換情報に登録されているかを確認し、
受信した前記更新前のユーザ識別情報と同じ値の第二のユーザ識別情報が前記ユーザ識別情報変換情報に登録されている場合に、当該第二のユーザ識別情報に対応付けられている第一のユーザ識別情報を、受信した前記更新後のユーザ識別情報に置き換えることを特徴とするファイルサーバ。
【請求項１０】
請求項９記載のファイルサーバであって、
受信した前記更新前のユーザ識別情報と同じ値の第二のユーザ識別情報が前記ユーザ識別情報変換情報に登録されていない場合には、前記変換情報管理部は、前記マウントポイント情報に対応づけられたファイルシステム識別情報をファイルシステム識別情報として、前記更新後のユーザ識別情報を第一のユーザ識別情報として、前記更新前のユーザ識別情報を第二のユーザ識別情報として、前記ユーザ識別情報変換情報に登録することを特徴とするファイルサーバ。
【請求項１１】
ファイルシステムのデータを記憶した記憶装置に接続され、計算機から当該記憶装置に格納されているファイルのデータへのアクセス要求を受信するファイルサーバにおけるファイルシステム処理方法であって、
前記計算機から前記ファイルシステムのファイルへのアクセス要求を受信するアクセス要求受信ステップと、
前記アクセス要求の対象となっているファイルの管理データであって、前記記憶装置に前記ファイルシステムの管理データとして記録されている管理データに含まれる、第二のユーザ識別情報を、前記計算機によって使用される第一のユーザ識別情報に変換するユーザ識別情報変換ステップと、
変換後の前記第一のユーザ識別情報を含む管理データを、前記計算機に送信する管理データ送信ステップとを有することを特徴とするファイルシステムの処理方法。
【請求項１２】
請求項１１記載のファイルシステムの処理方法であって、前記計算機に送信される前記管理データには、当該管理データに含まれる第一のユーザ識別情報で識別されるユーザに関する、前記アクセス対象となっているファイルへのアクセス可否を示すデータが含まれることを特徴とするファイルシステムの処理方法。
【請求項１３】
請求項１２記載のファイルシステムの処理方法であって、
前記ファイルシステムは、第一のサブファイルシステムと第二のサブファイルシステムとから構成されており、
前記記憶装置に記録されている第二のユーザ識別情報は、前記第一のサブファイルシステム若しくは前記第二のサブファイルシステム内において、ファイルシステムのユーザを一意に識別するためのユーザ識別情報であり、
前記計算機によって使用される第一のユーザ識別情報は、前記ファイルシステム内においてファイルシステムのユーザを一意に識別するためのユーザ識別情報であることを特徴とするファイルシステムの処理方法。
【請求項１４】
請求項１３記載のファイルシステムの処理方法であって、
前記ファイルサーバは、第一のユーザ識別情報と、第二のユーザ識別情報と、該第二のユーザ識別情報を用いてユーザを一意に識別可能な前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかを識別するためのファイルシステム識別情報とを対応づけた、ユーザ識別情報変換情報を有しており、
前記ユーザ識別情報変換ステップにおいて、前記ユーザ識別情報変換情報を用いて、前記第二のユーザ識別情報が前記第一のユーザ識別情報に変換されることを特徴とするファイルシステムの処理方法。
【請求項１５】
請求項１４記載のファイルシステムの処理方法であって、
前記アクセス要求受信ステップにおいて受信されるアクセス要求には、アクセス対象のファイルを特定するためのパス名が含まれており、
前記ユーザ識別情報変換ステップは、
前記アクセス要求に含まれているパス名から対応するinode番号を取得し、
前記inode番号からアクセス対象のファイルが属する前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかのファイルシステム識別情報を取得するステップと、
取得したファイルシステム識別情報と前記アクセス要求のアクセス対象となっているファイルの管理データに含まれる第二のユーザ識別情報とから、前記ユーザ識別情報変換情報を用いて、前記第二のユーザ識別情報を第一のユーザ識別情報に変換するステップとを有することを特徴とするファイルシステムの処理方法。
【請求項１６】
請求項１４記載のファイルシステムの処理方法であって、
前記アクセス要求受信ステップにおいて受信されるアクセス要求には、前記計算機が使用している第一のユーザ識別情報とアクセス対象のファイルを特定するためのパス名が含まれており、
前記ファイルシステムの処理方法は更に、
前記アクセス要求に含まれているパス名から、inode番号を取得するステップと、
前記inode番号から、アクセス対象のファイルが属する前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかのファイルシステム識別情報を取得するステップと、
取得したファイルシステム識別情報と前記アクセス要求に含まれる前記第一のユーザ識別情報とから、前記ユーザ識別情報変換情報を用いて、対応する第二のユーザ識別情報を検索するステップと、
対応する第二のユーザ識別情報が存在しない場合に、前記ユーザ識別情報変換情報に、取得した前記ファイルシステム識別情報と前記アクセス要求に含まれる前記第一のユーザ識別情報に対応する第二のユーザ識別情報を新たに登録するステップを有することを特徴とするファイルシステムの処理方法。
【請求項１７】
請求項１４記載のファイルシステムの処理方法であって、更に、
前記計算機が使用している第一のユーザ識別情報と、新規に作成されるファイルを識別するためのパス名を含む新規ファイルの作成要求を受信するステップと、
新規に作成されるファイルが属する前記第一のサブファイルシステム若しくは前記第二のサブファイルシステムのいずれかのファイルシステム識別情報を取得するステップと、
取得したファイルシステム識別情報と前記アクセス要求に含まれる前記第一のユーザ識別情報とから、前記ユーザ識別情報変換情報を用いて、対応する第二のユーザ識別情報を取得するステップと、
新規にファイルを作成して、当該ファイルに関するユーザ識別情報として取得した前記第二のユーザ識別情報を登録するステップとを有することを特徴とするファイルシステムの処理方法。
【請求項１８】
請求項１４記載のファイルシステムの処理方法であって、
前記ファイルサーバは更に、前記ファイルシステムを構成するサブファイルシステムのマウントポイント情報と当該サブファイルシステムのファイルシステム識別情報とを対応付けて登録しているファイルシステム識別情報検索表を有しており、
前記ファイルシステムの処理方法は更に、
更新前のユーザ識別情報と更新後のユーザ識別情報と、当該更新前のユーザ識別情報が用いられる第一のサブファイルシステム若しくは第二のサブファイルシステムのマウントポイント情報とを受信するステップと、
受信した前記マウントポイント情報に対応付けられたファイルシステム識別情報が前記ファイルシステム識別情報検索表に登録されているか否かをチェックするステップと、
受信した前記マウントポイント情報に対応付けられたファイルシステム識別情報が前記ファイルシステム識別情報検索表に登録されていない場合には、新たなファイルシステム識別情報を当該マウントポイント情報に対応付けて前記ファイルシステム識別情報検索表に登録するステップと、
前記新たなファイルシステム識別情報をファイルシステム識別情報として、前記更新前のユーザ識別情報を第二のユーザ識別情報として、前記更新後のユーザ識別情報を第一のユーザ識別情報として前記ユーザ識別情報変換情報に対応付けて登録するステップとを有することを特徴とするファイルシステムの処理方法。
【請求項１９】
請求項１８記載のファイルシステムの処理方法であって、更に、
受信した前記マウントポイント情報に対応付けられたファイルシステム識別情報が前記ファイルシステム識別情報検索表に登録されている場合には、
前記ユーザ識別情報変換情報を検索して、受信した前記更新前のユーザ識別情報と同じ値の第二のユーザ識別情報が前記ユーザ識別情報変換情報に登録されているかを確認するステップと、
受信した前記更新前のユーザ識別情報と同じ値の第二のユーザ識別情報が前記ユーザ識別情報変換情報に登録されている場合に、当該第二のユーザ識別情報に対応付けられている第一のユーザ識別情報を、受信した前記更新後のユーザ識別情報に置き換えるステップを有することを特徴とするファイルシステムの処理方法。
【請求項２０】
請求項１９記載のファイルシステムの処理方法であって、
受信した前記更新前のユーザ識別情報と同じ値の第二のユーザ識別情報が前記ユーザ識別情報変換情報に登録されていない場合には、前記マウントポイント情報に対応づけられたファイルシステム識別情報をファイルシステム識別情報として、前記更新後のユーザ識別情報を第一のユーザ識別情報として、前記更新前のユーザ識別情報を第二のユーザ識別情報として、前記ユーザ識別情報変換情報に登録するステップを有することを特徴とするファイルシステムの処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ネットワークを用いたファイル共有システムに関し、特にファイル共有システムにおけるユーザ管理方法に関する。
【背景技術】
【０００２】
複数の計算機がネットワークを介してファイル共有サーバにアクセスして、ファイル共有サーバが管理するファイルにアクセスするファイル共有システムが存在する。ファイル共有システムでは、ファイルにアクセスするユーザを管理するために、各ユーザにファイル共有システム内で一意のUID（User ID）と呼ばれる識別情報が付与され、UIDをユーザ管理サーバで管理することがある。またUIDはファイル共有サーバにおいて、ユーザがファイルに対するアクセス権限を有するかどうかを確認するため等に用いられる。
【０００３】
非特許文献１には、ユーザ管理サーバを用いてUIDを一括管理する方法が示されている。また非特許文献２には、UIDを用いてファイルへのアクセスを制御する事が開示されている。
【０００４】
【非特許文献１】W. Yeong 外２名、”Lightweight Directory Access Protocol (LDAP)”、[online]、1995年3月、Network Working Group、[平成17年2月8日検索]、インターネット＜URL：http://rfc.net/rfc1777.txt＞
【非特許文献２】“Network File System Protocol Specification (NFS)”、[online]、1989年3月、サンマイクロシステムズ(Sun Microsystems)、Network Working Group、[平成17年2月8日検索]、インターネット＜URL：http://rfc.net/rfc1094.txt＞
【発明の開示】
【発明が解決しようとする課題】
【０００５】
例えば会社ごとにファイル共有システムが構築されている場合、会社の統合等によって複数のファイル共有システムを統合して１つのファイル共有システムを構築する必要性が生じるケースがある。この様に複数のファイル共有システムが統合されて１つのファイル共有システムが構築される場合、統合後のファイル共有システムにおいて管理される各ユーザのUIDは、統合後のファイル共有システム内で一意にユーザを特定することができるユーザ識別情報である必要がある。統合前のファイル共有システムで用いられていたUIDを統合後のファイル共有システムが引き継いで用いると、UIDの一意性が保証されない可能性があるため、統合後のファイル共有システムではユーザに新しいUIDを付与し直すケースがある。
【０００６】
ファイル共有システムの統合等により各ユーザに付与されたUIDが変更されると、ファイル共有サーバは、各ファイルについてアクセス制限情報等の管理情報として用いられているUIDを変更する必要がある。しかし会社の統合に伴うファイル共有システムの統合等では、統合後のファイル共有システムは大規模なものである場合が多く、ファイル共有サーバが変更しなければならないUIDの数も膨大なものとなる。
【０００７】
そこで、ファイル共有システムにおいて、ユーザに付与されたUIDが変更された場合であっても、ファイル共有サーバがファイルの管理情報として用いているUIDの値を変更する必要のないシステムが望まれている。
【課題を解決するための手段】
【０００８】
システムは、ファイルシステムのデータを記憶した記憶装置と、記憶装置に接続されたファイル共有サーバと、ファイル共有サーバへファイルへのアクセスを要求する計算機を有する。ファイル共有サーバは、記憶装置に格納されているファイルシステムのデータを管理するファイルシステム処理部と、計算機からファイルへのアクセス要求を受信するファイルサーバ処理部と、計算機によって使用される第一のユーザ識別情報とファイルシステムの管理データとして記憶装置に記録されている第二のユーザ識別情報との間の変換処理を行うユーザ識別情報変換処理部とを有する。ユーザ識別情報変換処理部は、ファイルサーバ処理部が計算機からファイルへのアクセス要求を受信すると、該アクセス要求のアクセス対象となっているファイルの管理データに含まれる第二のユーザ識別情報を第一のユーザ識別情報に変換し、ファイルサーバ処理部は変換後の第一のユーザ識別情報を含む管理データを計算機に送信する。
【発明の効果】
【０００９】
ファイル共有システムのユーザに付与されたUIDが変更されても、ファイルシステムの管理情報として記録されているUIDの値を変更する必要がない。
【発明を実施するための最良の形態】
【００１０】
以降、会社A（以降「A社」と呼ぶ。）と会社B（以降「B社」と呼ぶ。）との統合により、A社のファイル共有システムとB社のファイル共有システムとが１つのファイル共有システムに統合されるケースを例に、本発明の一実施形態を説明する。尚、本発明は会社の統合によるファイル共有システムの統合だけでなく、ファイル共有システムの統合により各ユーザのUIDが変更されるケース全般に適用可能である。また、以降に説明する実施形態は一例であり、本発明はこの実施形態に限定されるものではない。
【００１１】
図１は、統合前のA社のファイル共有システム、及び統合前のB社のファイル共有システムの一例を示す図である。
【００１２】
統合前のA社のファイル共有システムでは、A社ユーザ管理サーバ100A、１又は複数のA社クライアント計算機101A、A社ファイル共有サーバ102AがA社LAN（Local Area Network）103Aを介して相互に通信可能に接続されている。また、A社ファイル共有サーバ102Aには、A社ストレージシステム104Aが接続されている。
【００１３】
複数のA社クライアント計算機101Aは各々、A社のユーザが利用する端末であり、A社ユーザ管理サーバ100A及びA社ファイル共有サーバ102Aのクライアントとなる。尚、A社LAN103Aに接続されるA社クライアント計算機101Aの数は図１の例に限られることはない。
【００１４】
A社ユーザ管理サーバ100Aは、A社LAN103Aに接続されたA社クライアント計算機101Aを利用するユーザを管理するサーバである。具体的には、A社ユーザ管理サーバ100AはA社のファイル共有システムのユーザに付与されたA社ファイル共有システム内で一意のUIDを管理している。そしてA社ユーザ管理サーバ100Aは、A社のユーザがA社クライアント計算機101Aへログインする際にA社クライアント計算機101Aに入力したユーザ名やパスワード等の認証情報を、当該A社クライアント計算機101Aから受信して、ユーザの認証処理を行い、認証結果（即ちログインの可否）を当該A社クライアント計算機101Aに返信する。
【００１５】
A社ファイル共有サーバ102Aは、各A社クライアント計算機101Aに対してファイル共有サービスを提供するファイルサーバである。即ちA社ファイル共有サーバ102AはA社のファイルシステムを管理し、各A社クライアント計算機101Aからファイルへのアクセス要求を受信すると、要求されたファイルへのアクセス処理を実行して結果を要求元のA社クライアント計算機101Aへ返す。尚、A社ファイル共有サーバ102Aが管理しているファイルシステムのデータ（ファイルやディレクトリのデータ及びファイルやディレクトリに対するアクセス制限情報等のファイルシステムの管理データの双方を含む）は、A社ファイル共有サーバ102Aに接続されたA社ストレージシステム104A内に格納されている。従って、A社ファイル共有サーバ102Aは、A社クライアント計算機101Aからファイルへのアクセス要求を受信すると、A社ストレージシステム104A内に格納されているデータにアクセスして要求されたファイルへのアクセス処理を実行することになる。A社ストレージシステム104Aは、ハードディスクデバイス、テープ装置、光ディスク等であっても良く、また複数のハードディスクデバイスをディスクコントローラで制御し複数のハードディスクデバイスを用いて冗長構成を有する論理デバイスを構成しているディスクアレイシステムであっても良い。
【００１６】
統合前のB社のファイル共有システムの構成は、統合前のA社のファイル共有システムの構成と同様であるので、説明は省略する。
【００１７】
図２は、A社とB社の会社統合により、A社のファイル共有システムとB社のファイル共有システムとが統合された後の、ファイル共有システムの一例を示す図である。
【００１８】
統合後のファイル共有システムは、１または複数のクライアント計算機101Cと、ユーザ管理サーバ100Cと、ファイル共有サーバ102CとがLAN103Cで通信可能に接続されている。更にファイル共有サーバ102Cと、旧A社ストレージシステム104Aと、旧B社ストレージシステム104Bと、統合後ファイル共有システム管理用ストレージシステム104Cとは、Storage Area Network(以降SANと呼ぶ)105を介して通信可能に接続されている。
【００１９】
複数のクライアント計算機101Cは各々、統合後のファイル共有システムのユーザが利用する端末であり、ユーザ管理サーバ100C及びファイル共有サーバ102Cのクライアントとなる。尚、LAN103Cに接続されるクライアント計算機101Cの数は図2の例に限られることはない。
【００２０】
ユーザ管理サーバ100Cは、LAN103Cに接続されたクライアント計算機101Cを利用するユーザ、即ち統合後のファイル共有システムのユーザを管理するサーバである。ここで、A社とB社の統合後、ユーザには新たにUID（以降、新UIDと呼ぶ。）が付与される。従って統合後のファイル共有システムのユーザは、統合前のA社のファイル共有システム若しくは統合前のB社のファイル共有システムにおいて当該ユーザに付与されていたUIDではなく、新たに付与された新UIDを用いることとなる。これは、統合前のA社のファイル共有システムで使用されていたあるユーザのUIDと、統合前のB社のファイル共有システムで使用されていたあるユーザのUIDが同じ値である場合、統合前のファイル共有システムで使用されていたUIDを統合後のファイル共有システムでも引き続き用いると、複数のユーザ間でUIDの重複が生じてしまい、統合後のファイル共有システムでUIDを用いてユーザを一意に特定できない可能性があるからである。ユーザ管理サーバ100Cは、統合後のファイル共有システムにおいてユーザを一意に識別するためにユーザに新たに付与された新UIDを管理する。そして新UIDを用いて、ユーザのログイン時における認証処理を実行する。
【００２１】
ファイル共有サーバ102Cは統合後のファイル共有システムにおいて、各クライアント計算機101Cに対してファイル共有サービスを提供するファイルサーバである。ファイル共有サーバ102Cは、旧A社のファイル共有サーバ102Aが管理していた旧A社のファイルシステム（以降、旧A社サブファイルシステムとも呼ぶ）と、旧B社のファイル共有サーバ102Bが管理していた旧B社のファイルシステム（以降、旧B社サブファイルシステムとも呼ぶ）とを統合して１つのファイルシステムとして管理し、このファイルシステムに対しクライアント計算機101Cからアクセス要求を受信した際には、ファイルへのアクセス処理を実行して結果をクライアント計算機101Cに返信する。尚、ファイル共有サーバ102Cが管理するファイルシステムのデータ（ファイルやディレクトリのデータ、及びファイルやディレクトリへのアクセス制限情報等の管理データの双方を含む）は、SAN105を介してファイル共有サーバ102Cに接続されているストレージシステム104A、104B、104Cに格納されている。
【００２２】
本実施形態では旧A社のストレージシステム104Aと旧B社のストレージシステム104Bは、統合後のファイル共有システムでも利用することとする。即ち、ファイル共有サーバ102CにSAN105を介して接続されている旧A社ストレージシステム104Aは、図１の統合前のA社ストレージシステム104Aに相当し、旧A社ストレージシステム104Aには旧A社のファイルシステムのデータ（即ち旧A社サブファイルシステムのデータ）が格納されている。同様に、旧B社ストレージシステム104Bは、図１の統合前のB社ストレージシステム104Bに相当し、旧B社ストレージシステム104Bには旧B社のファイルシステムのデータ（即ち旧B社サブファイルシステムのデータ）が格納されている。従って、旧A社ストレージシステム104Aや旧B社ストレージシステム104Bに格納されているファイルシステムの管理情報（例えば、ファイルへのアクセス制限情報等）には、統合前の旧A社や旧B社におけるUID（以降、旧UIDと呼ぶ）が用いられている。
【００２３】
SAN105には旧A社ストレージシステム104A、旧B社ストレージシステム104Bの他に、管理用ストレージシステム104Cも接続されている。管理用ストレージシステム104Cには、ファイル共有サーバ102Cが旧A社サブファイルシステム及び旧B社サブファイルシステムを統合管理するために必要となる管理用データが格納されている。尚、管理用ストレージシステム104Cには、この他に統合後のファイル共有システムにおいて新たに作成されたファイルシステムの情報が格納されることとしても良い。また、管理用データは旧A社ストレージシステム104Aまたは旧B社ストレージシステム104Bに格納されることとしても良い。管理用ストレージシステム104Cは、旧A社ストレージシステム104Aや旧B社ストレージシステム104Bと同様、ハードディスクデバイス、テープ装置、光ディスク等であっても良く、ディスクアレイシステムであっても良い。
【００２４】
図３は統合後のファイル共有システムの構成例を示す図である。
【００２５】
クライアント計算機101Cは、プロセッサ（以降、CPUと呼ぶ。）221、LAN103Cに接続されるネットワークインタフェース制御部（以降、ネットワークI/Fと呼ぶ、）222、メモリ223を有し、これらは内部通信路によって相互に通信可能に接続されている。
【００２６】
メモリ223に格納されているログインプログラム225は、クライアント計算機101Cを利用するユーザの認証処理を行うためのプログラムであって、CPU221によって実行される。ログインプログラム225が実行されると、CPU221はユーザからクライアント計算機101Cに入力されたユーザ名やパスワードを認証要求と共にユーザ管理サーバ100Cへ送信し、ユーザ管理サーバ100Cから認証結果を受信してこれを出力する。尚、ユーザ管理サーバ100Cによる認証処理の結果、ユーザのログインが許可されると、クライアント計算機101Cはユーザ管理サーバ100Cから当該ユーザのUIDを受信する。そこで、メモリ223にはユーザ管理サーバ100Cから受信した当該ユーザのUIDを記憶しておくためのメモリ領域(UIDデータ領域)224が設けられている。
【００２７】
メモリ223に格納されているファイルアクセスプログラム226は、ファイル共有サーバ102Cに管理されているファイルシステムのファイルへアクセスするためにCPU221によって実行されるプログラムである。
【００２８】
ユーザ管理サーバ100Cは、CPU201、外部記憶装置203に接続される外部記憶装置インタフェース制御部（以下、外部記憶装置I/Fと呼ぶ。）202、メモリ205、LAN103Cに接続するためのネットワークI/F207を有し、これらは内部通信路によって相互に通信可能に接続されている。
【００２９】
外部記憶装置203は、ハードディスクや光ディスク等のディスク装置であり、外部記憶装置にはUID管理表204が格納されている。尚外部記憶装置203はディスクアレイシステムであっても良い。
【００３０】
メモリ205に格納されているユーザ管理サーバプログラム206はUIDを管理するためにCPU201によって実行されるプログラムである。ユーザ管理サーバプログラム206への要求は、クライアント計算機101CからLAN103C、ネットワークI/F207を介してユーザ管理サーバ100Cに伝えられる。そしてCPU201によってユーザ管理サーバプログラム206が実行されると、CPU201は受信した要求に応じて外部記憶装置203に格納されているUID管理表204を検索し、UID管理表204に登録されているUIDを要求元のクライアント計算機101Cに送信する処理を実行する。
【００３１】
ファイル共有サーバ102Cは、CPU247、メモリ241、LAN103Cに接続するためのネットワークI/F246、SAN105に接続するためのストレージインタフェース制御部（以降、ストレージI/Fと呼ぶ）248とを有し、これらは内部通信路によって相互に通信可能に接続されている。
【００３２】
メモリ241に格納されているファイル共有サーバプログラム244がCPU247によって実行されると、ファイル共有サーバ102Cが管理しているファイルシステムに対するクライアント計算機101Cからの要求をファイル共有サーバ102Cが受信して処理し、処理結果をクライアント計算機101Cに返信する。
【００３３】
メモリ241に格納されているファイルシステムプログラム243は、旧A社ストレージシステム104Aに格納されている旧A社サブファイルシステムのデータ及び旧B社ストレージシステム104Bに格納されている旧B社サブファイルシステムのデータを用いて、旧A社ストレージシステム104内に構築される旧A社サブファイルシステム及び旧B社ストレージシステム104B内に構築される旧B社サブファイルシステムを管理するために、CPU247によって実行されるプログラムである。上述の様に旧A社ストレージシステム104Aや旧B社ストレージシステム104Bには、統合前の旧UIDを用いたファイルシステムの管理情報が格納されているため、ファイルシステムプログラム243は、旧A社サブファイルシステムや旧B社サブファイルシステムのファイルを、統合前の旧UIDを用いて管理している。
【００３４】
メモリ241に格納されているUID変換プログラム245は、統合後の新UIDと、旧A社ストレージシステム104Aや旧B社ストレージシステム104Bに格納されている、サブファイルシステムの管理データとして用いられている統合前の旧UIDとを変換するために、CPU247によって実行されるプログラムである。UID変換プログラム245がCPU247によって実行されると、管理用ストレージシステム104Cに格納されているファイルシステムID検索表250とUID変換表251とが参照され、新UIDと旧UIDとの間の変換処理が行われる。尚、新UIDは統合後のファイル共有システムのユーザや、このユーザが使用するクライアント計算機101C、ユーザ管理サーバ100C等によって使用されるUIDであることから、「ユーザ側UID」と、旧UIDは旧A社サブファイルシステムや旧B社サブファイルシステムを管理するファイルシステムプログラム243によって用いられるUIDであることから、「ファイルシステム側UID」と呼ぶことにする。
【００３５】
メモリ241に格納されているUID変換表管理プログラム242は、管理用ストレージシステム104Cに格納されているファイルシステムID検索表250やUID変換表251を管理するためにCPU247によって実行されるプログラムである。
【００３６】
図４は旧A社ストレージシステム104Aに格納されている、旧A社サブファイルシステムのデータ（ファイルやディレクトリのデータ及びファイルシステムの管理データを含む）の一例を示す図である。
【００３７】
旧A社サブファイルシステムのデータには、ディレクトリエントリ112、inode情報118、ACL情報121、及び各ファイルのデータが含まれる。旧A社ストレージシステム104A内には、inode情報格納用領域130、ディレクトリエントリ格納用領域131、ALC情報格納用領域132が設けられており、各領域にinode情報118、ディレクトリエントリ112、ACL情報121が格納される。またその他の領域に各ファイルのデータが格納される。
【００３８】
ディレクトリエントリ112は、旧A社サブファイルシステムに属するディレクトリやファイルのパス名110と、このディレクトリ若しくはファイルに割り当てられたinode番号111とを有する。inode番号111は、対応するファイル若しくはディレクトリのinode情報を格納している記憶領域のアドレスを示す情報であり、inode番号が指し示す記憶領域を参照すれば、このinode番号に対応するファイル若しくはディレクトリのinode情報118を参照することができる。
【００３９】
Inode情報118は、旧A社サブファイルシステムに属する各ディレクトリ、各ファイルのinode情報を有する。各ディレクトリや各ファイルのinode情報には、アクセスモード情報113、UID情報114、GID情報115、ACL116、ディスクブロックアドレス117が含まれる。
【００４０】
UID情報114は当該ファイル若しくはディレクトリを所有するユーザのUIDを示す情報である。ファイルやディレクトリの作成時には、作成者のUIDがUID情報114としてinode情報118に登録されるが、その後UID情報114を変更することも可能である。GID情報115は当該ファイル若しくはディレクトリが属するグループの識別情報を示す情報である。
【００４１】
アクセスモード情報113は、UID情報114で示されるユーザの当該ファイル若しくはディレクトリに対するアクセス権限、及びGID情報115で示されるグループに属するユーザの当該ファイル若しくはディレクトリに対するアクセス権限、及びUID情報とGID情報のどちらにも属さないユーザへのアクセス権限を示す情報であり、UID情報114で示されるユーザ、GID情報115で示されるグループ、UID情報とGID情報のどちらにも属さないユーザ各々について、ファイル若しくはディレクトリへのリード可否、ライト可否、実行可否を示す情報が含まれる。
【００４２】
ACL116は当該ディレクトリ若しくはファイルについてのACL情報121が格納されている記憶領域のアドレスを示す情報であり、ACL116が指し示す記憶領域を参照すれば、当該ファイル若しくはディレクトリについてのACL情報121を参照することができる。ACL情報121には、UID119と当該UID119で示されるユーザの当該ファイル若しくはディレクトリに対するアクセス権限を示すフラグ120とが対応付けて登録されている。フラグ120としては当該ファイル若しくはディレクトリのリード可否、ライト可否、実行可否を示す情報が一例として挙げられる。尚、ACL情報121には、GIDと当該GIDで示されるグループに属するユーザについてのアクセス権限を示すフラグとを対応付けて登録するものとしても良い。この様にACL情報121には、UID情報114やGID情報115以外のUIDやGIDで識別されるユーザのアクセス権限情報をも登録しておくことができる。
【００４３】
ディスクブロックアドレス117は当該ファイル、若しくはディレクトリのデータが実際に格納されている旧A社ストレージシステム104A内のブロックアドレスを示す情報である。
【００４４】
尚、旧B社サブファイルシステムのデータも図4に示す旧A社サブファイルシステムのデータと同様の構成を有しており、旧B社ストレージシステム104Bに格納されている。
【００４５】
図５は、ユーザ管理サーバ100Cに接続された外部記憶装置203に格納されているUID管理表204の一例を示す図である。UID管理表204には、ファイル共有システムを使用するユーザのユーザ名300と当該ユーザのUID301とが対応づけて登録されている。図５に示すUID管理表204は統合後のファイル共有システムにおけるUID管理表204の例であるので、このUID管理表204には統合後のファイル共有システムのユーザのユーザ名と、このユーザのユーザ側UID（新UID）とが対応付けられている。ユーザ管理サーバ100CのCPU201はユーザ管理サーバプログラム206を実行して、UID管理表204を参照し、クライアント計算機101Cから受信したユーザ名をこのユーザ名に対応する新UIDに変換する。
【００４６】
図６は統合後のファイル共有システムの管理用ストレージシステム104Cに格納されているファイルシステムID検索表250の一例を示す図である。ファイルシステムID検索表250には、統合後のファイル共有システムに含まれるサブファイルシステムの識別情報であるファイルシステムID305と、当該サブファイルシステムのマウントポイント306とが対応付けて登録されている。図6の例では、旧A社サブファイルシステムのファイルシステムID「10」と、旧A社サブファイルシステムのマウントポイント、旧B社サブファイルシステムのファイルシステムID「20」と、旧B社サブファイルシステムのマウントポイントとがファイルシステムID検索表250に登録されている。
【００４７】
図７は統合後のファイル共有システムの管理用ストレージシステム104Cに格納されているUID変換表251の一例を示す図である。UID変換表251には、ユーザ側UID（新UID）307と、これに対応するファイルシステムID308、及びファイルシステム側UID（旧UID）309が対応付けられて登録されている。ユーザ側UID307は、ユーザ管理サーバ100Cによって管理されている新UID、即ちUID管理表204に登録されているUIDである。一方、旧A社サブファイルシステムや旧B社サブファイルシステムは、統合前の旧UID（即ちファイルシステム側UID）を用いて管理されているため、ユーザ側UID307に対応するファイルシステム側UID309がUID変換表251に登録されている。
【００４８】
但し、旧A社サブファイルシステム及び旧B社サブファイルシステム間で別ユーザに対し同じファイルシステム側UIDが使用されていたり、旧A社サブファイルシステム及び旧B社サブファイルシステム間で同じユーザに対し別のファイルシステム側UIDが付与されている可能性があるため、UID変換表251ではファイルシステムID308と、ファイルシステム側UID309とが、ユーザ側UID307と対応付けられている。従って、UID変換表251に登録されているファイルシステムID308は、対応するファイルシステム側UID309が使用されているサブファイルシステムの識別情報ということになる。
【００４９】
図８は、クライアント計算機101Cとユーザ管理サーバ100Cとの間で実行されるログイン処理の一例を示す図である。ユーザがクライアント計算機101Cにログインする際、クライアント計算機101Cのログインプログラム225がユーザ名及びパスワードの入力を要求する画面を出力しているので（ステップ400）、ユーザはユーザ名及びパスワードを入力する。入力されたユーザ名及びパスワードを受信したログインプログラム225は、ユーザ管理サーバ100Cのユーザ管理サーバプログラム206に対してユーザの認証要求を送信すると共に（ステップ401）、入力されたユーザ名及びパスワードを送信する（ステップ402）。ユーザ管理サーバプログラム206は、受信したユーザ名及びパスワードを用いて認証処理を行い、ユーザに対してクライアント計算機101Cへのログインを許可するか否かを判断する。更にログインを許可する場合にはユーザ管理サーバプログラム206は外部記憶装置203に記憶されているUID管理表204を参照して、受信したユーザ名と一致するユーザ名300を検索し、このユーザ名に対応付けられているUID301（ユーザ側UID）を取得する。そしてユーザ管理サーバプログラム206は、認証処理結果と、ユーザに対しログインを許可する場合には更にUID管理表204を用いて取得したユーザ側UIDとをクライアント計算機101Cのログインプログラム225に送信する。ログインプログラム225はユーザ管理サーバプログラム206から認証結果と、ログインが許可された場合にはユーザ側UIDとを受信する（ステップ403）。そしてログインプログラム225はユーザ管理サーバプログラム206から受信した情報に基づき、ログインが許可されたか否かを判断し（ステップ404）、ログインが許可された場合にはユーザ管理サーバプログラム206から受信したユーザ側UIDをメモリ223に予め確保されているメモリ領域224に記録して（ステップ405）処理を終了する。以降、このクライアント計算機101Cからファイル共有サーバ102Cに対して統合後のファイルシステムに対するアクセス要求が発行される際には、メモリ領域224に記録されているユーザ側UIDが使用されることになる。一方ログインが不許可だった場合には、ログインプログラム225はエラーメッセージを出力して（ステップ407）処理を終了する。
【００５０】
図９は、クライアント計算機101Cのファイルアクセスプログラム226が実行されることにより行われる処理の一例を示す図である。
【００５１】
ファイルアクセスプログラム226はユーザから、アクセス対象のファイルもしくはディレクトリのパス名と、当該ファイル若しくはディレクトリについてファイル共有サーバ102Cに実行させる処理の内容を示したアクセス要求を受信する。アクセス要求としては、ファイルを作成するための「create要求」、ディレクトリを作成するための「mkdir要求」、ファイルやディレクトリの属性を変更するための「setattr要求」、ファイルやディレクトリの現在の属性を取得するための「stat要求」、ディレクトリの現在の内容を取得するための「readdir要求」、ファイルへのデータの書き込みを行うための「write要求」、ファイルからデータの読み出しを行うための「read要求」等がある。ここではファイルアクセスプログラム226がパス名として、「/companyA/a/b.doc」を受信した例を用いて以降の処理を説明する。
【００５２】
パス名を受信したファイルアクセスプログラム226は、パスを要素に分解し、先頭から順に要素を取り出す（ステップ420）。ここでパスの要素とは、「/」によって区切られているパス名の一部分のことを指す。受信したパス名が「/companyA/a/b.doc」である場合には、クライアント計算機101Cはまずパス名のうち「companyA」の部分（パスの要素）を取り出す。
【００５３】
そして、取り出したパスの要素について、ファイル共有サーバ102Cのファイル共有サーバプログラム244にルックアップ処理を要求する（ステップ421）。この際ファイルアクセスプログラム226は、メモリ領域224に格納されているユーザ側UIDとステップ420で取り出したパスの要素とを含むルックアップ処理要求をファイル共有サーバプログラム244に送信する。
【００５４】
ルックアップ処理の詳細は後述するが、このルックアップ処理においては、ルックアップ処理対象のパスの要素について、UID情報114、GID情報115、ACL情報121等の情報及びファイルハンドルの値が取得され、UID情報114、GID情報115、ACL情報121等の情報に含まれるファイルシステム側UIDの値はユーザ側UIDの値に変換され、変換後のこれらの情報とファイルハンドルがルックアップ処理の要求元に返される。
【００５５】
ファイルアクセスプログラム226はルックアップ処理の結果をファイル共有サーバプログラム244から受信すると、受信したUID情報、GID情報、ACL情報とメモリ領域224に記録されているUIDデータとに基づき、当該パスの要素に対するアクセスが許可されているか否かをチェックし（ステップ423）、アクセスが許可されている場合にはステップ424へ進み、アクセスが許可されていない場合にはエラーを出力して（ステップ427）処理を終了する。
【００５６】
ステップ424ではファイルアクセスプログラム226が、アクセス対象のファイルもしくはディレクトリについて、パスの最後の要素までルックアップ処理が完了しているか否かをチェックする。ここでパスの最後の要素とは、ファイルアクセスプログラム226がユーザから受信したパス名に含まれるパスの要素であって、既にファイルシステムプログラム243によって管理されているファイル若しくはディレクトリを示すパスの要素のうち、最もパス名の後方に位置するパスの要素を指す。従って、ファイルアクセスプログラム226が「/companyA/a/b.doc」について「create要求」を受信している場合には、「b.doc」というファイルは未だ作成されていないので、「a」がパスの最後の要素となる。一方ファイルアクセスプログラム226が「/companyA/a/b.doc」について「setattr要求」「stat要求」「write要求」「read要求」等を受信している場合には、「b.doc」というファイルは既に作成されてファイルシステム243によって管理されているので、「b.doc」がパスの最後の要素となる。
【００５７】
パスの最後の要素までルックアップ処理が完了していればステップ425に進み、完了していなければステップ420に戻って、パスを要素に分解して、次の要素を取り出す。ここで次の要素とは、次の「/」によって区切られる部分までのパスの要素を指し、上述の例（アクセス対象のパス名が「/companyA/a/b.doc」である例）の場合、「companyA」の次の要素は「a」となる。
【００５８】
ステップ425でファイルアクセスプログラム226は、ユーザから受信したアクセス要求（「create要求」「mkdir要求」「setattr要求」「stat要求」「readdir要求」「write要求」「read要求」等）に従った処理を実行するよう、ファイル操作要求をファイル共有サーバプログラム244に送信する。このファイル操作要求には、ステップ422からステップ424を実行することにより取得した、アクセス対象のファイル若しくはディレクトリのファイルハンドルが含まれている。また「create要求」「mkdir要求」「setattr要求」等一部のファイル操作要求には、メモリ領域224に記録されているユーザ側UIDが更に含まれる。そして、ファイルアクセスプログラム226はファイル共有サーバプログラム244からファイル操作要求に対する応答を受信して（ステップ426）、この応答を出力して処理を終了する。
【００５９】
図１０は、ファイル共有サーバ102Cにおいてファイル共有サーバプログラム244が実行されることにより行われる処理の一例を示す図である。
【００６０】
クライアント計算機101Cのファイルアクセスプログラム226からファイル若しくはディレクトリに対する処理要求を受信したファイル共有サーバプログラム244は、処理要求の内容がLookup処理の実行であるかを判断する（ステップ481）。Lookup処理ではない場合にはステップ482以降の処理が、Lookup処理である場合にはステップ486以降の処理が実行されることになる。
【００６１】
ステップ482でファイル共有サーバプログラム244は、ファイルアクセスプログラム226から受信した要求中に含まれるファイルハンドルからinode番号111を求める。
【００６２】
ここで、ファイルハンドルはファイル共有サーバプログラム244がファイルやディレクトリを一意に特定するために、ファイル共有サーバプログラム244によって生成される値である。ファイルハンドルは、例えば、ファイル共有サーバプログラム244が予め定められた関数にinode番号111を入力して当該関数の出力を求めることにより生成される。そしてファイルハンドルとinode番号は1：1の対応関係を持つ。従って、ファイル共有サーバプログラム244は、inode番号111とファイルハンドルとの対応関係を把握しており、ファイルハンドルからinode番号111を取得することができる。
【００６３】
尚、ファイル共有サーバプログラム244からUID変換プログラム245へ処理を要求する際には、inode番号111が用いられる。
【００６４】
次にファイル共有サーバプログラム244は、UID変換プログラム245へファイルアクセスプログラム226から要求された処理の実行を依頼する（ステップ483）。この際、ファイル共有サーバプログラム244は、ファイルアクセスプログラム226から受信した要求中に含まれるパラメータと共にステップ482で取得したinode番号111もUID変換プログラム245に渡す。
【００６５】
ステップ484でファイル共有サーバプログラム244は、依頼した処理の結果をUID変換プログラム245から取得する。そして取得した処理結果をファイルアクセスプログラム226に送信して（ステップ485）処理を終了する。尚UID変換プログラム245から受信した処理結果にinode番号111が含まれる場合には、ファイル共有サーバプログラム244はこのinode番号111から対応するファイルハンドルを取得して、ファイルハンドルと処理結果とをファイルアクセスプログラム226に送信する。
【００６６】
一方ステップ486では、ファイル共有サーバプログラム244はファイルアクセスプログラム226から受信したLookup要求中に含まれるパスの要素からinode番号111を求める。これはディレクトリエントリ112を参照することにより求めることができる。
【００６７】
そしてファイル共有サーバプログラム244は、UID変換プログラム245にLookup処理の実行を依頼する（ステップ487）。この際、ファイル共有サーバプログラム244は、ステップ486で取得したinode番号をUID変換プログラム245に伝えることで、Lookup処理の対象を特定する。
【００６８】
ステップ488でファイル共有サーバプログラム244は、UID変換プログラム245からLookup処理結果を受領し(ステップ488)、Lookup処理結果に含まれるinode番号からファイルハンドルを求めて、求めたファイルハンドルとステップ488で受領したLookup処理結果をファイルアクセスプログラム226に送信して（ステップ489）、処理を終了する。
【００６９】
図１１は、ファイル共有サーバ102CにおいてUID変換プログラム245が実行されることにより行われる処理の一例を示す図である。
【００７０】
ファイル共有サーバプログラム244からファイル若しくはディレクトリに対する処理要求を受信したUID変換プログラム245は、当該処理にUIDの変換が必要か否かを判断する（ステップ521）。これはファイル共有サーバプログラム244から受信した処理要求の内容から判断できる。
【００７１】
UIDの変換が不要な場合にはUID変換プログラム245はファイル共有サーバプログラム244から受信した処理要求をファイルシステムプログラム243に送信する（ステップ522）。そして処理結果をファイルシステムプログラム243から取得しファイル共有サーバプログラム244へ返却する(ステップ523)。
【００７２】
ここでUIDの変換が不要な場合とは、例えばファイルアクセスプログラム226がファイル共有サーバプログラム244へ発行したファイル操作要求が、ファイルへのread要求やwrite要求である場合であり、この場合は、UID変換プログラム245はファイルシステムプログラム243へread要求やwrite要求を渡す。
【００７３】
read要求やwrite要求を受信したファイルシステムプログラム243は、read要求やwrite要求中に含まれるinode番号111（即ちファイル共有サーバプログラム244が図10のステップ482で求めたinode番号111）に基づいて、アクセス対象のファイルを特定し、特定されたファイルに対してリード処理若しくはライト処理を実行して、処理の結果をUID変換プログラム245に返す。そしてUID変換プログラム245はファイルシステムプログラム243から受信した処理結果をファイル共有サーバプログラム244へ返す（ステップ523）。尚、ファイルシステムプログラム243はinode番号111からinode情報118を取得することによりアクセス対象のファイル若しくはディレクトリのデータにアクセスすることができる。
【００７４】
一方、UIDの変換が必要な場合にはステップ440以降の処理が実行される。UIDの変換が必要な場合とは、UID変換プログラム245がファイル共有サーバプログラム244から「create要求」「mkdir要求」「setattr要求」「stat要求」「readdir要求」「Lookup処理要求」等を受信した場合がある。
【００７５】
ステップ440で、UID変換プログラム245は、ファイル共有サーバプログラム244から要求された処理の内容を確認する。
【００７６】
処理内容が「stat要求」や「readdir要求」等に基づきファイルシステムのinode情報118に格納されているUID情報114、GID情報115、ACL116、及びACL情報121等を検索し、これらの情報を取得する処理を含む場合には、ステップ442以降の処理が実行される。
【００７７】
一方、処理内容がLookup処理である場合にはLookup処理が実行される（ステップ441）。Lookup処理の詳細は図12を用いて後述する。
【００７８】
処理内容が「create要求」や「mkdir要求」、「setattr要求」等に基づきファイルシステムのinode情報118に新たにUID情報114、GID情報115、ACL116を設定したりACL情報121を新たに設定したり、既にinode情報118に設定されているUID情報114、GID情報115、ACL116を変更したり既に設定されているACL情報121を変更したりする処理を含む場合には、ステップ445以降の処理が実行される。
【００７９】
ステップ442でUID変換プログラム245はまず、ファイル共有サーバプログラム244から受信した、アクセス対象のディレクトリ若しくはファイルのinode番号111を用いて当該ディレクトリ若しくはファイルのinode情報118を参照し、当該ディレクトリ若しくはファイルのUID情報114を取得する。尚、この際UID情報114だけでなくGID情報115やACL情報121をも取得することとしても良い。
【００８０】
次にステップ443でUID変換プログラム245は、ステップ442で取得したUID情報114、GID情報115、ACL情報121に含まれるファイルシステム側UIDの値を、ユーザ側UIDの値に変換する。
【００８１】
この変換処理の際UID変換プログラム245は、inode番号111を用いてディレクトリエントリ112を参照することにより、当該inode番号111が示すファイル若しくはディレクトリが属するサブファイルシステムのマウントポイントを取得する。そしてUID変換プログラム245はこのマウントポイントを用いてファイルシステムID検索表250を参照して処理対象のディレクトリ若しくはファイルが属するサブファイルシステムのファイルシステムID305を取得する。更にUID変換プログラム245は、取得したファイルシステムID305とステップ442で取得したUID情報114、GID情報115、ACL情報121に含まれるファイルシステム側UIDの値とを用いてUID変換表251を検索することにより、当該ファイルシステム側UIDの値に対応するユーザ側UID307の値を取得する。
【００８２】
そしてステップ444でUID変換プログラム245は、変換後のユーザ側UIDの値を含む、処理対象ディレクトリ若しくはファイルのUID情報、GID情報、ACL情報をファイル共有サーバプログラム244に返す。
【００８３】
一方、ステップ445では、UID変換プログラム245はファイル共有サーバプログラムから受信したユーザ側UID（クライアント計算機101Cのメモリ領域224に格納されているユーザ側UID）の値をファイルシステム側UIDの値に変換する。
【００８４】
この際UID変換プログラム245は、ファイル共有サーバプログラム224から受信したinode番号111の値を用いてディレクトリエントリ112を参照し、処理対象のディレクトリ若しくはファイルが属するサブファイルシステムのマウントポイントを特定する。更にUID変換プログラム245は、取得したマウントポイントを用いてファイルシステムID検索表250から、当該サブファイルシステムのファイルシステムIDを取得する。そしてUID変換プログラム245は、取得したファイルシステムIDとファイル共有サーバプログラムから受信したユーザ側UIDの値とを用いてUID変換表251を検索し、当該ユーザ側UIDに対応するファイルシステム側UIDの値を取得する。
【００８５】
次にUID変換プログラム245は取得したファイルシステム側UIDとファイル共有サーバプログラム244から受信したinode番号111とを用いて、ファイルシステムプログラム243にファイル共有サーバプログラム244から指定された処理を実行するためのアクセス要求を発行し、ファイルシステムプログラム243から処理結果を受信すると当該処理結果をファイル共有サーバプログラム244に返す（ステップ446）。
【００８６】
尚、UID変換プログラム245からアクセス要求を受信したファイルシステムプログラム243は、例えばアクセス要求の内容が「create要求」（若しくは「mkdir要求」）であれば、新規ファイル（若しくはディレクトリ）を作成し、当該ファイル（若しくはディレクトリ）のinode情報118のUID情報114として、UID変換プログラム245から受信したファイルシステム側UIDの値を登録する。そして当該新規ファイル若しくはディレクトリのinode番号111をUID変換プログラム245に返す。
【００８７】
またアクセス要求の内容が「setattr要求」であれば、ファイルシステムプログラム243はUID変換プログラム245から受信したinode番号111で指定されるファイル若しくはディレクトリのinode情報118を参照し、当該inode情報118のUID情報114をUID変換プログラム245から受信したファイルシステム側UIDの値に変更する。そして処理が完了した旨の通知をUID変換プログラム245に返す。
【００８８】
図12はUID変換プログラム245が実行するLookup処理の一例を示す図である。UID変換プログラム245はファイル共有サーバプログラム244からLookup処理対象のinode番号111及びクライアント計算機101Cのメモリ領域224に格納されているユーザ側UIDを取得する(ステップ500)。
【００８９】
次にUID変換プログラム245は、inode番号111を用いてディレクトリエントリ112を調べ、マウントポイントを取得し、このマウントポイントを用いてファイルシステムID検索表250を検索し、Lookup処理対象のファイル若しくはディレクトリが属するサブファイルシステムのIDを取得する（ステップ501）。
【００９０】
更にUID変換プログラム245は、ステップ501で取得したファイルシステムのIDと、ファイル共有サーバプログラム244から受信したユーザ側UIDとを用いて、UID変換表251を検索し、当該ユーザ側UIDに対応付けられたファイルシステム側UIDを検索する（ステップ502）。そして、UID変換プログラム245はファイル共有サーバプログラム244から受信したユーザ側UIDに対応付けられたファイルシステム側UIDがUID変換表251に登録されているか否かをチェックし（ステップ503）、検索の結果ファイルシステム側UIDが見つかった場合にはステップ506以降を実行し、見つからなかった場合にはステップ504以降を実行する。
【００９１】
ステップ503においてUID変換表251に検索対象のファイルシステム側UIDが登録されていないケースというのは、ステップ500で取得したユーザ側UIDで識別されるユーザがステップ501で取得したファイルシステムIDで識別されるサブファイルシステムに初めてアクセスする場合である。即ち、例えば旧A社に属していたユーザが始めてクライアント計算機101Cを用いて旧B社サブファイルシステムに属するファイル若しくはディレクトリにアクセスする場合が当該ケースに該当する。この場合、旧B社サブファイルシステムでは、旧A社に属していたユーザのファイルシステム側UIDは管理していないので、UID変換プログラム245は旧A社のユーザ用に旧B社サブファイルシステムにおけるファイルシステム側UIDを作成して、これをUID変換表251に登録する。この処理がステップ504及びステップ505に相当する。
【００９２】
即ちステップ504においてUID変換プログラム245は、UID変換表251を検索して、ステップ501で取得したファイルシステムIDと対応付けられているファイルシステム側UIDとは異なるファイルシステム側UIDの値を選択する。つまり、ステップ501で取得したファイルシステムIDで識別されるサブファイルシステムにおいて、未だ使用されていないファイルシステム側UIDの値を選択する。
【００９３】
次にステップ505においてUID変換プログラム245は、ステップ504で選択したファイルシステム側UIDを、ステップ501で取得したファイルシステムIDと、ステップ500で取得したユーザ側UIDに対応付けてUID変換表251に登録する。
【００９４】
そしてステップ506では、UID変換プログラム245はステップ500で取得したinode番号111で特定されるinode情報118を取得し、更にinode情報118から対応するACL情報121を取得する。
【００９５】
そしてUID変換プログラム245は取得したinode情報118中のUID情報114、GID情報115、及び取得したACL情報121に含まれているファイルシステム側UIDの値を、ユーザ側UIDの値に変換する（ステップ507）。この変換処理は、ステップ501で取得したファイルシステムIDと、ステップ506で取得した情報中に含まれるファイルシステム側UIDの値とを用いて、UID変換プログラム245がUID変換表251を検索し、対応するユーザ側UIDの値を取得することによって実行される。
【００９６】
そして、ステップ509でUID変換プログラム245は、inode番号111と、ステップ506及びステップ507で取得した、UIDとしてユーザ側UIDの値を有するUID情報、GID情報、ACL情報を、ファイル共有サーバプログラム224に返信して、処理を終了する。
【００９７】
図13はファイル共有サーバ102Cの、UID変換表管理プログラム242が実行されることにより行われる処理の一例を示す図である。UID変換表管理プログラム242は、UID変換表251を作成したり、更新したりするために実行されるプログラムである。UID変換表251は図12のステップ505に示した通り、Lookup処理においてUID変換プログラム245によっても更新されるが、UID変換表管理プログラム242は主に、ファイル共有サーバ102Cの管理者等からの指示に基づき、UID変換表を新たに作成したり更新する際に実行される。
【００９８】
UID変換表管理プログラム242は、ファイル共有サーバ102Cの管理者等からファイル共有サーバ102Cに対して入力された、サブファイルシステムのマウントポイント、新UID及び旧UIDを取得する（ステップ465）。そしてUID変換表管理プログラム242は、ファイルシステムID検索表250を参照して、ステップ465で取得したマウントポイントに対応付けられたファイルシステムIDを検索し（ステップ466）、検索対象のファイルシステムIDがファイルシステムID検索表250に既に登録されているか否かをチェックする（ステップ467）。
【００９９】
既に検索対象のファイルシステムIDがファイルシステムID検索表250に登録されていれば、当該ファイルシステムIDで識別されるサブファイルシステムは既に他のサブファイルシステムと統合されていることになる。そこでUID変換表管理プログラム242は、UID変換表251に、ステップ265で取得した旧UIDと同じ値のユーザ側UIDが登録されているか否かを調べるため、UID変換表251を検索し（ステップ468）、当該ユーザ側UIDの存在の有無をチェックする（ステップ469）。
【０１００】
検索の結果、ステップ465で取得した旧UIDと同じ値のユーザ側UIDが登録されている場合には、UID変換表管理プログラム242は、UID変換表251に登録されている当該ユーザ側UIDを、ステップ465で取得した新UIDに置き換えて（ステップ470）処理を終了する。
【０１０１】
尚ステップ470が実行されるケースには、例えば一旦サブファイルシステムの統合が行われてUID変換表251にユーザ側UIDとファイルシステム側UIDが登録された後に、更なるサブファイルシステムの統合等によりユーザ側UIDが書き換えられるケースが該当する。この様な場合には、ステップ465において、新たにユーザ側UIDとして用いられることになるUIDの値が新UIDとしてファイル共有サーバ102Cに入力され、この新UIDによって置き換えられることになるユーザ側UIDの値が旧UIDとしてファイル共有サーバ102Cに入力されることになる。
【０１０２】
ステップ469で、UID変換表251にステップ265で取得した旧UIDと同じ値のユーザ側UIDが存在しない場合には、UID変換表管理プログラム242はUID変換表251のファイルシステム側UID309としてステップ465で取得した旧UIDを、ユーザ側UID307としてステップ465で取得した新UIDを、ファイルシステムID308としてステップ466で検索の結果みつけたファイルシステムIDをそれぞれ登録し（ステップ472）、処理を終了する。
【０１０３】
尚、ステップ469での判断の結果、ステップ472が実行されるケースには、例えばサブファイルシステムが統合されて、ファイルシステムID検索表250に旧サブファイルシステムのファイルシステムIDとマウントポイントとが登録された後に、管理者がUID変換表251にデータを登録するため、旧ファイルシステムで用いられていたUIDを旧UIDとして、統合後のファイルシステムで用いられるUIDを新UIDとしてファイル共有サーバ102Cに入力する様な場合が該当する。
【０１０４】
ステップ467で検索対象のファイルシステムIDがファイルシステムID検索表250に登録されていないことが分かった場合には、UID変換表管理プログラム242はファイルシステムID検索表250で未だ使用されていないファイルシステムIDを選択して、このファイルシステムIDをステップ465で取得したマウントポイントと対応付けてファイルシステムID検索表250に登録する。更にUID変換表管理プログラム242は新しいUID変換表251を準備する（ステップ471）。そして、UID変換表管理プログラムはステップ471にて準備したUID変換表251に、ファイルシステム側UID309としてステップ465で取得した旧UIDを、ユーザ側UID307としてステップ465で取得した新UIDを、ファイルシステムID308としてステップ471で選択したファイルシステムIDをそれぞれ登録し（ステップ472）、処理を終了する。
【０１０５】
尚、ステップ467での判断の結果、ステップ471及びステップ472が実行されるケースには、例えば、ファイルシステムの統合後、新たにファイルシステムID検索表へ統合前のファイルシステムを登録し、UID変換表250を準備する場合が該当する。
【０１０６】
以上に説明した実施形態により、複数のファイルシステムの統合により、ファイルシステムのユーザを識別するためのUIDが更新された場合にも、ファイルシステムの管理データとしてストレージシステム104内に格納されているinode情報118、ACL情報121等を変更することなく、クライアント計算機101Cからは新しいUIDを用いて統合後のファイルシステムにアクセスすることができる。従って、ストレージシステム104内に記録されている大量のファイルやディレクトリ各々について、又統合後のファイルシステムを使用する大勢のユーザ各々について、ストレージシステム104内に記録されているinode情報118やACL情報121等の管理データを書き換える必要がなくなり、ファイルシステムの統合にかかる管理者の処理負荷、管理コストを削減することができる。
【０１０７】
また、WORM（Write Once Read Many）ファイルシステムと呼ばれるファイルシステムの中には、ファイルやディレクトリのデータだけでなく、inode情報118やACL情報121等のファイルシステムの管理データであっても、一旦書き込まれたデータの変更操作を受け付けないファイルシステムがある。この様なファイルシステムにおいては、ファイルシステムの統合等によりUIDの変更が必要になった場合にも、inode情報118やACL情報121を書き換えることができず、従来はファイルシステムの統合が困難であった。しかし、上述の実施形態によればファイルシステムの統合の際に新たにUID変換表を準備すれば、一度ストレージシステムに書き込まれたファイルシステムの管理データの変更操作を行うことなく、クライアントからは新しいUIDを用いて統合後のファイルシステムにアクセスすることができる。従って、WORMファイルシステムの統合が従来に比べて容易に行えるようになる。
【０１０８】
尚、上述の実施形態ではファイルシステムの統合によりUIDが変更される場合を例に説明を行ったが、他の理由によりUIDが変更される場合であっても本発明は適用可能である。また、上述の実施形態ではUIDが変更される場合を例に説明を行ったが、GIDが変更される場合にも、UIDの場合と同様の手法により本発明を適用することができる。
【０１０９】
また、図５から図７に示した表の形式は一例であって、情報のフォーマットは異なっていても、図５から図７に示す表と同様の情報を有していれば、本発明は適用可能である。例えば図14にはUID変換表251の他の一例を示す。図14の例では、ファイルシステムIDごとにユーザ側UIDとファイルシステム側UIDの組を分けて管理している。即ち図14の例では、ファイルシステムIDごとにサブテーブルが用意され、このサブテーブルには当該ファイルシステムIDに対応付けられるユーザ側UIDとファイルシステム側UIDの組が登録される。そしてファイルシステムIDとこれに対応するサブテーブルとを対応付けるポインタが、両者の対応関係を示している。UID変換表251を図14の様な構成とすれば、ファイルシステムIDが特定されると、検索すべきUID変換表251の範囲が限定されるので、UID変換表251の検索効率が図7に示す構成より向上される。
【図面の簡単な説明】
【０１１０】
【図１】統合前のA社のファイル共有システム及び統合前のB社のファイル共有システムの一例を示す図である。
【図２】統合後のファイル共有システムの一例を示す図である。
【図３】統合後のファイル共有システムの構成例を示す図である。
【図４】旧A社サブファイルシステムのデータの一例を示す図である。
【図５】UID管理表の一例を示す図である。
【図６】ファイルシステムID検索表の一例を示す図である。
【図７】UID変換表の一例を示す図である。
【図８】ログイン処理の一例を示す図である。
【図９】ファイルアクセスプログラムの処理の一例を示す図である。
【図１０】ファイル共有サーバプログラムの処理の一例を示す図である。
【図１１】UID変換プログラムの処理の一例を示す図である。
【図１２】Lookup処理の一例を示す図である。
【図１３】UID変換表管理プログラムの処理の一例を示す図である。
【図１４】UID変換表の他の一例を示す図である。
【符号の説明】
【０１１１】
100：ユーザ管理サーバ
101：クライアント計算機
102：ファイル共有サーバ
103：LAN
104：ストレージシステム
105：SAN
【図１】
2006252085.tif 000003
【図２】
2006252085.tif 000004
【図３】
2006252085.tif 000005
【図４】
2006252085.tif 000006
【図５】
2006252085.tif 000007
【図６】
2006252085.tif 000008
【図７】
2006252085.tif 000009
【図８】
2006252085.tif 000010
【図９】
2006252085.tif 000011
【図１０】
2006252085.tif 000012
【図１１】
2006252085.tif 000013
【図１２】
2006252085.tif 000014
【図１３】
2006252085.tif 000015
【図１４】
2006252085.tif 000016