Bar*_*chs 5 linux fedora mount cifs
我的 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
Run Code Online (Sandbox Code Playgroud)
但是,当尝试从中读取(或保存到其中)时,它说该文件不存在:
[bf@localhost dirX]$ cat WeirdFile
cat: WeirdFile: No such file or directory
Run Code Online (Sandbox Code Playgroud)
试图cat GoodFile
做的工作。
自从迁移到 Fedora 26 并且不得不在 fstab 中强制使用 2.1 版后,我无论如何都遇到了 CIFS 问题。主要问题是性能不佳(慢!),但这只是很奇怪。
重新安装共享时更新,文件消失了。
可能的原因是 Weirdfile 的名称中并未真正使用 ASCII 字符。如果是这种情况,如果您键入文件名,它将不起作用,但如果您使用复制/粘贴,它就会起作用(它也可以与命令完成一起使用,具体取决于非 Ascii 字符的位置)。
\n非 ASCII 字符有两种可能:
\n除了复制/粘贴与重新输入的区别之外:
\nls suspisciousfile | wc -c
,使用全 ASCIIwc
输出将比你可以计算的文件名中的字符多一个字节(由于最终换行),如果有非 ASCII 字符,它会更长。hexdump
:ls suspisciousfile | hexdump -C
将使任何非 ASCII 字符变得非常明显。特制的示例fil\xd0\xb5
(其中结尾\xd0\xb5
实际上是西里尔字符):uniname
来自包uniutils
。该实用程序逐字符转储字符串。例如,使用相同的制作fil\xd0\xb5
: 归档时间: |
|
查看次数: |
3512 次 |
最近记录: |