web-dev-qa-db-ja.com

不思議な「デバイスまたはリソースがビジーです」というメッセージ

次のコマンドを使用して、LinuxにWindows共有を正常にマウントしました。

mount -t cifs -o credentials=pat_to_windows_creds,uid=my_linux_login,gid=my_linux_login,vers=2.1 windows_share mount_point

(「vers = 2.1」は、何らかの理由で最新のSambaバージョンでマウントできないため、数週間後に存在します)

Linuxからファイルやディレクトリを作成したり削除したりできます。ただし、ディレクトリを移動(名前変更)しようとすると、「リソースビジー」というスターンジエラーが発生します。見てください:

>mkdir foo
>mv foo FOO
mv: cannot move 'foo' to 'FOO/foo': Device or resource busy

Linuxは、fooを移動したいディレクトリFOOがあると考えるのはなぜですか?私はFOOディレクトリを持っていません(私はチェックしました)。これとまったく同じ問題が、名前を変更しようとしている他のすべてのディレクトリで発生します。この問題は、マウントされたWindows共有でこれを実行した場合にのみ発生します。ネイティブ/ローカルファイルでは発生しません。

1
Rene

解決しました!!! (ご不便をおかけして申し訳ありません/時間を無駄にします)。

この問題は、宛先ディレクトリの名前が、1つ以上の文字の大文字化を除いて、ソースディレクトリと同じである場合にのみ発生します。

Windowsは大文字と小文字を区別しないため、Windows共有側は、mv 'をそれ自体に暗示するため、この移動を拒否します。 1文字だけ変更すると問題なく動作します。えっ!

1
Rene