centos下配置gitosis服务器遇到的困难

时间:2021-05-30 04:11:53

这篇博客主要讲的是在centos下配置gitosis遇到的问题。

背景:centos7.2 64 ;gitosis2.0

1、困难1

1)产生的问题及原因。gitosis没有安装成功,没有出现finish的字样,但是没有发现,导致在用公钥初始化配置仓库时,出现了找不到gitosis的错误。gitosis安装失败的截图如下:

centos下配置gitosis服务器遇到的困难

2)gitosis安装失败导致的错误。在安装gitosis失败之后,在用命令sudo -H -u gittest gitosis-init < /tmp/id_rsa.pub时,出现了找不到gitosis的错误。

centos下配置gitosis服务器遇到的困难

3)根据错误找到的解决办法并做出了尝试。在出现找不到gitosis的错误之后,我在网上找了关于解决这个错误的手段,做了如下尝试:

a、安装pip10.0.1

安装pip10.0.1命令:

wget https://files.pythonhosted.org/packages/ae/e8/2340d46ecadb1692a1e455f13f75e596d4eab3d11a57446f08259dee8f02/pip-10.0.1.tar.gz
tar -zxvf pip-10.0.1.tar.gz
cd pip-10.0.1
python setup.py install

安装pip10.0.1成功截图:

centos下配置gitosis服务器遇到的困难

在root用户下用命令sudo -H -u gittest gitosis-init < /tmp/id_rsa.pub时,还是出现了找不到gitosis的错误。  centos下配置gitosis服务器遇到的困难

b、安装distribute0.7.3

用pip安装distribute0.7.3命令:

pip install distribute

安装distribute成功截图:

centos下配置gitosis服务器遇到的困难

在root用户下用命令sudo -H -u gittest gitosis-init < /tmp/id_rsa.pub时,还是出现了找不到gitosis的错误。

centos下配置gitosis服务器遇到的困难

4)找到安装gitosis失败的真正原因:在服务器上下载了两个版本的gitosis,导致gitosis安装失败。

解决办法:删除其中一个版本的gitosis,成功安装gitosis。安装成功的截图:    centos下配置gitosis服务器遇到的困难

收获:找到真正的错误才是解决问题的关键。

2、困难2

1)问题:root用户用公钥初始化gitosis仓库出现错误,用命令sudo -H -u gittest gitosis-init < /tmp/id_rsa.pub时,出现了找不到pkg_resources的错误。

centos下配置gitosis服务器遇到的困难

2)解决用公钥初始化gitosis仓库失败的问题。解决问题的步骤如下:

a、在root下Python中查找这个库,可以找到这个文件pkg_resources,截图如下所示。  猜测root用户对于使用这个文件pkg_resources的权限不够,然后查找这个文件的所在目录,在/usr/lib/python*/sit*/gitosis-0.2-py2.7.egg目录下,将/usr/lib/python*/sit*/gitosis-0.2-py2.7.egg目录下的所有文件权限由700改成755。

centos下配置gitosis服务器遇到的困难

b、在root用户下用sudo -H -u gittest gitosis-init < /tmp/id_rsa.pub初始化gitosis仓库,又出现了文件gitosis-init :permission denied的错误。修改这个gitosis-init文件的权限:查找到这个文件在/usr/bin目录下。在/usr/bin目录下有三个gitosis文件,将权限由700改成755。

3)用公钥初始化gitosis仓库成功。确保gitosis文件权限都改成755之后,使用公钥初始化gitosis,使用公钥初始化gitosis仓库成功的截图:

centos下配置gitosis服务器遇到的困难

收获:在配置gitosis过程中,需要修改gitosis文件的权限(755权限),让gitosis文件所有者(我这里gitosis文件所有者的用户是root)有可读可写可执行的权限,组及其他用户有可读可执行的权限。

在此感谢冉华给予我的帮助 。