这个限制是在/usr/include/sys/limits.h里定义的
the LINK_MAX value is set to 32767
#define LINK_MAX SHRT_MAX
…/…
#define SHRT_MAX (32767)
所以一个目录不能够拥有超过32767个 子目录.
以下是英文解析:
This is due to the fact that “…” in each subdirectory is a hard-link back to
the parent directory and the link count is implemented with a signed 16 bit quantity.
Hence the error, EMLINK. Regular files are ok since they do not require this link.
You could work around this limitation by using\r\nsymbolic to directories /usr/include/sys/limits.h as the LINK_MAX value set to 32767
#define LINK_MAX SHRT_MAX
…/…
#define SHRT_MAX (32767)
这个限制是hard-coded, 没办法改。
只能是其他的办法,譬如创建一个symbolic link 。