PCにCIFSマウントがあり、ls
コマンドで特定のファイルが存在することが示されます。
[bf@localhost dirX]$ ls -la
total 4096
drwxr-xr-x. 2 bf bf 0 20 okt 09:12 .
drwxr-xr-x. 2 bf bf 0 5 sep 11:05 ..
-rwxr-xr-x. 1 bf bf 880 19 okt 17:44 WeirdFile
-rwxr-xr-x. 1 bf bf 880 19 okt 17:44 GoodFile
ただし、そこから読み取ろうとすると(または保存しようとすると)、ファイルが存在しないと表示されます。
[bf@localhost dirX]$ cat WeirdFile
cat: WeirdFile: No such file or directory
cat GoodFile
を試みても機能します。
Fedora 26に移行し、fstabでバージョン2.1に強制する必要があるため、とにかくCIFSで問題が発生しています。主な問題はパフォーマンスの悪さ(遅い!)ですが、これはまったく奇妙なことです。
更新共有を再マウントすると、ファイルが失われます。
その奇妙なファイルが実際には名前にASCII文字を使用していない理由として考えられます。この場合、ファイル名を入力すると機能しませんが、copy /を使用すると機能しません。貼り付けます(非ASCII文字の場所によっては、コマンド補完でも機能します)。
非ASCII文字には2つの可能性があります。*非ASCII文字には、ラテンアルファベットのグリフと同じグリフがあります(キリル文字の「a」、「o」、「e」が一般的です)*非ASCII文字表示されません(+ U200B、非破壊ゼロ幅スペースなど)。
コピー/貼り付けv.s.再入力の違い:
ls suspisciousfile | wc -c
を実行すると、すべてASCIIで、非ASCII文字がある場合、wc
出力はファイル名の文字数を数えることができるよりも1バイト多くなります(最終的な改行のため)。長くなります。hexdump
:ls suspisciousfile | hexdump -C
を使用すると、ASCII以外の文字が非常にわかりやすくなります。特別に細工されたfilе
の例(最後のе
は実際にはキリル文字です: