源码安装GitLab时_build目录缺失bin文件夹及gitaly文件求助
Gitaly安装后缺失_bin目录及可执行文件的排查方案
校验Gitaly源码完整性
确认/home/git/gitaly目录下存在Makefile、go.mod等核心文件。若源码不完整(克隆中断或版本不匹配),重新克隆对应版本的Gitaly:sudo -u git -H git clone --depth 1 --branch <GitLab对应Gitaly分支> https://gitlab.com/gitlab-org/gitaly.git /home/git/gitaly注:Gitaly版本需与GitLab严格匹配,可在GitLab源码目录的
GITALY_SERVER_VERSION文件中查看对应版本号。手动编译Gitaly
跳过rake封装,直接进入Gitaly目录执行编译:sudo -u git -H cd /home/git/gitaly sudo -u git -H make编译完成后检查
_build/bin目录是否生成gitaly文件。若编译报错,根据提示排查依赖(如Go环境缺失、依赖包未安装)。查看rake命令详细日志
重新执行rake命令并开启 verbose 模式,捕捉隐藏的执行细节:sudo -u git -H bundle exec rake "gitlab:gitaly:install[/home/git/gitaly,/home/git/repositories]" RAILS_ENV=production VERBOSE=1重点关注是否有步骤被跳过、权限不足或依赖缺失的提示。
修复目录权限
确保/home/git及子目录归属git用户:ls -ld /home/git /home/git/gitaly若权限异常,执行:
sudo chown -R git:git /home/git验证Go环境配置
Gitaly依赖Go语言,确认git用户可访问符合版本要求的Go环境:sudo -u git -H go version若Go未安装或版本不符,先安装对应版本(查看Gitaly目录下
GO_VERSION文件确认要求),并确保git用户环境变量包含Go路径。
内容的提问来源于stack exchange,提问作者B.Kingsun
相关产品推荐
相关产品推荐

