ubuntu9.04安装gitosis

这几天搞个git服务器,需要用gitosis来维护访问权限,来管理代码的下载权限。按照说明折腾了半天,总是在ssh的client和server上面,折腾了半天,后来通过不断试验,终于可以顺利的安装gitosis了。哈哈。。。

1.安装gitosis需要的一些东西:python,python-setuptools,ssh,openssh-server,git,adduser,userdel这些,记得这些都是需要的哦。

2.检查一下ssh的运行状态,$ps -e|grep ssh,如果打印出来的有:ssh-clinet,sshd,这样基本就可以开始gitosis的安装了。

3.gitosis的安装,可以采用二种方法:1.新立德上面可以很容易的搜索到gitosis,可以使用新立德来安装gitosis。2.可以采用网上大家都是用的方法:

   a.$git clone git://eagain.net/gitosis,下载下来gitosis的安装包。

   b.使用里面的python脚本,setup.py安装gitosis,安装命令为:$sudo python setup.py install

4.在登陆user下面生成ssh密钥,$ssh-keygen -t rsa,这个密钥生成在/home/user/.ssh/目录下

5.在登陆user下面建立一个名为"git"的用户,当然,这个用户名字可以随便,这个用户的目录最好在/home下。

   $sudo adduser --system --shell /bin/sh --gecos 'git version control' --group --disabled-password --home /home/git git

   现在正确的情况还是在登陆user下,用sudo去建立了,一个新用户。之前我用sudo su进入了root用户权限下,也用这个方法建立一个新用户,然后依然用root用户去gitosis了一把,gitosis用的pub密钥还是/home/user/.ssh/id_rsa.pub。但是,用户权限又回到user下面的时候,用git clone git@localhost:gitosis-admin.git ,这个情况下出了各种各样的问题,还搜到了很多用户关于ssh关于在AMD64机器上的bug的讨论,还有关于SSH_AUTH_SOCK改成0,说法,但是,这个貌似都不能正常的git clone下来gitosis-admin。现在二台机器都正常的,全部都是在user用户下使用sudo去完成的。

6.$sudo -H -u git gitosis-init </home/user/.ssh/id_rsa.pub

7.$sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update
8.这个时候我们回到/home/user 去,随便建立一个存储代码的地方吧,然后$git clone git@localhost:gitosis-admin.git

9.这样就成功的安装好了gitosis,后面就是配置和使用,以及开始上传代码了。

你可能感兴趣的:(server,python,ubuntu,git,ssh,user)