Linux 系统启动 svn 记录

由于后端程序都散伙了,而且不知道什么原因,应该设置为开机启动的 svn 服务器无法正常自动启动 (事后推测可能是停电后电脑重启导致的),所以只能人工手动启动。

此处记录了基本解决方法,留待参考。


1、使用的软件

一般的服务器都是不接显示器的一台单独机箱。所以我们需要通过远程访问的方式来对其进行操作。
这里我使用了两个软件来帮助我完成手动启动 svn 的宏伟工程。

第一个叫 “PuTTY” 是一款专门进行串行接口连接的程序,至于啥叫串行接口我也不知道,反正百度上是这么说的,其实单独用这个软件也完全能够搞定。主要操作都是用这个软件完成的。

第二个软件叫 “FileZilla Client”,Linux 系统的电脑如果不安装专用图形界面的话就是一团黑,但是用这个软件连接上以后可以清楚的看到对方电脑的文件路径,上传和下载文件或者找文件夹啥的挺好用的。这次用它主要的目的是用来辅助我确定找的文件和文件夹位置是否正确。

此外需要注意的一点是,使用 “PuTTY” 和 “FileZilla Client” 时需要填写一个端口号,这个端口号一般是填 “22”,貌似传个文件啥的都是用这个端口。


2、使用的命令

经过对度娘的一顿调戏查到了以下需要用到的指令:

// 导航到 home 文件夹内
cd /home
// 显示当前文件夹内部的文件(就是两个小写的 L)      		
ll          		
// 可以查看 svn 的进程信息
ps aux|grep svn   	
// xxx 是进程号,用来关闭 svn
kill -9 xxx	   		
// 启动安装在 /home/Repositories 目录下的 svn,具体的目录需要根据实际情况修改
sudo svnserve -d -r /home/Repositories	   
// 将 /home/newRepositories 目录下的 svn 的监听端口设置为 3692
svnserve -d -r /home/newRepositories --listen-port 3692		

3、操作过程

在这里插入图片描述
如图所示,其中用白线标注了 2 个文件夹 “newRepositories” 和 “Repositories” 就是我们使用的两个 svn 仓库,工程全部放在这两个地方。
而另一个被标注的文件 svnStartUp.sh 是之前后端写的统一开启工具。
直接在控制台使用命令 sh svnStartUp.sh 应该就能开启所有 svn 才对,但是实际使用后发现虽然确实开启成功了,但是所有 svn 在客户端都没法使用,既无法上传也无法下载。
所以决定进行手动操纵。

首先使用命令 ps aux|grep svn 来查看当前 svn 的进程,可以得到大致如下图所示的结果。
在这里插入图片描述
图中的 3052130529 就是当前这两个启动中的 svn 的进程号。
此时使用命令关闭这两个 svn 进程

kill -9 30521
kill -9 30529

之后再次调用 ps aux|grep svn 就会发现以上的两个进程已经消失不见了。这时我们就已经完成了对 svn 的手动关闭。

下一步就是进行手动启动 svn。

sudo svnserve -d -r /home/Repositories
sudo svnserve -d -r /home/newRepositories

此时查看进程就可以重新看到这两个 svn 的身影。至此手动启动 svn 就完成了。

需要注意的是,只是关闭和重启 svn 可以并不能解决问题,有可能在一通操作之后 svn 还是无法正常上传和下载,此时就可能是跟端口有关了。

经过查看 svn 设置的 URL 发现,newRepositories 的这个 svn 是需要监听 3692 端口的
svn://192.168.1.xxx:3692/gameSvn
svn 的默认监听端口是 3690,所以需要对其进行更改。
使用命令 svnserve -d -r /home/newRepositories --listen-port 3692 进行监听端口的修改。
修改完成后查看进程如下。
在这里插入图片描述
可以看到 newRepositoies 目录下的 svn 已经正确的监听了 3692 端口。
此时我们使用的 svn 就可以正常工作了。

Guess you like

Origin blog.csdn.net/EverNess010/article/details/100095102