OSX Lion 中有一个我无法解释的行为(也可能在其他版本上)。
当我复制某些包含动态库的应用程序(例如 iTunes)时,这些库的物理大小会发生变化(大小会增加)。这可能是由于磁盘碎片造成的。但不仅如此,因为令人惊讶的是原始物理大小小于逻辑大小(通常物理大小总是大于逻辑大小,除非涉及压缩)。
为了说明我的情况:
antoine@amarante:/Applications$ ls -ls iTunes.app/Contents/MacOS/libgnsdk_submit.1.8.2.dylib
384 -rwxrwxr-x+ 1 root admin 558704 8 jul 2011 iTunes.app/Contents/MacOS/libgnsdk_submit.1.8.2.dylib
Run Code Online (Sandbox Code Playgroud)
ls
考虑 512 字节的块大小,与报告的 558704 字节逻辑大小相比,384 个块构成 196608 字节。或者,如Finder 中的获取信息窗口所示:
558.704 octets (197 Ko sur disque)
Run Code Online (Sandbox Code Playgroud)
在我复制整个 iTunes 应用程序的一些复制操作后也会显示这一点。第一个iTunes copie
是通过 Finder 完成的复制,iTunes-cp
也是使用 CLI 命令完成的复制cp -a
。
antoine@amarante:/Applications$ ls -ls iTunes*.app/Contents/MacOS/libgnsdk_dsp.1.8.2.dylib
11632 -rwxr-xr-x+ 1 antoine admin 5955104 8 jul 2011 iTunes copie.app/Contents/MacOS/libgnsdk_dsp.1.8.2.dylib
11632 -rwxrwxr-x+ 1 antoine admin 5955104 8 jul 2011 iTunes-cp.app/Contents/MacOS/libgnsdk_dsp.1.8.2.dylib
3944 -rwxrwxr-x+ …
Run Code Online (Sandbox Code Playgroud)