最近使用 AIX 7.1 从 Bitucket 下载代码的时候遇到了这个错误 fatal: write error: A file cannot be larger than the value set by ulimit.
$ git clone -b dev https://<username>:<password>@git.company.com/scm/vmcc/opensrc.git --depth 1 |
这是由于这个仓库里的文件太大,超过了 AIX 对于用户文件资源使用的上限。通过 ulimit -a
可以来查看。更多关于 ulimit
命令的使用 ulimit Command
$ ulimit -a |
可以看到 file 有一个上限值 2097151。如果将它也改成 unlimited 应该就好了。
通过 root 用户可以访问到 limits 文件 /etc/security/limits
(普通用户没权限访问)。
# 以下是这个文件里的部分内容 |
将上述的值 fsize = 2097151 改成 fsize = -1 就将解除了文件块大小的限制了。修改完成后,重新登录,再次执行 ulimit -a
$ ulimit -a |
此时 file(blocks) 已经变成 unlimited 了。再次尝试 git clone
git clone -b dev https://<username>:<password>@git.company.com/scm/vmcc/opensrc.git --depth 1 |
这次就成功了!