ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Sun QFS File System 5.3 構成および管理ガイド Sun QFS and Sun Storage Archive Manager 5.3 Information Library (日本語) |
WORM (Write-Once Read-Many) テクノロジは、データの完全性の理由から、およびこのテクノロジを使用している格納済みファイルの法的有効性が認められているため、多くのアプリケーションで使用されています。
注 - SUNWsamfswm パッケージは、SUNWqfs および SUNWsamfs パッケージにマージされています。WORM-FS 機能を有効にするために SUNWsamfswm パッケージを個別にインストールする必要はありません。
WORM-FS 機能を有効にするには、次の一覧からマウントオプションを指定します:
worm_capable
worm_lite
worm_emul
emul_lite
マウントオプションの詳細は、「WORM-FS 機能の有効化」を参照してください。
WORM-FS 機能では、デフォルトおよびカスタマイズされたファイル保存期間、データおよびパスの不変性、WORM 設定のサブディレクトリへの継承が提供されます。
WORM-FS は、2 つのモードのいずれかで動作します。
Sun 標準準拠モード (標準モードと呼ばれます)。これがデフォルトです。
Sun エミュレーション準拠モード (エミュレーションモードと呼ばれます)。これは、StorageTek 5320 NAS (Network Attached Storage) アプライアンスのエミュレーションモードとの互換性を提供するように設計されており、Network Appliance によって定義されたインタフェースに似ています。
標準モードとエミュレーションモードの違いの 1 つは、保存できるファイルの性質に関する制約です。具体的に言うと、標準モードでは、UNIX 実行可能アクセス権を持つファイルを保存できません。エミュレーションモードには、このような制限はありません。標準モードでの制限は、ファイルに setuid モードを設定することを規定している、NFS および FTP のために定義された保持トリガーのために存在します。ファイルが保持されると、クライアントには setuid モードビットが設定されて表示されます。ただし、実行可能ファイルに対する制限によって、考えられるセキュリティーホール (root ユーザーが所有する実行可能ファイルを WORM にすることにより、削除できないようにすることができる) が防止されます。このアプローチの利点は、システム上のどのファイルが WORM で保護されたファイルであるかを、ユーザーまたはアプリケーションがより容易に判定できることにあります。
NFS クライアントが接続された Oracle Solaris 10 以降で WORM-FS を使用している場合は、NFS クライアントおよびサーバーで NFS バージョン 4 が有効になっていることを確認してください。
Oracle Solaris OS の旧バージョン (Oracle Solaris 10 より前) や NFS バージョン 3 を実行している場合は、NFS クライアントに WORM-FS ファイルが表示されない可能性があります。/etc/system ファイルに次の行を追加してから、システムをリブートしてください:
set nfs:nfs_allow_preepoch_time = 1
次の表は、WORM-FS 機能を有効にするために使用できる 4 つのマウントオプションを示しています。
|
これら 4 つのマウントオプションには、多少の排他性があります。「lite」から標準 WORM モードへのアップグレードは可能ですが、標準 WORM モードからエミュレーションモードに、またはエミュレーションモードから標準モードに変更することはできません。これらのオプションは、ファイルシステムをマウントするときにコマンド行で指定するか、/etc/vfstab 内に示すか、または/opt/SUNWsamfs/samfs.cmd 内で指定できます。マウントオプションの優先順位に関する通常の規則が適用されます。
WORM 属性はマウントテーブルに格納され、ファイルシステム内のどのディレクトリにも WORM ファイルを作成できます。
注 - /etc/vfstab 内で WORM マウントオプションを設定するには、システム管理者権限を持たなければなりません。
次の例は、WORM-FS のマウントオプションを示しています。/samfs1 にマウントされたファイルシステム samfs1 は WORM に対応しており、ファイルのデフォルトの保持期間が 60 分に設定されています。
例 9-1 WORM-FS のマウントオプションの使用
# cat /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options # fd - /dev/fd fd - no - /proc - /proc proc - no - /dev/dsk/c0t0d0s1 - - swap - no - samfs1 - /samfs1 samfs - yes worm_capable,def_retention=60 swap - /tmp tmpfs - yes -
WORM-FS 機能が有効になったあと、ファイルシステム内に少なくとも 1 つの WORM ファイルが存在する場合は、ファイルシステムのスーパーブロックが WORM 機能を反映するように更新されます。それ以降に sammkfs でファイルシステムを再構築しようとしても、worm_lite または emul_lite マウントオプションを使用していないかぎり失敗します。
worm_lite および emul_lite マウントオプションを指定すると、WORM に対応したボリュームや保持されているファイルに対して実行できる操作に関する制限を緩和する、変更された WORM 環境が作成されます。WORM lite オプションは、データ保存の保証は必要だが WORM ほど厳しい制約をシステムが受ける必要がない、マニュアル管理および保存ポリシーを持つ会社にとってのソリューションとなります。一部のデータ保存設定を変更し、場合によっては無効にするメカニズムが存在します。
より厳しい標準 WORM ポリシーにアップグレードする前に、WORM lite オプションを使用して、WORM システムおよびアプリケーションのテストと構成を行うこともできます。
WORM lite 環境の動作は、標準 WORM モードによく似ています。ファイルのデータとパスは変わりませんが、システム管理者は次の特別な操作を実行できます。
WORM ファイルを保存時間が期限切れになる前に削除する
WORM ファイルの保持期間を短縮する
WORM lite 対応ボリュームを削除するか、sammkfs コマンドを使用して再構築する
WORM マウントオプションを使用すると、ファイルシステムに WORM ファイルを格納できるようになりますが、WORM ファイルが自動的に作成されるわけではありません。WORM ファイルを作成するには、最初にディレクトリを WORM 対応にする必要があります。ディレクトリを作成したあと、WORM トリガーコマンドを使用して、ディレクトリに WORM ビットを設定します。使用するマウントオプションに応じて、次の WORM トリガーコマンドを使用できます。
worm_capable または worm_lite マウントオプションを使用している場合は、chmod 4000 directory-name を使用して WORM ビットを設定します。
worm_emul または emul_lite マウントオプションを使用している場合は、ディレクトリに対する書き込み権を削除して WORM ビットを設定します。
ディレクトリに WORM ビットを設定したあと、そのディレクトリ内にファイルを作成し、適切な WORM トリガーを使用して、保存するファイルに WORM ビットを設定できます。WORM トリガーは、ファイルとディレクトリのどちらでも同じものです。
WORM トリガーの適用には注意が必要です。ファイルに WORM 機能が適用されると、ファイルデータとパスを変更できなくなります。この機能をファイルに適用すると、元に戻せません。さらに、ファイルに WORM トリガーを適用すると、そのボリュームも WORM ボリュームになり、変更できなくなります。そのボリュームに対しては、ボリューム管理または RAID インタフェースを使用して廃棄することしかできません。その作成に WORM lite オプションのいずれかが使用された場合は、sammkfs を使用してそのボリュームを再構築することもできます。
次に、システム規模のデフォルトの保持値を使用して、4 つのマウントオプションのそれぞれに WORM トリガーを使用した例を示します。
例 9-2 chmod 4000 標準 WORM 機能を使用した WORM トリガー
この例は、標準 WORM 機能を使用した WORM トリガー chmod 4000 の単純な適用を示しています。
[host1]# grep -i worm /etc/vfstab samfs1 - /samfs1 samfs - no bg,worm_capable [host1]# cd /samfs1 [host1]# mkdir WORM [host1]# chmod 4000 WORM [host1]# sls -D WORM: mode: drwxr-xr-x links: 2 owner: root group: root length: 4096 admin id: 0 inode: 1025.1 access: Jan 30 15:50 modification: Jan 30 15:50 changed: Jan 30 15:50 attributes: Jan 1 1970 creation: Jan 30 15:50 residence: Jan 30 15:50 worm-capable retention-period: 0y, 30d, 0h, 0m [host1]# cd WORM [host1]# touch test [host1]# chmod 4000 test [host1]# sls -D test: mode: -r-Sr--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1026.3 access: Jan 30 15:51 modification: Jan 30 15:51 changed: Jan 30 15:51 retention-end: Mar 1 15:51 2007 creation: Jan 30 15:51 residence: Jan 30 15:51 retention: active retention-period: 0y, 30d, 0h, 0m [host1]# rm test rm: test: override protection 444 (yes/no)? yes rm: test not removed: Read-only file system [host1]# ls test
例 9-3 chmod 4000 WORM Lite 機能を使用した WORM トリガー
この例は、標準 WORM lite 機能を使用した WORM トリガー chmod 4000 の単純な適用を示しています。
[root@ns-east-44]# grep -i worm /etc/vfstab samfs1 - /samfs1 samfs - no bg,worm_lite [host1]# mount samfs1 [host1]# cd /samfs1 [host1]# mkdir WORM [host1]# chmod 4000 WORM [host1]# sls -D WORM: mode: drwxr-xr-x links: 2 owner: root group: root length: 4096 admin id: 0 inode: 1025.1 access: Jan 30 16:12 modification: Jan 30 16:12 changed: Jan 30 16:12 attributes: Jan 1 1970 creation: Jan 30 16:12 residence: Jan 30 16:12 worm-capable retention-period: 0y, 30d, 0h, 0m [host1]# cd WORM [host1]# touch test [host1]# chmod 4000 test [host1]# sls -D test: mode: -r-Sr--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1026.1 access: Jan 30 16:13 modification: Jan 30 16:13 changed: Jan 30 16:13 retention-end: Mar 1 16:13 2007 creation: Jan 30 16:13 residence: Jan 30 16:13 retention: active retention-period: 0y, 30d, 0h, 0m [host1]# rm test rm: test: override protection 444 (yes/no)? yes [host1]# ls [host1]#
例 9-4 chmod -w WORM エミュレーションモードを使用した WORM トリガー
この例は、WORM エミュレーションモードを使用した WORM トリガーの単純な適用を示しています。
[root@ns-east-44]# grep -i worm /etc/vfstab samfs1 - /samfs1 samfs - no bg,worm_emul [host1]# mount samfs1 host1]# cd /samfs1 [host1]# mkdir WORM [host1]# chmod -w WORM [host1]# sls -D WORM: mode: drwxr-xr-x links: 2 owner: root group: root length: 4096 admin id: 0 inode: 1025.1 access: Jan 30 16:26 modification: Jan 30 16:26 changed: Jan 30 16:26 attributes: Jan 1 1970 creation: Jan 30 16:26 residence: Jan 30 16:26 worm-capable retention-period: 0y, 30d, 0h, 0m [host1]# cd WORM [host1]# touch test [host1]# chmod -w test [host1]# sls -D test: mode: -r--r--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1026.1 access: Jan 30 16:26 modification: Jan 30 16:26 changed: Jan 30 16:26 retention-end: Mar 1 16:26 2007 creation: Jan 30 16:26 residence: Jan 30 16:26 retention: active retention-period: 0y, 30d, 0h, 0m [host1]# rm test rm: test: override protection 444 (yes/no)? yes rm: test not removed: Read-only file system [host1]# ls test
例 9-5 chmod -w WORM エミュレーション Lite モードを使用した WORM トリガー
この例は、WORM エミュレーション lite モードを使用した WORM トリガーの単純な適用を示しています。
[root@ns-east-44]# grep -i worm /etc/vfstab samfs1 - /samfs1 samfs - no bg,emul_lite [host1]# mount samfs1 [host1]# cd /samfs1 [host1]# mkdir WORM [host1]# chmod -w WORM [host1]# sls -D WORM: mode: drwxr-xr-x links: 2 owner: root group: root length: 4096 admin id: 0 inode: 1025.1 access: Jan 30 16:36 modification: Jan 30 16:36 changed: Jan 30 16:36 attributes: Jan 1 1970 creation: Jan 30 16:36 residence: Jan 30 16:36 worm-capable retention-period: 0y, 30d, 0h, 0m [host1]# cd WORM [host1]# touch test [host1]# chmod -w test [host1]# sls -D test: mode: -r--r--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1026.1 access: Jan 30 16:36 modification: Jan 30 16:36 changed: Jan 30 16:36 retention-end: Mar 1 16:36 2007 creation: Jan 30 16:36 residence: Jan 30 16:36 retention: active retention-period: 0y, 30d, 0h, 0m [host1]# rm test rm: test: override protection 444 (yes/no)? yes [host1]# ls [host1]#
WORM-FS 機能には、カスタマイズ可能なファイル保存期間も用意されています。ファイルに保存期間を割り当てると、指定した期間の間、そのファイルで WORM 機能が維持されます。
注 - Oracle Solaris または UNIX ユーティリティーを使用して保持期間を最初に割り当てるか、または延長している場合は、2038 年 1 月 18 日を超えて保持期間を延長できません。これらのユーティリティーは、符号付き 32 ビット数値を使用して秒単位の時間を表します。時間は、1970 年 1 月 1 日の時点から計測されます。この時点からの 2**31 秒は、2038 年 1 月 18 日の午後 10 時 14 分ころまでとなります。ただし、デフォルトの保存期間を使用して、この日付を超えることができます。「デフォルト保存期間の設定」を参照してください。
ファイルに保存期間を設定するには、次のいずれかを行います。
touch ユーティリティーを使用して、または libc のサブルーチン utimes() を使用したプログラムで、ファイルのアクセス時間を進めます。ファイルの保持期間は、分単位で格納されます。アクセス時刻を進めてから、適切な WORM トリガーを使用して WORM ビットを設定してください。
適切な WORM トリガーを適用することによって、ファイルのデフォルトの保持期間を使用します。ファイルシステムでは、デフォルトの保持期間が適用されます。詳細は、「デフォルト保存期間の設定」を参照してください。
次に、WORM に対応したディレクトリ内にファイルを作成し、そのファイルに (chmod 4000 コマンドで) WORM トリガーを使用したあと、sls コマンドを使用してファイルの WORM 機能を表示する例を示します。この例では、ファイルシステムのデフォルトの保持期間 (例 9-1で設定された 60 分) を使用しています。
例 9-6 WORM 対応ディレクトリと WORM ファイルの作成
# cd WORM # echo "This is a test file" >> test # sls -D test: mode: -rw-r--r-- links: 1 owner: root group: other length: 20 admin id: 0 inode: 1027.1 access: Oct 30 02:50 modification: Oct 30 02:50 changed: Oct 30 02:50 attributes: Oct 30 02:50 creation: Oct 30 02:50 residence: Oct 30 02:50 checksum: gen no_use not_val algo: 0 # chmod 4000 test # sls -D test: mode: -r--r--r-- links: 1 owner: root group: other length: 20 admin id: 0 inode: 1027.1 access: Oct 30 02:50 modification: Oct 30 02:50 changed: Oct 30 02:50 retention-end: Oct 30 2005 03:50 creation: Oct 30 02:50 residence: Oct 30 02:50 retention: active retention-period: 0y, 0d, 1h, 0m checksum: gen no_use not_val algo: 0
WORM-FS 機能の追加により、Sun QFS ファイルシステム内のファイルは次の 3 つの状態のいずれかになります:
通常
保持
期限切れ
通常状態は、Sun QFS ファイルシステム内の通常ファイルの状態を表します。ファイルに WORM ビットが設定されると、保持 (つまり、アクティブ) 状態への移行が発生します。ファイルの保存期間を超過すると、期限切れ (over) 状態になります。
ファイルに保持期間が割り当てられ、そのファイルに WORM トリガーが適用されると、ファイルのパスとデータが変更禁止になります。保持期間が期限切れになると、状態は「期限切れ」に変更されますが、パスとデータは変更禁止のままです。
ファイルが期限切れ状態のときは、次の 2 つの操作のみが可能です。
保持期間の延長。(保持期間は、WORM lite オプションを使用していないかぎり短縮できません。)
ファイルの削除。
保持期間が延長された場合は、ファイルの状態がアクティブに戻され、それに応じて新しい終了日と期間が設定されます。
WORM-FS 機能と組み合わせて、ファイルへのハードリンクとソフトリンクの両方を使用できます。ハードリンクは、WORM 機能を持つディレクトリ内にあるファイルに対してのみ作成できます。作成されたハードリンクは、元のファイルと同じ WORM 特性を持ちます。ソフトリンクも作成できますが、ソフトリンクでは WORM 機能を使用できません。WORM ファイルへのソフトリンクは、Sun QFS ファイルシステム内の任意のディレクトリ内に作成できます。
WORM-FS 機能のもう 1 つの特性はディレクトリ継承です。WORM 属性を含んでいるディレクトリの下に作成された新しいディレクトリは、この属性を親から継承します。ディレクトリにデフォルトの保存期間が設定されている場合、その保存期間は新しいサブディレクトリにも継承されます。WORM ビットは、親ディレクトリが WORM 機能を持つすべてのファイルに設定できます。ユーザーは、自分が所有しているか、または通常の UNIX アクセス権を使用してアクセスできるディレクトリとファイルに対して WORM 機能を設定できます。
注 - WORM 機能を持つディレクトリは、そこに WORM ファイルが含まれていない場合にかぎり、削除することができます。
ファイルシステムのデフォルトの保持期間は、/etc/vfstab ファイル内のマウントオプションとして設定できます。次に例を示します。
samfs1 - /samfs1 samfs - nobg,worm_emul,def_retention=1y60d
デフォルトの保持期間を設定するための形式は、MyNdOhPm です。ここで、M、N、O、および P は負でない整数であり、y、d、h、および m は、それぞれ年、日、時、分を表します。これらの単位を任意に組み合わせることができます。たとえば、1y5d4h3m は 1 年、5 日、4 時間、3 分を、30d8h は 30 日と 8 時間を、300m は 300 分をそれぞれ示します。この形式は、保存時間を分単位で指定していた 4U5 より前のソフトウェアバージョンと下位互換性があります。期間の粒度は分単位ですが、期間の精度は 1 日に基づいています。また、日、時、および分を処理する機能では、保持期間を決定するときにうるう年が考慮に入れられません。
デフォルトの保持期間を使用すると、2038 年を超えるファイルまたはディレクトリの保持期間を設定することもできます。デフォルトの保持期間を 2038 を超える値に設定し、ファイルシステムをマウントします。そのあと、適切な WORM トリガーを使用してデフォルトの保存期間を適用します。次の例は、デフォルトの保持期間を使用して、ディレクトリとファイルに 2038 年を超える保持期間を設定する方法を示しています。
例 9-7 2038 年のあとまでの保存期間の延長
[root@ns-east-44]# grep samfs1 /etc/vfstab samfs1 - /samfs1 samfs - no bg,worm_capable,def_retention=34y [root@ns-east-44]# mount samfs1 [root@ns-east-44]# cd /samfs1 [root@ns-east-44]# mkdir WORM [root@ns-east-44]# chmod 4000 WORM [root@ns-east-44]# sls -D WORM: mode: drwxr-xr-x links: 2 owner: root group: root length: 4096 admin id: 0 inode: 1026.1 access: Feb 20 14:24 modification: Feb 20 14:24 changed: Feb 20 14:24 attributes: Jul 26 1970 creation: Feb 20 14:24 residence: Feb 20 14:24 worm-capable retention-period: 34y, 0d, 0h, 0m [root@ns-east-44]# cd WORM [root@ns-east-44]# touch test [root@ns-east-44]# chmod 4000 test [root@ns-east-44]# sls -D test: mode: -r-Sr--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1027.1 access: Feb 20 14:24 modification: Feb 20 14:25 changed: Feb 20 14:25 retention-end: Feb 20 14:25 2041 creation: Feb 20 14:24 residence: Feb 20 14:24 retention: active retention-period: 34y, 0d, 0h, 0m
ディレクトリのデフォルトの保持期間は、次のセクションで説明されているように touch ユーティリティーを使用して設定することもできます。この保存期間はファイルシステムのデフォルト保存期間を上書きし、サブディレクトリがあれば、それにも継承されます。
touch ユーティリティーを使用して、ファイルまたはディレクトリの保持期間を設定または延長することができます。また、touch を使用すると、ディレクトリのデフォルトの保持期間を短縮することもできます (ただし、ファイルの保持期間は短縮できません)。
保持期間を設定するには、まず touch を使用してファイルまたはディレクトリのアクセス時間を進めたあと、その時点で設定されている WORM モードに応じて、chmod コマンドを使用するか、または書き込み権を削除することによって WORM トリガーを適用する必要があります。
次に、touch ユーティリティーを使用してファイルの保持期間を設定したあと、WORM トリガーを適用する例を示します。
例 9-8 touch と chmod を使用した保持期間の設定
# touch -a -t200508181125 test # sls -D test: mode: -rw-r--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1027.1 access: Aug 18 2005 modification: Aug 18 11:19 changed: Aug 18 11:19 attributes: Aug 18 11:19 creation: Aug 18 11:19 residence: Aug 18 11:19 # chmod 4000 test # sls -D test: mode: -r-Sr--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1027.1 access: Aug 18 2005 modification: Aug 18 11:19 changed: Aug 18 11:19 retention-end: Aug 18 2005 11:25 creation: Aug 18 11:19 residence: Aug 18 11:19 retention: active retention-period: 0y, 0d, 0h, 6m
touch の -a オプションは、ファイルまたはディレクトリのアクセス時間を変更します。-t オプションは、アクセス時間フィールドに使用される時間を指定します。時刻引数の形式は [[CC]YY]MMDDhhmm[.SS] で、次のようになります。
[CC] – 年の最初の 2 桁。
[YY] – 年の 2 番目の 2 桁。
MM – 月 (01—12)。
DD – 日 (01—31)。
hh – 時 (00—23)。
mm – 分 (00—59)。
[SS] – 秒 (00—61)。
CC、YY、および SS フィールドは省略可能です。CC および YY を指定しなかった場合、デフォルトは現在の年になります。これらのオプションの詳細は、touch(1) のマニュアルページを参照してください。
保存期間として永続保存を設定するには、アクセス時刻を設定可能な最大値である 203801182214.07 に設定します。
次の例は、touch を使用してファイルの保持期間を延長する方法を示しています。
例 9-9 touch を使用したファイルの保持期間の延長
# sls -D test test: mode: -r-Sr--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1029.1 access: Aug 18 11:35 modification: Aug 18 11:33 changed: Aug 18 11:33 retention-end: Aug 18 2005 11:35 creation: Aug 18 11:33 residence: Aug 18 11:33 retention: over retention-period: 0y, 0d, 0h, 2m # touch -a -t200508181159 test # sls -D test: mode: -r-Sr--r-- links: 1 owner: root group: root length: 0 admin id: 0 inode: 1029.1 access: Aug 18 11:35 modification: Aug 18 11:33 changed: Aug 18 11:33 retention-end: Aug 18 2005 11:59 creation: Aug 18 11:33 residence: Aug 18 11:33 retention: active retention-period: 0y, 0d, 0h, 26m
この例では、保持期間が 2005 年 8 月 18 日 AM 11:59 に延長されています。これは、WORM トリガーが最初に適用されてから 26 分後です。
注 - touch を使用した保存期間の延長は、アクティブな WORM モードとは関係ありません。
WORM ファイル属性を表示するには、sls コマンドを使用します。-D オプションでは、ディレクトリに WORM 機能があるかどうかが表示されます。このオプションをファイルに対して使用すると、コマンド行で指定された保存期間の開始、保存期間の終了、現在の保存状態、および期間が表示されます。
保持期間の開始時間と期間 (分単位) は、ファイルの i ノードに格納されます。
これらの情報に直接アクセスするには、次の例に示すようなプログラムを使用する必要があります。
例 9-10 保持期間の開始時間と期間に直接アクセスするためのプログラム
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> /* * SAMFS includes in /opt/SUNWsamfs/include */ #include "stat.h" #include "lib.h" /* * SAMFS libraries in /opt/SUNWsamfs/lib */ int main(int argc, char **argv) { char ibuf[1000]; struct sam_stat buf; if (argc != 2) { printf("usage: sam_worm_stat filename\n"); exit(-1); } if (sam_stat(argv[1], &buf, sizeof(buf)) == 0) { (void)time_string(buf.rperiod_start_time, buf.rperiod_start_time, ibuf); printf("retention period start is %s\n", ibuf); printf("retent period duration is %ld minutes\n", buf.rperiod_duration); } else { printf("can not sam_worm_stat %s\n", argv[1]); } }
次の例は、sls -D でファイルの保持ステータスがどのように表示されるかを示しています。
例 9-11 sls を使用したファイルの保持ステータスの検索
# sls -D test test: mode: -r-Sr--r-- links: 1 owner: root group: root length: 5 admin id: 0 inode: 1027.1 access: Aug 18 2008 modification: Aug 18 11:19 changed: Aug 18 11:19 retention-end: Aug 18 2008 11:25 creation: Aug 18 11:19 residence: Aug 18 11:19 retention: active retention-period: 0y, 0d, 0h, 6m
この例で、retention: active と示されているとおり保存状態は active で、ファイルには WORM ビットが設定されています。保持期間は 2008 年 8 月 18 日 11:19 に開始されており、2008 年 8 月 18 日 11:25 に終了します。保持期間は、0 年、0 日、0 時間、6 分として指定されました。
sfind ユーティリティーを使用すると、特定の保持期間を持つファイルを検索できます。これらのオプションの詳細は、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「sfind(1)」を参照してください。次の選択肢があります。
-ractive — 保持期間がアクティブであるファイルを検索します。
-rover — 保持期間が期限切れになったファイルを検索します。
-rafter date — 指定された日付のあとに保持期間が終了するファイルを検索します。日付は YYYYMMDDHHmm として指定されます。ここで、YYYY は年、MM は月、DD は日、HH は時、mm は分です。次の例は、2004 年 12 月 24 日 15:00 のあとに保持期間が期限切れになるファイルを検索するためのコマンドを示しています。
# sfind -rafter 200412241500
-rremain time — 保持期間が、少なくとも指定された時間残っているファイルを検索します。時間は MyNdOhPm として指定されます。ここで、M、N、O、および P は任意の負でない整数であり、y、d、h、および m は、それぞれ年、日、時、分の数を表します。たとえば、次のコマンドは、期限切れになるまでに少なくとも 1 年、10 日、5 時間、10 分残っているファイルを検索します。
# sfind -rremain 1y10d5h10m
-rlonger time — 保持期間が、指定された時間より長いファイルを検索します。時間は MyNdOhPm として指定されます。ここで、M、N、O、および P は任意の負でない整数であり、y、d、h、および m は、それぞれ年、日、時、分の数を表します。たとえば、次のコマンドは、保持期間が 10 日より長いファイルを検索します。
# sfind -rlonger 10d
-rpermanent — 保持期間が永続的であるファイルを検索します。