您的位置:首页 > 运维架构 > Linux

linux虚拟机上svn客户端连接问题

2016-09-06 11:35 363 查看

背景     

       在搭建好的虚拟机上搭建好svn后,在用SVN客户端连接时出现了一些问题,费了好大的劲儿,最终在有经验的高手的帮助下顺利解决。下面就自己的问题来分析一下。

问题

        Can‘t connect to host '192.167.33.10':由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。



原因

       1、IP可能被占用,换一个没有被占用的IP地址

       2、防火墙的3690端口没有对外开放

解决方案

       第一步:修改配置文件:vi /etc/sysconfig/iptables
<span style="font-size:18px;"> # Firewall configuration written by system-config-securitylevel

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

:RH-Firewall-1-INPUT - [0:0]

-A INPUT -j RH-Firewall-1-INPUT

-A FORWARD -j RH-Firewall-1-INPUT

-A RH-Firewall-1-INPUT -i lo -j ACCEPT

-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT

-A RH-Firewall-1-INPUT -p 50 -j ACCEPT

-A RH-Firewall-1-INPUT -p 51 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT

-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

COMMIT </span>

      第二步:换Ip地址,打开Vagrantfile文件进行修改,修改结果如下。

<span style="font-size:18px;"># Create a private network, which allows host-only access to the machine
# using a specific IP.
config.vm.network "private_network", ip: "<span style="color:#FF0000;">192.168.11.18</span>"</span>       第二步:重启虚拟机
       第三步:修改Xshell中的会话,修改结果如下:



           第四步:重新进入到SVN进行配置,然后启动SVN

            <span style="font-size:18px;">[root@localhost vagrant]# mkdir -p /var/svn/svnrepos
[root@localhost vagrant]# svnadmin create /var/svn/svnrepos
svnadmin: E165002: '/var/svn/svnrepos' is an existing repository
[root@localhost vagrant]# cd /var/svn/svnrepos
[root@localhost svnrepos]# ls
conf db format hooks locks README.txt
[root@localhost svnrepos]# cd conf
[root@localhost conf]# ls
authz passwd svnserve.conf
[root@localhost conf]# vi passwd
[root@localhost conf]# vi authz
[root@localhost conf]# vi svnserve.conf
[root@localhost conf]# svnserve -d -r /var/svn/svnrepos
</span>
          第五步:添加入站规则,再启动SVN

<span style="font-size:18px;">[root@localhost conf]# /sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT
[root@localhost conf]# /etc/init.d/iptables save
bash: /etc/init.d/iptables: No such file or directory
[root@localhost conf]# service iptables restart
Redirecting to /bin/systemctl restart iptables.service
Failed to issue method call: Unit iptables.service failed to load: No such file or directory.
[root@localhost conf]# svnserve -d -r /var/svn/svnrepos
svnserve: E000098: Can't bind server socket: Address already in use
</span>      到这里再用SVN客户端连接服务器就没有问题了。

技巧小扩展

       自己安装软件的路径尽量用全英文没有空格,否则很可能会出现一些问题,偶已经在这方面吃过大亏了,谨记哦。

小结

        当自己遇到问题时,不要气馁,去网上找资料,做试验,请教已经在这方面有经验的人,  问题总能够解决。如果碰到了问题全世界都不会,那你就可以申请专利了,哈哈!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息