linux配置svn
yum install subversion
svnserve --version
3、创建目录并配置
mkdir -pv /data/svn/svnrepos
配置
svnadmin create /data/svn/svnrepos
执行上面的命令后,自动建立repo测试库,查看/data/svn/svnrepos文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。
vim /data/svn/svnrepos/conf/passwd
建立用户attendre,密码123456
5、权限配置
设置哪些用户可以访问哪些目录
vim /data/svn/svnrepos/conf/authz
vim /data/svn/svnrepos/conf/svnserve.conf
在[general]下追加以下内容
#匿名访问的权限,可以是read,write,none,默认为read anon-access=none ##使授权用户有写权限 auth-access=write ##密码数据库的路径 password-db=passwd ##访问控制文件 authz-db=authz ##认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字 realm=/data/svn/svnrepos
查看svn的服务是否启动
ps -ef|grep svn
如果没有启动执行 下面命令即可:
svnserve -d -r /data/svn/svnrepos --listen-port=3690
#防火墙中开启3690端口 firewall-cmd --permanent --zone=public --add-port=3690/tcp #重新加载防火墙配置 firewall-cmd --reload #查看是否生效 firewall-cmd --zone=public --query-port=3690/tcp
9、访问
输入配置好的用户名和密码即可。
上面步骤配置的是svn协议,下面配置http协议。
10、使用http协议连接svn
10.1、安装Apache
yum install -y httpd mod_dav_svn 安装httpd和svn模块
10.2、查看版本
httpd -version
查看是否有mod_dav_svn.so和mod_authz_svn.so模块,如果有,说明mod_dav_svn安装成功!
ls /etc/httpd/modules/
PS:Apache常用命令如下:
httpd -v #查看已经安装的httpd的版本 rpm -qa | grep httpd #查看是否已经安装了httpd ps -ef | grep httpd #查看httpd的进程 service httpd status #查看httpd的运行状态 service httpd stop #可以停止httpd service httpd start #可以启动httpd
10.3、修改配置文件(没有则新建)
vim /etc/httpd/conf.d/subversion.conf
LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn> DAV svn SVNListParentPath on SVNParentPath /data/svn AuthType Basic Satisfy Any AuthName "Subversion repos" AuthUserFile /data/svn/svnrepos/conf/http_passwd AuthzSVNAccessFile /data/svn/svnrepos/conf/authz Require valid-user </Location>
10.4、设置权限
chown apache:apache /data/svn/svnrepos -R
10.5、设置Apache http访问用户名,按提示输入两次相同密码
注意:这里的用户名密码要和svn里配置的一样。passwd和http_passwd文件中,账号密码必须设置相同。
htpasswd -cm /data/svn/svnrepos/conf/http_passwd attendre
PS:htpasswd命令是Apache的Web服务器内置工具,用于创建和更新储存用户名、域和用户基本认证的密码文件。
-c:创建一个加密文件;
-m:默认采用MD5算法对密码进行加密;
-D:删除指定的用户。
-b:在命令行中一并输入用户名和密码而不是根据提示输入密码;
service httpd start service httpd status
如果启动失败 ,查看对应的报错信息。
10.7、设置开机启动
chkconfig httpd on #设置开机启动
10.8、nginx反向代理配置,也在刚才问题的链接中。
番外:配置svn开机自启
1、在目录/usr/local 下面创建一个svn.sh文件
cd /usr/local vi svn.sh
#!/bin/bash
/usr/bin/svnserve -d -r /data/svn/svnrepos
备注 :这里的svnserve路径保险起见,最好写绝对路径,因为启动的时候,环境变量也许没加载。
# 绝对路径查询命令 which svnserve
3、改该脚本的执行权限
chmod 777 svn.sh
vi /etc/rc.d/rc.local # 在末尾添加脚本的路径 /usr/local/svn.sh
reboot ps -ef|grep svnserve