
yum install subversion
svnserve --version
建立版本库目录
mkdir -pv /data/svn/svnrepos
配置
svnadmin create /data/svn/svnrepos
执行上面的命令后,自动建立repo测试库,查看/data/svn/svnrepos文件夹发现包含了conf, db,format,hooks, locks, 等文件,说明一个SVN库已经建立。
vim /data/svn/svnrepos/conf/passwd
建立用户attendre,密码123456
设置哪些用户可以访问哪些目录
vim /data/svn/svnrepos/conf/authz
vim /data/svn/svnrepos/f
在[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
svn://ip地址
输入配置好的用户名和密码即可。
上面步骤配置的是svn协议,下面配置http协议。
yum install -y httpd mod_dav_svn 安装httpd和svn模块
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
vim /etc/httpd/conf.f
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so<Location /svn>DAV svnSVNListParentPath onSVNParentPath /data/svnAuthType BasicSatisfy AnyAuthName "Subversion repos"AuthUserFile /data/svn/svnrepos/conf/http_passwdAuthzSVNAccessFile /data/svn/svnrepos/conf/authzRequire valid-user
</Location>
chown apache:apache /data/svn/svnrepos -R
注意:这里的用户名密码要和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
如果启动失败 ,查看对应的报错信息。
这里记录一种我启动时候遇到的报错问题。.html
chkconfig httpd on #设置开机启动
cd /usr/local
vi svn.sh
#!/bin/bash
/usr/bin/svnserve -d -r /data/svn/svnrepos
备注 :这里的svnserve路径保险起见,最好写绝对路径,因为启动的时候,环境变量也许没加载。
# 绝对路径查询命令which svnserve
chmod 777 svn.sh
vi /etc/rc.d/rc.local# 在末尾添加脚本的路径/usr/local/svn.sh
reboot
ps -ef|grep svnserve
本文发布于:2024-03-10 04:54:08,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/1710345702137869.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
| 留言与评论(共有 0 条评论) |