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

背景:centos7.2 64 ;gitosis2.0

1、困难1

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

2)gitosis安装失败导致的错误。在安装gitosis失败之后,在用命令sudo -H -u gittest gitosis-init < /tmp/id_rsa.pub时,出现了找不到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成功截图:

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

b、安装distribute0.7.3

用pip安装distribute0.7.3命令:

pip install distribute

安装distribute成功截图:

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

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

解决办法:删除其中一个版本的gitosis,成功安装gitosis。安装成功的截图:    

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

2、困难2

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

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。

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仓库成功的截图:

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

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

centos下配置gitosis服务器遇到的困难的更多相关文章

  1. centos下配置gitosis服务器

    背景: 一台windows电脑,Xshell可以登录centos服务器(centos7.2 64位,有root用户权限),windows电脑已经安装好git和tortoies 在windows下下载和 ...

  2. Linux -- Centos 下配置LNAMP 服务器环境

    1.Mysql centos 7 下mysql被替换掉,如有需要请看另一篇: centos 6.5下: yum install mysql mysql-server mysql-devel 启动mys ...

  3. CentOS下的Git服务器

    [Gitosis]CentOS下的Git服务器:Gitosis  [摘要]         详细介绍如何在CentOS上配置Gitosis        我们很多人知道Git可能是从Github开始的 ...

  4. CentOS下架设VNC服务器

    CentOS下架设VNC服务器1.什么是VNC服务器?百度百科:VNC (Virtual Network Computer)是虚拟网络计算机的缩写.它 是一款优秀的远程控制工具软件,由著名的 AT&a ...

  5. CentOS下架设Telnet服务器

    CentOS下架设Telnet服务器1.什么是Telnet?来自度娘的解释:Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户提供了在本地计算机 ...

  6. Centos下配置php环境

    Centos下配置php环境   目录[-] 环境: GD2 2 安装PHP 5.2.14(FastCGI模式) 1)编译安装PHP 5.2.14所需的支持库: 2)编译安装MySQL 5.5.3-m ...

  7. centos6.8下配置https服务器

    centos6.8下配置https服务器 1.1 环境 l  系统环境:内核环境为2.6.32版本  64位的CentOS release 6.8 (Final) [root@localhost ~] ...

  8. CentOS下配置防火墙 配置nat转发服务

    CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/sysconfig/network   这里可以更改主机 ...

  9. CentOS下配置iptables防火墙 linux NAT(iptables)配置

    CentOS下配置防火墙 配置nat转发服务CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/syscon ...

随机推荐

  1. 定义抽象类Shape,抽象方法为showArea(),求出面积并显示,定义矩形类Rectangle,正方形类Square,圆类 Circle,根据各自的属性,用showArea方法求出各自的面积,在main方法中构造3个对象,调用showArea方法。(体现多态)

    实现多态的三个条件:1.要有继承2.要有抽象方法重写3.用父类指针(引用)指向子类对象 重载重写重定义的区别: 1.重载:在同一个类中进行; 编译时根据参数类型和个数决定方法调用; 子类无法重载父类; ...

  2. 用kubeadm 搭建 高可用集群问题记录和复盘整个过程 - 通过journalctl -u kubelet.service命令来查看kubelet服务的日志

    1.根据  https://github.com/cookeem/kubeadm-ha/blob/master/README_CN.md  去搭建ha集群,遇到几个问题: runtime networ ...

  3. 配虚拟ip脚本

    cat /home/master/init_pandora.sh #! /bin/shuser=`whoami`if [ $user = 'master' ]then sudo /sbin/ifcon ...

  4. 用javascript制作2048游戏的思路(原创若 转载请附上本链接)

    一.项目已上传至github,地址:https://github.com/forjuan/2048game 二.学习了javascript基础后,想要捣鼓点东西做,做了一个自己以前很爱玩的2048游戏 ...

  5. Nivo Slider用法

    示例代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  6. 自学tensorflow——2.使用tensorflow计算线性回归模型

    废话不多说,直接开始 1.首先,导入所需的模块: import numpy as np import os import tensorflow as tf 关闭tensorflow输出的一大堆硬件信息 ...

  7. 利用Dropbox中转自己的C2

    利用Dropbox中转自己的C2 0x00 前言 本来的目的呢,是利用dropbox中转自己的c2达到免杀的效果,然后可能是看了文章太久没抓住机会复现,到最后发现已经失效了,会被360拦截,所以好像也 ...

  8. nginx如何做到TCP的负载均衡

    原文:https://blog.csdn.net/u011218159/article/details/50966861   TCP 的 负载均衡   这个片段描述了如何通过nginx plus进行负 ...

  9. Java序列化与反序列化(实践)

    Java序列化与反序列化(实践) 基本概念:序列化是将对象状态转换为可保持或传输的格式的过程.与序列化相对的是反序列化,它将流转换为对象.这两个过程结合起来,可以轻松地存储和传输数据. 昨天在一本书上 ...

  10. WPF 访问外部的xaml文件

    原文:WPF 访问外部的xaml文件 今天做主题时,需要访问外部的xaml文件,方法: using (FileStream s = new FileStream("C:\\Control.x ...