在 Linux 上(可能是文件系统块大小的函数),当我创建一个目录stat
时,它返回 4096 的大小。我可以在这个目录中创建文件,在一定程度上,不会增加感知的大小目录(由 报告stat
)。
在某些时候,当目录填满许多文件时,目录大小会膨胀(我不是在谈论目录的内容,我在谈论代表目录本身所消耗的块)。如果文件被删除,目录大小保持不变。
这是一个快速示例:
[root@uxlabtest:/]$ mkdir test
[root@uxlabtest:/]$ stat test
File: `test'
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: fd00h/64768d Inode: 1396685 Links: 2
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-07-26 14:06:04.000000000 -0400
Modify: 2011-07-26 14:06:04.000000000 -0400
Change: 2011-07-26 14:06:04.000000000 -0400
Run Code Online (Sandbox Code Playgroud)
然后触摸一堆文件:
[root@uxlabtest:/]$ for i in `seq 1 10000`; do touch /test/$i; done
[root@uxlabtest:/]$ stat test
File: `test'
Size: 155648 Blocks: 312 IO Block: 4096 …
Run Code Online (Sandbox Code Playgroud) 我正在努力解决安装在 Linux 服务器上的 Windows SMB 共享偶尔断开连接的问题。
简要介绍一下我的环境,我有几台 Linux 服务器从 Windows 文件共享挂载了 CIFS 共享(仅支持 SMB 3)。我已通过 fstab 文件使用以下选项将这些共享安装在 Linux 服务器上。
//servername/folder /localfolder cifs credentials=/login.txt,x-systemd.automount,x-systemd.device-timeout=5,_netdev,noserverino,noperm,sec=ntlmssp,vers=3.0 0 0
Run Code Online (Sandbox Code Playgroud)
上述共享偶尔会从 Linux 服务器断开连接并自动卸载(没有固定的频率,可能是几天或一周一次)。检查消息日志后,我看到以下错误:
kernel: CIFS VFS: BAD_NETWORK_NAME: \\servername\folder
Run Code Online (Sandbox Code Playgroud)
要解决此问题,我必须手动卸载共享并重新安装。
正如您在 fstab 文件的挂载选项中看到的那样,我提供了在断开连接时自动重新挂载共享的选项。但它仍然不起作用。我使用了错误的安装选项还是已知问题?我在这里迫切需要帮助。