Solaris のシステム管理 (デバイスとファイルシステム)

CacheFS ファイルシステムの作成とマウント (作業マップ)

次の作業マップの手順を参照して、CacheFS ファイルシステムを作成およびマウントしてください。

作業 

説明 

参照先 

1. キャッシュに書き込むファイルシステムを共有します。 

キャッシュに書き込むファイルシステムが共有されていることを確認します。 

share(1M)

2. キャッシュを作成します。 

cfsadmin コマンドを使用してキャッシュを作成します。

「キャッシュを作成する方法」

3. ファイルシステムをキャッシュにマウントします。 

次のいずれかの方法を使用して、ファイルシステムをキャッシュにマウントします。 

 

 

mount コマンドで、CacheFS ファイルシステムをマウントします。

「CacheFS ファイルシステムのマウント方法 (mount)」

 

/etc/vfstab ファイルを編集して、CacheFS ファイルシステムをマウントします。

「CacheFS ファイルシステムのマウント方法 (/etc/vfstab)」

 

autofs サービスを使用して、キャッシュされたファイルシステムをマウントします。 

「CacheFS ファイルシステムのマウント方法 (autofs)」

Procedureキャッシュを作成する方法

  1. クライアントシステムでスーパーユーザーになります。

  2. キャッシュを作成します。


    # cfsadmin -c /cache-directory
    

    cache-directory は、キャッシュがあるディレクトリの名前を示します。

    詳細は、cfsadmin(1M) のマニュアルページを参照してください。


    注 –

    キャッシュを作成し終わったら、キャッシュディレクトリ内で処理を実行しないでください。何か実行すると、CacheFS ソフトウェア内で矛盾が生じる可能性があります。



例 19–1 キャッシュを作成する

次の例は、デフォルトのキャッシュパラメータ値を使用して、/local/mycache ディレクトリ内にキャッシュを作成する方法を示しています。


# mkdir /local
# cfsadmin -c /local/mycache

ファイルシステムをキャッシュにマウントする

キャッシュにマウントされるファイルシステムを指定して、ユーザーがそのファイルシステム内のファイルにローカルにアクセスできるようにします。実際には、各ファイルは、ユーザーがアクセスするまではキャッシュに書き込まれません。

次の表に、CacheFS ファイルシステムをマウントする 3 つの方法を示します。

CacheFS ファイルシステムのマウント方法 

CacheFS マウント方法の使用頻度 

mount コマンドを使用する方法

同じファイルにアクセスするには、システムをリブートするたびに mount コマンドを使用します。 

/etc/vfstab ファイルを編集する方法

1 度だけですみます。/etc/vfstab ファイルの内容は、システムをリブートしたあとも変更されずに残ります。

autofs を使用する方法 

1 度だけですみます。autofs のマップは、システムをリブートしたあとも変更されずに残ります。  

いずれかの方法を選択してファイルシステムをマウントしてください。

共有可能なファイルシステムしかマウントできません。ファイルシステムの共有については、share(1M) のマニュアルページを参照してください。


注 –

CacheFS ファイルシステムでは、ルート (/) と /usr のファイルシステムをキャッシュに書き込むことはできません。


ProcedureCacheFS ファイルシステムのマウント方法 (mount)

  1. クライアントシステムでスーパーユーザーになります。

  2. 必要に応じて、マウントポイントを作成します。


    # mkdir /mount-point
    

    マウントポイントはどこからでも作成できますが、UFS ファイルシステムでなければなりません。次の手順のように、mount コマンドで CacheFS オプションを使用すると、作成するマウントポイントが指定したキャッシュディレクトリ内のキャッシュに書き込まれるように指定できます。

  3. ファイルシステムをキャッシュにマウントします。


    # mount -F cachefs -o backfstype=fstype,cachedir=/cache-directory[,options]
    /back-filesystem /mount-point
    
    fstype

    バックファイルシステムのファイルシステムタイプ (NFS または HSFS)。

    /cache-directory

    キャッシュがある UFS ディレクトリの名前。「キャッシュを作成する方法」でキャッシュを作成するときに指定した名前と同じです。

    options

    ファイルシステムをキャッシュにマウントするときに追加できるほかのマウントオプション。CacheFS の mount オプションの詳細は、mount_cachefs(1M) のマニュアルページを参照してください。

    /back-filesystem

    キャッシュにマウントするバックファイルシステムのマウントポイント。バックファイルシステムが NFS ファイルシステムである場合は、ファイルシステムのマウント元となるサーバーのホスト名と、キャッシュにマウントするファイルシステム名 (コロンで区切る) を指定する必要があります。たとえば、merlin: /data/abc

    /mount-point

    ファイルシステムのマウント先となるディレクトリ。

  4. 作成したキャッシュが実際にマウントされたかどうかを確認します。


    # cachefsstat /mount-point
    

    /mount-point は作成した CacheFS ファイルシステムです。

    次に例を示します。


    # cachefsstat /docs
    /docs
    	         cache hit rate:   100% (0 hits, 0 misses)
    	     consistency checks:      1 (1 pass, 0 fail)
    	               modifies:      0
    	     garbage collection:      0

    ファイルシステムがキャッシュにマウントされなかった場合は、次のようなエラーメッセージが表示されます。


    # cachefsstat /mount-point
    cachefsstat: mount-point: not a cachefs mountpoint

    cachefsstat コマンドの詳細は、「CacheFS の統計情報の収集」を参照してください。


例 19–2 CacheFS ファイルシステムをマウントする (mount)

次の例は、NFS ファイルシステム merlin:/docs/docs という CacheFS ファイルシステムとして、/local/mycache というキャッシュにマウントする方法を示しています。


# mkdir /docs
# mount -F cachefs -o backfstype=nfs,cachedir=/local/mycache merlin:/docs /docs

次の例は、Solaris 10 DVDを /cfssrc という CacheFS ファイルシステムとして使用できるようにする方法を示しています。DVD には書き込めないので、引数 ro を指定して CacheFS ファイルシステムを読み取り専用にします。この例では、リムーバブルメディアサービスを実行していないものとします。


# mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /sol10
# mount -F cachefs -o backfstype=hsfs,cachedir=/cfs/cache,ro,noconst,
backpath=/sol10 /dev/dsk/c0t6d0s0 /cfssrc
# ls /cfssrc
Copyright  Solaris_10

次の例は、vold を実行しながら、Solaris 10 DVD を CacheFS ファイルシステムとしてマウントする方法を示しています。


# mount -F cachefs -o backfstype=hsfs,cachedir=/cfs/cache,ro,noconst,
backpath=/cdrom/sol_10_sparc/s0 /vol/dev/dsk/c0t2d0/sol_10_sparc/s0 /cfssrc

次の例は、vold を実行しながら、DVD を CacheFS ファイルシステムとしてマウントする方法を示しています。


# mount -F cachefs -o backfstype=hsfs,cachedir=/cfs/cache,ro,noconst,
backpath=/cdrom/epson /vol/dev/dsk/c0t2d0/epson /drvrs

次の例では、demandconst オプションを使用して、NFS CacheFS ファイルシステム /docs の整合性検査を指定します。/docs のバックファイルシステムは merlin:/docs です。詳細は、「CacheFS ファイルシステムの整合性検査」を参照してください。


# mount -F cachefs -o backfstype=nfs,cachedir=/local/mycache,demandconst merlin:/docs /docs

ProcedureCacheFS ファイルシステムのマウント方法 (/etc/vfstab)

  1. クライアントシステムでスーパーユーザーになります。

  2. エディタを使用して、マウントするファイルシステムを /etc/vfstab ファイル内で指定します。

    下の例を参照してください。

    /etc/vfstab ファイルの詳細は、/etc/vfstab ファイルのフィールドの説明」を参照してください。

  3. CacheFS ファイルシステムをマウントします。


    # mount /mount-point
    

    あるいはシステムをリブートします。


例 19–3 CacheFS ファイルシステムをマウントする (/etc/vfstab)

次の例は、キャッシュされたディレクトリ /opt/cache にマウントされるリモートシステム starbug からの /data/abc ディレクトリ用の /etc/vfstab エントリを示しています。


 
#device           device             mount      FS     fsck  mount   mount
#to mount         to fsck            point      type   pass  at boot options
#
starbug:/data/abc /local/abc         /opt/cache cachefs 7    yes     local-access,bg,
nosuid,demandconst,backfstype=nfs,cachedir=/opt/cache

ProcedureCacheFS ファイルシステムのマウント方法 (autofs)

自動マウントマップ内で -fstype=cachefs マウントオプションを指定して、autofs によってファイルシステムをキャッシュにマウントします。CacheFS のマウントオプション (backfstypecachedir など) も、自動マウントマップ内で指定します。

自動マウントマップの詳細は、『Solaris のシステム管理 (ネットワークサービス)』「autofs 管理作業の概要」または automount(1M) のマニュアルページを参照してください。

  1. クライアントシステムでスーパーユーザーになります。

  2. エディタを使用して、次の 1 行を auto_direct マップに追加します。


    /mount-point -fstype=cachefs,cachedir=/directory,backfstype=nfs 
    server:/file-system
    
  3. エディタを使用して、次の 1 行を auto_master マップに追加します。


    /-

    /- エントリによって、auto_direct マップを検査するように指示します。

  4. システムを再起動します。

  5. エントリが正しく作成されたか確認するには、次のようにキャッシュにマウントしたファイルシステムにカレントディレクトリを変更して内容を表示します。


    # cd /filesystem
    # ls
    

例 19–4 CacheFS ファイルシステムをマウントする (autofs)

次の auto_direct エントリは、CacheFS ファイルシステムを /docs ディレクトリに自動的にマウントします。


/docs -fstype=cachefs,cachedir=/local/mycache,backfstype=nfs merlin:/docs