“ls -lh”目录报告的大小:Linux 与 CIFS 安装的驱动器

“ls -lh”目录报告的大小:Linux 与 CIFS 安装的驱动器

我最近在 Linux 机器上使用 CIFS 安装了 Windows 共享。

目的是“本地”用于rsync备份我的 Windows 计算机。用于挂载 Windows 驱动器的命令行类似于:

mount \\192.168.1.74\share /cifs1 -t cifs -o noserverino,iocharset=utf8,ro 

另请注意,连接到 Linux 机器的驱动器格式为 NTFS。

进行示例备份时,rsync总是重新复制目录(名称),但不复制文件。更仔细地查看ls -lh两端的输出后,我注意到在 Linux 端,目录级别的大小始终为 0:

TTT-Admin@1080-Router:/tmp/mnt/RT-1080/tmp# ls -lh
drwxrwxrwx    1 TTT-Admi root           0 Feb  8 12:14 DeltaCopy

但 CIFS 端目录级别的大小始终不等于 0:

TTT-Admin@1080-Router:/cifs1/temp/Rsync-Packages# ls -lh
drwxr-xr-x    1 TTT-Admi root        8.0K Feb  8 12:14 DeltaCopy

这种差异解释了为什么rsync总是重新复制目录,但不重新复制文件夹(这是正确的,文件夹大小和时间戳两端相同)。

命令rsync是:

rsync -av /cifs1/Temp/Rsync-Packages/DeltaCopy /mnt/RT-1080/tmp/rsync
 -av /cifs1/Temp/Rsync-Packages/DeltaCopy /mnt/RT-1080/tmp/

目录是否应该“有大小”?我应该怎么做才能解决这个差异?

相关内容