gitlab-runner运行权限修复(重要)
在安装完成gitlab-runner后,发现如要直接部署到gitlab则gitlab-runner无法正常工作,使用diary.sh发布博客时还需要设置一段代码检测gitlab-runner是否以普通帐号运行,如果不运行则使用
gitlab-runner run
启动,这个操作不规范,虽然用了一段时间,但是今天还是决定修复这个问题。造成这个问题的原因是,在安装gitlab-runner时其默认建立了一个名为gitlab-runner的帐号,但是这个帐号又不在root组中,这个权限问题导致了部署博客时gitlab-runner无法正常运行。
解决方法
- 将
gitlab-runner加入开机启动:1
2sudo systemctl enable gitlab-runner.service
sudo systemctl start gitlab-runner.service - 查看
gitlab-runner进程:ps aux|grep gitlab-runner可以查看到gitlab-runner的工作目录和默认用户等一系列相关信息。 - 卸载
gitlab-runner默认用户:sudo gitlab-runner uninstall - 建立
gitlab-runner的工作目录:mkdir /home/.gitlab-runner - 将用户设置为
root:gitlab-runner install --working-directory /home/.gitlab-runner --user root - 重启服务:
systemctl restart gitlab-runner.service - 再次查看
gitlab-runner进程:ps aux|grep gitlab-runner
注意:--working-directory
也可以在设置在任何您喜欢的位置,为了避免造成家目录的混乱,此处我设置在了/home/.gitlab-runner.