ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
Sun QFS File System 5.3 構成および管理ガイド Sun QFS and Sun Storage Archive Manager 5.3 Information Library (日本語) |
11. SANergy での QFS ファイルシステムの使用 (SAN-QFS)
force_nfs_async および noforce_nfs_async コマンド
dio_rd_form_min および dio_wr_form_min コマンド
dio_rd_ill_min および dio_wr_ill_min コマンド
dio_rd_consec および dio_wr_consec コマンド
dio_szero および nodio_szero コマンド
forcedirectio および noforcedirectio コマンド
ファイルシステムコマンド: Sun QFS 共有ファイルシステム
minallocsz および maxallocsz コマンド
rdlease、wrlease、および aplease コマンド
以降の項目では、samu オペレータユーティリティーのコマンドインタフェースから発行できるオペレータコマンドについて説明します。これらのコマンドは、任意の表示から発行できます。
次のセクションでは、オペレータコマンドのタイプについて説明します:
デバイスコマンド
ファイルシステムコマンド: 入出力管理
ファイルシステムコマンド: 直接入出力管理
ファイルシステムコマンド: Sun QFS 共有ファイルシステム
ファイルシステムコマンド: その他
その他のコマンド
いずれかのオペレータコマンドを Oracle Solaris OS コマンド行から発行する場合は、それらのコマンドを samcmd コマンドへの引数として使用する必要があります。samcmd コマンドの詳細は、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「samcmd(1M)」を参照してください。
次の表は、デバイスコマンドとその動作を示しています。
表 13-7 デバイスコマンドの動作
|
これらのコマンドはすべて、次の構文を使用します:
:command eq
eq には、デバイスの装置番号を指定します。
このセクションで説明されているコマンドを使用すると、入出力特性を動的に管理できます。
flush_behind コマンドは、flush_behind の最大値を設定します。0 を超える値に設定されると、Oracle Solaris カーネルレイヤーがページをクリーンな状態に保持するのに役立つように、逐次書き込みされている変更されたページがディスクに非同期に書き込まれます。デフォルトの最大値は 0 です。これにより、flush_behind は無効になります。
:flush_behind eq value
value には、0≤ value ≤ 8192 のキロバイト数の整数を指定します。
eq には、ファイルシステムの装置番号を指定します。
これらのコマンドを使用すると、NFS がデータをディスクに同期的に直接書き込むようにリクエストした場合でも、サーバーに書き込まれた NFS データをファイルシステムがキャッシュするかどうかを制御できます。force_nfs_async コマンドは、NFS データをキャッシュします。
force_nfs_async コマンドは、ファイルシステムが NFS サーバーにマウントされ、クライアントが noac NFS マウントオプション付きでマウントされている場合にのみ有効です。NFS ファイルシステムのマウントの詳細は、mount_nfs(1M) のマニュアルページを参照してください。
![]() | 注意 - force_nfs_async オプションは、NFS プロトコルに違反します。このコマンドを使用する場合は、注意が必要です。サーバーが停止した場合、データが失われることがあります。データは NFS サーバーにキャッシュされ、複数の NFS サーバーがある場合、すぐにはすべてのクライアントで参照できません。Sun QFS 共有ファイルシステム内で、複数の NFS サーバーを有効にすることができます。Sun QFS 共有ファイルシステムの詳細については、第 5 章共有ファイルシステムの構成を参照してください。 |
noforce_nfs_async コマンドは、デフォルトで、データをディスクに同期書き込みします。
:force_nfs_async eq :noforce_nfs_async eq
eq には、ファイルシステムの装置番号を指定します。
readahead コマンドは、ファイルシステムが先読みできる最大バイト数を指定します。contig のデフォルトの数は 8 (131072 バイト) です。
:readahead eq contig
eq には、ファイルシステムの装置番号を指定します。
contig には、1K バイトブロックの単位数を指定します。この値は、1 < contig < 8192 の整数である必要があります。指定された contig は、8K バイトの倍数に切り捨てられます。
たとえば、次のコマンドは、装置番号 3 として定義されたファイルシステムの最大連続ブロックサイズを 262,144 バイトに設定します:
:readahead 3 256
この値はまた、readahead 指令を指定することによって samfs.cmd ファイルで構成することもできます。詳細は、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「samfs.cmd(4)」を参照してください。
これらのコマンドは、ファイルシステムが writebehind バッファーを整列させるかどうかを指定します。このファイルシステム上で Solaris ボリュームマネージャーなどのパッケージのソフトウェア RAID 機能も使用する場合は、sw_raid を指定します。デフォルト設定は nosw_raid です。
:sw_raid eq :nosw_raid eq
eq には、ファイルシステムの装置番号を指定します。
writebehind コマンドは、ファイルシステムが後書きできる最大バイト数を指定します。contig のデフォルトの数は 8 (131072 バイト) です。
:writebehind eq contig
eq には、ファイルシステムの装置番号を指定します。
contig には、1K バイトブロックの単位数を指定します。この値は、1 < contig < 8192 の整数である必要があります。
たとえば、次のコマンドは、装置番号 50 として定義されたファイルシステムの最大連続ブロックサイズを 262,144 バイトに設定します:
:writebehind 50 256
この値は、writebehind 指示を指定することによって、samfs.cmd ファイルで構成することもできます。詳細は、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「samfs.cmd(4)」を参照してください。
wr_throttle コマンドは、1 つのファイルに対する未処理の書き込みデータのキロバイト数を設定します。デフォルトは、メモリーサイズの 2% であるキロバイト数です。
パーセンテージを計算できない場合は、この値を 100M バイトに設定します。Oracle Solaris 上のメモリーサイズを判定するには:
npages = sysconf(_SC_PHYS_PAGES); pagesizeb = sysconf(_SC_PAGESIZE); fprintf(fp, "Memory size:\t\t%.1f MBytes (%.1f M2Bytes, %ld pages, %ld bytes/page)\n", ( / (float)npages * (float)pagesizeb) / 1000000.0, ((float)npages * (float)pagesizeb) / / 1048576.0, npages, pagesizeb);
メモリーサイズがわかったら、次の表に示すように、wr_throttle の値を合計サイズの 2% に設定します。
|
:wr_throttle eq value
eq には、ファイルシステムの装置番号を指定します。
value には、キロバイト単位の整数を指定します。value=0 の場合は、制限がありません。
このセクションで説明されているコマンドは、Sun QFS ファイルシステム上の入出力を制御します。入出力のサイズや履歴に基づいて、個々のファイルの入出力のタイプを変更できます。あるファイルに対して (たとえば、setfa コマンドで) 直接入出力が指定されている場合は、これらのオプションが無視され、通常ファイルへのすべての入出力が直接入出力になります (可能な場合)。
これらのコマンドは、境界割り当てされた入出力と境界割り当てされない入出力の両方を対象にしています。
境界割り当てされた入出力は、ファイルオフセットが 512 バイト境界に位置し、入出力転送の長さが少なくとも 512 バイトである場合に実行されます。
境界割り当てされない入出力は、ファイルオフセットが 512 バイト境界に位置せず、転送の長さが 512 バイト未満の場合に実行されます。
入出力および入出力管理の詳細は、第 7 章高度なファイルシステム機能を参照してください。
これらのコマンドは、指定された数の 1024 バイトブロックへの境界割り当てされた入出力の下限を設定します。読み取り操作の数を設定するには dio_rd_form_min コマンドを使用し、書き込み操作の数を設定するには dio_wr_form_min コマンドを使用します。デフォルトでは、最小ブロック数は 256 です。
:dio_rd_form_min eq value :dio_wr_form_min eq value
eq には、ファイルシステムの装置番号を指定します。
value には、下限に使用する 1024 バイトブロックの数を整数で指定します。value=0 の場合は、自動入出力切り替えが無効になります。
これらのコマンドは、指定された数の 1024 バイトブロックへの境界割り当てされない入出力の下限を設定します。読み取り操作の数を設定するには dio_rd_ill_min コマンドを使用し、書き込み操作の数を設定するには dio_wr_ill_min コマンドを使用します。デフォルトでは、最小ブロック数は 256 です。
:dio_rd_ill_min eq value :dio_wr_ill_min eq value
eq には、ファイルシステムの装置番号を指定します。
value には、下限に使用する 1024 バイトブロックの数を整数で指定します。value=0 の場合は、自動入出力切り替えが無効になります。
これらのコマンドは、バッファーサイズが指定された下限より大きいときに実行できる連続した入出力転送の数を設定します。デフォルトでは、value=0 です。これは、デフォルトの直接読み取り操作が入出力のサイズに基づいて実行されないことを示します。
:dio_rd_consec eq value :dio_wr_consec eq value
eq には、ファイルシステムの装置番号を指定します。
value には、指定した下限よりバッファーサイズが大きいときの連続入出力転送数を指定します。指定された下限は、境界割り当てされた読み取り操作の場合は dio_rd_form_min、境界割り当てされない読み取り操作の場合は dio_rd_ill_min の value です。
詳細は、次のセクションを参照してください:
これらのコマンドは、直接入出力のスパースのゼロ化マウントオプションを設定またはクリアします。
dio_szero コマンドは、直接入出力で書き込まれたスパースファイルの未初期化領域を、その領域がアクセスされたときにゼロ化するようにします。この動作により、スパースファイルの動作がページ入出力の動作と同じになります。デフォルトでは、パフォーマンス上の理由から、直接入出力で書き込まれたスパースファイルの未初期化領域はゼロ化されません。デフォルトは nodio_szero です。
:dio_szero eq :nodio_szero eq
eq には、ファイルシステムの装置番号を指定します。
これらのコマンドを使用すると、デフォルトの入出力モードとして直接入出力を使用するかどうかを制御できます。デフォルトのモードはバッファー入出力で、ページキャッシュを使用します。forcedirectio コマンドは、すべての転送で直接入出力を使用可能にします。noforcedirectio コマンドは、デフォルトのバッファー入出力を復元します。
直接入出力が指定されている場合、システムは、ユーザーのバッファーとディスクの間で直接データを転送します。直接入出力は、ブロックが境界割り当てされた大容量の逐次入出力だけに使用してください。
:forcedirectio eq :noforcedirectio eq
eq には、ファイルシステムの装置番号を指定します。
入出力の詳細は、第 7 章高度なファイルシステム機能を参照してください。
このセクションで説明されているファイルシステムコマンドは、Sun QFS 共有ファイルシステムでのみサポートされます。
meta_timeo コマンドは、Sun QFS 共有ファイルシステムのメタデータキャッシュの制限時間を設定します。デフォルト値は 3 です。この機能の使用の詳細は、「キャッシュされた属性の保持: (meta_timeo オプション)」を参照してください。
:meta_timeo eq interval
eq には、ファイルシステムの装置番号を指定します。
interval には、時間を秒単位で指定します。この間隔が経過すると、クライアントホストシステムは、メタデータサーバーホストからメタデータ情報の新しいコピーを取得します。
これらのコマンドは、マルチホスト読み取りおよび書き込み操作を有効または無効にします。この機能については、「複数のホストの読み取りと書き込みの有効化: (mh_write オプション)」を参照してください。
:mh_write eq :nomh_write eq
eq には、ファイルシステムの装置番号を指定します。
これらのコマンドは、最小と最大のブロック割り当てサイズを設定します。
:minallocsz eq value :maxallocsz eq value
eq には、ファイルシステムの装置番号を指定します。
value について、およびこの機能の詳細は、「割り当てサイズの調整: (minallocsz および maxallocsz オプション)」を参照してください。
これらのコマンドは、読み取り、書き込み、および追加リースに付与される時間を制御します。デフォルトの時間は 30 秒です。この機能については、「Sun QFS 共有ファイルシステムでのリースの使用: (rdlease、wrlease、および aplease オプション)」を参照してください。
:rdlease eq interval :wrlease eq interval :aplease eq interval
eq には、ファイルシステムの装置番号を指定します。
interval には、15 ≤ interval ≤ 600 の整数の秒数を指定します。
このセクションで説明されているコマンドを使用すると、リース、割り当てサイズ、およびその他のさまざまなファイルシステム特性を制御できます。
これらのコマンドは、ABR (Application Binary Recovery) マウントオプションを設定またはクリアします。
これらのコマンドは、Oracle RAC 環境内で、Sun QFS の非同期入出力 (AIO) でのみ使用します。このマウントオプションは、ソフトウェアミラーの ABR を使用可能または使用不可にします。これらは、ABR をサポートする Solaris ボリュームマネージャーのミラー化ボリューム上に構築された Sun QFS ファイルシステムにのみ適用されます。
:abr eq :noabr eq
eq には、ファイルシステムの装置番号を指定します。
これらのコマンドは、DMR (Direct Mirror Reads) マウントオプションを設定またはクリアします。
これらのコマンドは、Oracle Real Application Cluster (RAC) 環境内で、Sun QFS の AIO でのみ使用します。このマウントオプションは、ソフトウェアミラーの DMR を使用可能または使用不可にします。これらは、DMR をサポートする Solaris ボリュームマネージャーのミラー化ボリューム上に構築された Sun QFS ファイルシステムにのみ適用されます。
:dmr eq :nodmr eq
eq には、ファイルシステムの装置番号を指定します。
invalid コマンドは、ファイルが変更されたあと、キャッシュされた属性をファイルシステムが少なくとも指定された秒数間保持することを指定します。このコマンドは、reader マウントオプションを使用してファイルシステムをマウントした場合にのみ使用できます。マウントオプションについては、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「mount_samfs(1M)」を参照してください。
:invalid eq interval
eq には、ファイルシステムの装置番号を指定します。
interval には、ファイルが変更されたあと、属性を保持する秒数を指定します。たとえば、interval=30 とします。ls コマンドを発行すると、書き込み側ホスト上でファイルが作成されたあと 30 秒間は、新しく作成されたファイルが出力に表示されないことがあります。
mm_stripe コマンドは、ファイルシステムのメタデータストライプ幅を、指定された数の 16K バイトディスク割り当て単位 (DAU) に設定します。ファイルシステムが、ある LUN に 1 DAU のメタデータを書き込んでから別の LUN に切り替えるように、デフォルトは 1 DAU です。
:mm_stripe eq value
eq には、ファイルシステムの装置番号を指定します。
value には、0 または 1 のどちらかを指定します。この値がデフォルトの 1 に設定されている場合、ファイルシステムは、ある LUN に 1 DAU のメタデータを書き込んでから別の LUN に切り替えます。この値が 0 に設定されている場合は、使用可能なすべてのメタデータ LUN にわたって、メタデータにラウンドロビン式割り当てが行われます。
qwrite および noqwrite コマンドは、異なるスレッドから同じファイルへの同時の読み取りおよび書き込み操作を実行する機能を制御します。qwrite は、ファイルシステムユーザーが同じファイルに対して同時に複数のトランザクションを処理する場合にのみ指定します。この機能は、データベースアプリケーションで役立ちます。qwrite 機能は、複数のリクエストをドライブレベルでキューに入れることによって、入出力パフォーマンスを向上させます。qwrite 指定は、ファイルシステムの NFS 読み取りまたは書き込みには使用できません。
デフォルト設定は noqwrite であるため、ファイルシステムは、同じファイルへの同時の読み取りおよび書き込み操作を無効にします。このモードは UNIX vnode インタフェース標準で定義されており、1 つの書き込み側にのみ排他的アクセスが与えられ、その他の書き込み側と読み取り側は強制的に待機させられます。
:qwrite eq :noqwrite eq
eq には、ファイルシステムの装置番号を指定します。
refresh_at_eof および norefresh_at_eof コマンドは、複数読み取りファイルシステムで reader マウントオプションを使用してマウントされた Sun QFS ホストへの高速更新に使用できます。このオプションを使用すると、読み取りバッファーがファイルの末尾を超えたときに、システムが現在のファイルサイズを再表示します。このオプションは、たとえば、書き込み側ホストシステムがファイルに追加しており、読み取り側が -f オプションを指定して tail コマンドを発行している場合に使用できます。デフォルトは norefresh_at_eof です。
:refresh_at_eof eq :norefresh_at_eof eq
eq には、ファイルシステムの装置番号を指定します。
suid および nosuid コマンドは、実行中のプログラムが自身の所有者 ID を自動的に変更できるようにするかどうかを制御します。これらのマウントオプションを使用した場合の影響の詳細は、mount_ufs(1M) のマニュアルページにある suid と nosuid のマウントオプションの説明および suid(2) のマニュアルページを参照してください。
:suid eq :nosuid eq
eq には、ファイルシステムの装置番号を指定します。
stripe コマンドは、ファイルシステムのストライプ幅を、指定された数のディスク割り当て単位 (DAU) に設定します。ストライプの幅は、value × DAU バイトが 1 つの LUN に書き込まれてから、次の LUN に切り換わることを指定します。sammkfs -a コマンドを使用して、ファイルシステムの初期化時にそのファイルシステムで DAU サイズを設定できます。
:stripe eq value
eq には、ファイルシステムの装置番号を指定します。
value には、0 < value < 255 の整数を指定します。value=0 の場合は、各スライス上でファイルにラウンドロビン式割り当てが行われます。装置タイプが ms のファイルシステム上、および装置タイプが ma で、ストライプ化グループ (gXXX) コンポーネントを含まないファイルシステム上でのデフォルトの value は次のとおりです:
DAU < 128K バイトの場合は 128K バイト/DAU
DAU > 128K バイトの場合は 1
デフォルトでは、Sun QFS 共有ファイルシステム上では value=0 です。
デフォルトでは、装置タイプが ma で、いずれかのストライプ化グループ (gXXX) コンポーネントを含むファイルシステム上では value=0 です。
不一致のストライプ化グループが存在する場合は、システムによって value=0 が設定されます。
ファイルシステムタイプの詳細は、「Sun QFS ファイルシステムの設計の基本」および第 4 章ファイル システムの構成を参照してください。
sync_meta コマンドは、メタデータが変更されるたびに、そのメタデータをディスクに書き込むかどうかを決定します。このコマンドを Sun QFS 共有ファイルシステム上で使用している場合は、「メタデータが書き込まれる頻度の指定: (sync_meta オプション)」も参照してください。
:sync_meta eq value
eq には、ファイルシステムの装置番号を指定します。
value には、次のように、0 または 1 のどちらかを指定します:
value が 0 の場合、メタデータは、変更されたあともバッファー内に保持されます。より高いパフォーマンスが望ましい、共有されない Sun QFS ファイルシステムの場合は、value を 0 に設定できます。この場合、システムは、メタデータがバッファー内に保持されてからディスクに書き込まれる遅延書き込み操作を実行します。この値は、非共有ファイルシステムと、複数読み取りファイルシステムとしてマウントされていないファイルシステムのデフォルトです。
value が 1 の場合、メタデータは、変更されるたびにディスクに書き込まれます。この動作によってパフォーマンスが低下しますが、データの整合性は向上します。この値は、複数読み取りファイルシステムまたは共有ファイルシステムとしてマウントされている Sun QFS ファイルシステムのデフォルトです。Sun QFS 共有ファイルシステムで、フェイルオーバー機能が必要な場合は、value を 1 に設定する必要があります。
trace コマンドは、ファイルシステムに対するトレースを有効にします。notrace コマンドは、トレースを無効にします。これらのグローバルな指令は、すべての操作に影響を与えます。ファイルシステムのトレースの詳細は、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「defaults.conf(4)」を参照してください。
:trace eq :notrace eq
eq には、ファイルシステムの装置番号を指定します。
このセクションで説明されているコマンドを使用すると、トレースを制御したり、ディスクデバイスへのアクセスを開いたり、その他のいくつかのタスクを実行したりすることができます。
clear コマンドは、リムーバブルメディアマウントリクエストの表示から指定された VSN をクリアーします。詳細は、「(p) - リムーバブルメディアのロードリクエストの表示」を参照してください。
:clear vsn :clear vsn index
vsn には、マウントするボリュームを指定します。VSN マウントを待機していたプロセスは、すべて中止されます。
index には、リムーバブルメディア表示での VSN の 10 進数の順番を指定します。
devlog コマンドは、ログに記録される 1 つまたは複数のイベントを設定します。
:devlog eq :devlog eq option
eq には、デバイスの装置番号を指定します。
option には、1 つまたは複数のイベントタイプを指定します。可能性のあるイベントタイプは、 all、 date、 default、 detail、 err、 event、 label、 mig、 module、 msg、 none、 retry、 stage、 syserr、 および time です。これらのオプションについては、『Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual』の「defaults.conf(4)」を参照してください。
オプションが指定されていない場合、システムは、指定された eq に関してログに記録されている現在のイベントを変更しません。
diskvols コマンドは、ディスクボリュームディクショナリ内のフラグを設定またはクリアーします。
:diskvols volume +flag :diskvols volume -flag
volume にはディスクボリュームディクショナリにあるボリュームを指定します。
flag には、samu D の表示にある 5 つのフラグのいずれかを指定します。ディスクボリュームディクショナリおよびフラグについては、samu(1M) のマニュアルページを参照してください。
dtrace コマンドは、1 つまたは複数のプロセスの DTrace 機能を制御します。DTrace コマンドは、さまざまなトレースオプションを指定します。
:dtrace daemon-name on :dtrace daemon-name off :dtrace daemon-name.variable value
daemon-name には、すべてのプロセスに影響を与えるにはキーワード all を、それ以外の場合はプロセス名を指定します。sam-archiverd、 sam-catserverd、 sam-fsd、 sam-rftd、 sam-recycler、 sam-sharefsd、 sam-stagerd のいずれかのプロセス名が指定されている場合、トレースコマンドはそのプロセスにのみ影響を与えます。
variable と value には、次のいずれかの variable と value のペアを指定します。defaults.conf(4) のマニュアルページには、これらの引数に関する総合的な情報が掲載されています。
filevalue
トレースファイルを書き込むことのできるファイルの名前を指定します。フルパス名を指定できます。
optionsvalue
スペースで区切られたトレースオプションのリストを指定します。
agevalue
トレースファイルのローテーション経過時間を指定します。
注 - 2 分以下の経過時間を設定しないでください。設定すると、ローテーションが実行されなくなります。
sizevalue
ローテーションを開始するトレースファイルのサイズを指定します。
fs コマンドは、N の表示で表示されるファイルシステムを設定します。
:fs fsname
fsname には、検査するファイルシステムの名前を指定します。
mount コマンドは、Sun QFS ファイルシステムを選択します。
:mount mount-point
mount-point には、ファイルシステムのマウントポイントを指定します。
open コマンドは、指定されたディスクデバイスへのアクセスを有効にします。read コマンド、ディスクセクターの表示 (S)、またはファイルラベルの表示 (F) を使用するには、その前にこのコマンドを発行する必要があります。
:open eq
eq には、デバイスの装置番号を指定します。
read コマンドは、現在開かれているディスクデバイスから指定されたセクターを読み取ります。読み取りを行う前に、装置を開く必要があります。
:read addr
addr には、16 進数のセクターアドレスを指定します。
refresh コマンドは、samu 画面のリフレッシュ間の時間を設定します。
:refresh i
i には、時間を秒単位で指定します。
snap コマンドは、表示ウィンドウのスナップショットをファイルに送信します。デフォルトのファイルは、現在の作業ディレクトリに入っている snapshots です。問題の報告に役立てるには、samu ユーティリティーのすべての表示のスナップショットを作成します。新しいスナップショットは、スナップショットファイルに追加されます。このファイルを印刷したり、エディタを使用して調べたり、Oracle のカスタマサポートスタッフにファクシミリで送信したりすることができます。
:snap :snap filename
filename には、表示情報を受信するファイルのパスを指定します。
! コマンドを使用すると、samu オペレータユーティリティーを終了することなくシェルコマンドを実行できます。
:! shell-command
shell-command には、コマンドを指定します。