报错 |
因为服务器宕机,再启动gitlab时,只有postgresql服务没有正常运行。之后打开gitlab地址尝试进入,发现报错502。
查找错误 |
查看gitlab中某一个服务错误日志代码:sudo gitlab-ctl tail 服务名称
执行代码:
sudo gitlab-ctl tail postgresql
显示的错误结果:
2020-05-14_08:46:28.64046 FATAL: bogus data in lock file “postmaster.pid”: "/opt/gitlab/embedded/postgresql/9.6.3/bin/postgres “-D” “/var/opt/gitlab/postgresql/data”
错误原因:这是由于data目录下的postmaster.pid文件有乱码,删除data目录下的postmaster.pid文件。
解决过程 |
第一步
根据错误日志提示路径进入/var/opt/gitlab/postgresql路径下
cd /var/opt/gitlab/postgresql
再输入ls查看是否有data文件
此时需要修改data文件夹的权限,gitlab的这个文件默认为打不开的,如果想要进入该文件将postmaster.pid删除,需输入
sudo chmod -R 777 data
修改完权限进入data文件夹将postmaster.pid文件删除。
第二步
此时并没有结束,当你直接重启gitlab,还会报错
看样子并没有起任何作用,此时的错误和之前的错误一样,但是不要急,再次查看下日志输入
sudo gitlab-ctl tail postgresql
此时的错误日志已经变了
2020-05-14_09:10:34.36926 FATAL: data directory “/var/opt/gitlab/postgresql/data” has group or world access
2020-05-14_09:10:34.36928 DETAIL: Permissions should be u=rwx (0700).
此时的错误原因是由于刚刚修改了data文件夹的权限,没有修改回来,只要我们修改为之前的权限,再运行gitlab即可完成操作。
需要注意的是路径,是不是data文件夹的父路径执行的该操作,否则会失败
sudo chmod -R 0700 data
此时再运行gitlab就正常了。