本页面列出了 Linux Unity 编辑器的已知问题,并提供经过测试的解决方案。
打开具有大量资源的项目会使编辑器崩溃并记录一条 Pipe error ! 消息。如果通过终端打开编辑器,则会显示在终端中的错误消息,否则会记录在 ~/.config/unity3d 目录中的 Editor.log 文件中。
当项目达到打开文件的最大数量限制时,将记录错误消息。
通过以下方式之一提高 Unity 编辑器会话中打开文件的最大数量限制:
如果要使用终端打开编辑器,则可以按照以下步骤增加当前编辑器会话中的打开文件的最大数量限制:
在终端窗口中,使用以下命令检查当前打开文件的最大数量限制:
ulimit -a
这会增大打开文件的最大数量软限制,并且软限制的值不能超过硬限制。
使用以下命令检查硬限制以确保不会超过硬限制:
ulimit -Hn
了解硬限制后,请使用以下命令增加软限制,使其不超过硬限制:
ulimit -n <desired maximum open files value>
例如,要将软限制增加到 4096,请使用以下命令:
ulimt -n 4096
使用 ulimit -a 或 ulimit -Sn 命令确认软限制更改,然后使用同一终端启动 Unity 编辑器。
要增大全系统的打开文件的最大数量限制,请执行以下步骤:
在以下位置找到限制配置文件:/etc/security/limits.conf。
修改以下内容:
[UserName] soft nofile [Desired soft open file limit]
其中 [UserName] 可以是所需用户的用户名、root 或 * 以包含除 root 之外的所有用户。您还可以增加此文件中的硬限制,但要确保不超过系统设置的硬限制。
下面举例说明,当设置软限制和硬限制数值来提升可打开文件数量后,位于 /etc/security/limits.conf 中的 limits.conf 文件的情况。
* soft nofile 4096
* hard nofile 4096
重新启动系统。
通过运行以下命令来确认这些值确实已更改。
ulimit -Sn
ulimit -Hn
启动 Unity 编辑器。