Oracle® Solaris 11.2 でのネットワークファイルシステムの管理

印刷ビューの終了

更新: 2014 年 7 月
 
 

共通ディレクトリにプロジェクト関連ファイルを統合する方法

autofs を使用して、複数のシステムに共通のディレクトリにファイルを統合できます。共通ディレクトリ用にプロジェクト関連ファイルのディレクトリ構造を autofs マップに追加できます。このディレクトリ構造によって、ユーザーはシステム内の物理的およびハードウェア変更に関係なくプロジェクトファイルを使用できます。

  1. 管理者になります。

    詳細は、Oracle Solaris 11.2 でのユーザーとプロセスのセキュリティー保護 の割り当てられている管理権利の使用を参照してください。

  2. 共通ディレクトリ用エントリを auto_master マップに追加します。
    /common-dir     auto_common-dir     -nosuid

    auto_common-dir マップによって共通ディレクトリの内容が決まります。

  3. 作業空間に存在する可能性のある setuid プログラムをユーザーが実行するのを防ぐために、予防措置として -nosuid オプションを追加します。
  4. auto_common-dir マップにエントリを追加します。

    auto_common-dir マップが、各エントリがサブプロジェクトを表現するように編成されます。最初の操作により、マップが次のようになります。

    project1   system1:/export/common-dir/&
    project2    system1:/export/common-dir/&
    app1      system2:/export/common-dir/&

    各エントリの最後のアンパサンド (&) は、エントリ鍵を省略したものです。

使用例 4-1  /ws にプロジェクト関連ファイルを統合する

大きなソフトウェア開発プロジェクトの管理者であるとします。そこで、プロジェクト関連のファイルをすべて /ws というディレクトリの下で利用できるようにすると仮定します。このようなディレクトリは、そのサイトのすべてのワークステーションで共通である必要があります。

/ws ディレクトリに対するエントリを、サイトの auto_master マップに追加します。

/ws     auto_ws     -nosuid 

auto_ws マップが、/ws ディレクトリの内容を決定します。–nosuid は、作業空間に存在する可能性のある setuid プログラムをユーザーが実行するのを防ぎます。各エントリがサブプロジェクトを表現するように、auto_ws マップにエントリを追加します。最初の操作により、マップが次のようになります。

compiler   alpha:/export/ws/&
windows    alpha:/export/ws/&
files      bravo:/export/ws/&
drivers    alpha:/export/ws/&
man        bravo:/export/ws/&
tools      delta:/export/ws/&

各エントリの最後のアンパサンド (&) は、エントリ鍵を省略したものです。たとえば、最初のエントリは次のエントリと同じ意味です。

compiler		alpha:/export/ws/compiler 

この最初の試行によってシンプルに見えるマップが提供されますが、さらに調整が必要です。プロジェクトのオーガナイザーが、man エントリ内のドキュメントを各サブプロジェクトの下のサブディレクトリとして提供しようとしているとします。さらに、各サブプロジェクトは、ソフトウェアの複数のバージョンを記述するために、複数のサブディレクトリを必要とします。この場合、サーバー上のディスクパーティション全体に対して、これらのサブディレクトリをそれぞれ割り当てる必要があります。

次のように、マップ内のエントリを修正してください。

compiler \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /vers2.0    bravo:/export/ws/&/vers2.0 \
    /man        bravo:/export/ws/&/man
windows \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /man        bravo:/export/ws/&/man
files \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /vers2.0    bravo:/export/ws/&/vers2.0 \
    /vers3.0    bravo:/export/ws/&/vers3.0 \
    /man        bravo:/export/ws/&/man
drivers \
    /vers1.0    alpha:/export/ws/&/vers1.0 \
    /man        bravo:/export/ws/&/man
tools \
    /           delta:/export/ws/&

現在のマップはかなり長くなっていますが、まだ 5 つのエントリを含んでいるだけです。各エントリは、複数のマウントがあるために長くなっています。たとえば、/ws/compiler を参照するには、vers1.0vers2.0、および man ディレクトリ用の 3 つのマウントが必要です。

各行の末尾のバックスラッシュは、そのエントリが次の行に続くことを示します。実際、エントリは 1 つの長い行となっていますが、行ブレークやインデントのいくつかはエントリを読みやすくする目的で使用されています。

tools ディレクトリには、すべてのサブプロジェクトに対するソフトウェア開発ツールが含まれているため、同じサブディレクトリ構造の対象とはなっていません。tools ディレクトリは単一のマウントのままです。

この配置は、システムの管理者に大きな柔軟性を提供します。ソフトウェアプロジェクトでは、非常に大きなディスクスペースを消費します。プロジェクトのすべての過程を通じて、さまざまなディスクパーティションを再配置し、拡張することになる可能性もあります。これらの変更が auto_ws マップに反映されている場合は、/ws のディレクトリ階層は変わらないため、ユーザーに通知する必要はありません。

サーバー alphabravo が同じ autofs マップを見るため、これらのシステムにログインするユーザーは予期したとおりに /ws 名前空間を見つけることができます。このようなユーザーには、NFS マウントではなく、ループバックマウントを通じてのローカルファイルへの直接アクセスが提供されます。