
Attachment uploads and downloads are currently disabled. This is a temporary situation and will resume as normal in the coming days.
未解決
PowerScale上のファイルへの同時アクセスに関して
PowerScale上にあるファイルに対して、ファイルの書き込みをしながら、同時にそのファイルを読み出しする作業をしています。
書き込みしているのは、Windowsサーバ(SMB)であり、
同時に読み出ししているのも、Windowsサーバ(SMB)です。
OneFSは、9.7.1.xです。
この時、読み出し側のサーバで、ファイルが別のプロセスで使用中のためアクセスできないといったエラーが発生しています。
このエラーをなくし、SMBで読み出しを可能としたいのですが何か方法はありますか?
別件で、FTPで書き込みをしつつ、SMBで読み出しをする際にも、同様に読み出し側でアクセス不可の事象が発生しましたが、これは、oplockの無効化により、解消されました。
今回のこのクラスタも、oplockは無効化されています。
oplockのほかに、何かlock的な設定があるのでしょうか?
返信(3)
解決策(0)
Uchiyさん
ご返信をありがとうございます。
ご認識の通り、書き込み側が FILE_SHARE_READ を許可していれば、
読み出し側からのアクセスは可能になります。どのように設定するかわかりますか?
microsoftのQ&Aなどで紹介されているものでしょうか?
→share mode (共有モード)は、OS の設定画面やレジストリではなく、アプリケーションがファイルを開く際に指定するものになりますので、設定手順はアプリケーションに依ります。ただその状態を調べる方法はマイクロソフトによるこちらの記事で確認できるので参考にできると思います。
また、( ) 内には共有モードが記録されます。
共有モードについて詳しくは こちらの弊社公開情報 をご参照いただきたく存じますが、 出力結果内の表記はそれぞれ下記を表します。
・R → FILE_SHARE_READ (後続のプロセスによる読み込み操作を許可します)
・W → FILE_SHARE_WRITE (後続のプロセスによる書き込み操作を許可します)
・D → FILE_SHARE_DELETE (後続のプロセスによる削除操作を許可します)返信

ayas
Community Manager
•
7497 投稿
•
68110 ポイント
3
0
投稿済み 2026年9月10日 07:32
Uchiyさん
読み出し側のサーバで、ファイルが別のプロセスで使用中のためアクセスできないといったエラーが発生しています。このエラーをなくし、SMBで読み出しを可能としたいのですが何か方法はありますか?
→ oplockの無効化はすでにご確認済みとのことですので、別の観点をお伝えします。
OneFSではDLM(分散ロックマネージャー)がファイルアクセス時のLock制御を行っており、その対象にはSMBのshare modeも含まれています。
share modeは「ファイルを開いたプロセスが、後続のアクセスに何を許可するか」をクライアント側が宣言するもので、OneFSはその宣言を基に動作します。そのため、書き込み側のアプリケーションが読み取りを許可していない場合、OneFS側の設定で読み出しを可能にすることはできません。まずは書き込み側のWindowsサーバ(アプリケーション)のshare modeをご確認いただくのがよいかと思います。
参考:CreateFileA 関数 (fileapi.h)
※dwShareMode に FILE_SHARE_READ が含まれているかがポイントになります
oplockのほかに、何かlock的な設定があるのでしょうか?
→はい、DLMが扱うロックタイプは複数あり、今回はShare Modeの確認が有効ではないかと思います。
Advisory / Anti-virus / Data / Delete / Mark / Oplocks / Quota / Read / Share Mode / SMB byte-range / Snapshot / Write
参考:OneFS File Locking and Concurrent Access(Lock Type: にリストがあります)
OneFS has a fully distributed lock manager that marshals locks on data across all the nodes in a storage cluster.