我一直试图在CentOS 5.x上安装GitLab,但是现在我被困住了,而且谷歌很混乱。
我一直在遵循这个安装指南 (目前卡在这里 )
运行bundle exec rake gitlab:app:status RAILS_ENV=production secund time bundle exec rake gitlab:app:status RAILS_ENV=production我得到这个输出:
Starting diagnostic config/database.yml............exists config/gitlab.yml............exists /home/git/repositories/............missing rake aborted! unexpected return
/home/gitlab/gitlab/config/gitlab.yml的相关部分是这样的(服务器有自定义的shh端口):
git_host: system: gitolite___ admin_uri: git@localhost:gitolite-admin base_path: /home/git/repositories/ host: localhost git_user: git port: 2134
文件夹权限是drwxrwx--- 4 git git 4096 Jul 20 07:12 repositories和里面的文件是( gitlab用户在git组):
drwxrwx--- 8 git git 4096 Jul 20 04:22 gitolite-admin.git drwxrwx--- 7 git git 4096 Jul 20 04:22 testing.git
事情,即使我改变了config/gitlab.yml的base_path值,它仍然试图查找相同的文件夹。
只有在google上find的解决scheme可能的方向表明,它与SElinux有某种关系。 build议的命令是: find . -print0 |xargs -0 -n 1 sudo setfattr -h -x security.selinux find . -print0 |xargs -0 -n 1 sudo setfattr -h -x security.selinux 。 但我不知道在哪里执行它,它告诉我, command setfattr not found ..或什么的。 另外,我有点怀疑,不变的configuration可能也会受到SElinux的影响。
该怎么办 ?
也许你没有运行rake命令作为你的gitlab用户? 如:
sudo -u gitlab bundle exec rake gitlab:app:status RAILS_ENV=production
有一个类似的问题,看到其他设置从gitlab.yml只是没有被应用…
你提到:
事情,即使我改变了
config/gitlab.yml的base_path值,它仍然试图查找相同的文件夹。
如果你看看config/initializers/1_settings.rb程序:
def git_base_path git_host['base_path'] || '/home/git/repositories/' end
所以这是你真正的问题(在开始调整文件夹权限之前):gitlab不知何故忽略你的config/gitlab.yml设置。
仔细检查是否有任何错字,并确保将其考虑在内(例如删除它,看看gitlab是否抱怨缺less该文件)。