Ubuntu下安装配置Svn+Apache服务器
软件环境:
Ubuntu 10.04 桌面版
Subversion
Apache
第一、安装 Subversion。如果不需要Apache的话, 只看第一步就可以了。
1. 安装Subversion软件,这里只需要一条语句
sudo apt-get install subversion
2. 创建仓库
svnadmin create /home/wys/svn
/home/wys/svn 为svn仓库所要创建到的目录,如创建目录的位置需要root权限,使用sudo svnadmin
3. 修改配置文件
sudo gedit /home/wys/svn/conf/svnserve.conf
#去掉#[general]前面的#号
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#认证用户的权限,可以是read,write,none,默认为write
auth-access = write
#密码数据库的路径,去掉前面的#
password-db = passwd
4. 修改配置文件 passwd
[users]
admin = admin
一定要去掉[users]前面的#,否则svn只能以匿名用户登录,客户端不会出现登录窗口,除非你的anon不为none,否则将返回一个错误。这里的密码是没有加密的,后面在apache时,会讲到用htppasswd生成加密的密码。
到这里,Svn服务器已经配置好了。
#停止Subversion服务器
sudo killall svnserve
#启动Subversion服务器
svnserve -d -r /home/wys/svn
其中-d表示在后台运行,-r指定服务器的根目录,这样访问服务器时就可以直接 用svn://服务器ip来访问了。
第二、安装apache服务器
1. 安装Apache服务器
sudo apt-get install libapache2-svn
sudo apt-get install apache2
2.此时如果出现以下错误:
sudo /etc/inid.d/apache2 restart 时失败
提示:No apache MPM package installed
则还要下载一个文件,执行以下命令:
sudo apt-get install apache2-mpm-worker
3. 添加subversion管理用户及subversion组
sudo adduser svnuser
sudo addgroup subversion
sudo addgroup svnuser subversion
4. 版本仓库。
版本仓库我们用第一步中所创建的,这时需要为它加一些用户权限
这里要为apache用到的www-data添加权限
sudo chown -R root:subversion /home/wys/svn
sudo chown -R www-data:www-data /home/wys/svn
赋予组成员对所有新加入文件仓库拥有相应的权限
sudo chmod -R g+rws /home/wys/svn
5. 添加用户并设置权限
这里注意了,通过http访问的账号是Apachehttp验证的。
通过svn://访问的账号是svn仓库conf目录下passwd指定的。两个是独立的认证方式。
如果用同一个passwd文件 就会出现 http跟svn只能有其中一个能访问
因为htpasswd创建用户的密码是加密的,相反原始passwd文件里的用户是没加密的
这里我们用htpasswd创建密码文件,取名pwdfile
htpasswd -c /home/wys/svn/conf/pwdfile admin
执行上面语句后,创建admin账号,以及会要输入密码等东东,安提示完成就行了。
如果要加第二个用户,要把 -c 参数去掉,否则会覆盖掉前面文件。
6. 配置httpd.conf文件
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
在最后面添加下面内容
<Location /svn>
DAV svn
SVNPath /home/wys/svn
AuthType Basic
AuthName "SVN 认证名称"
AuthUserFile /home/wys/svn/conf/pwdfile
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
此时 AuthUserFile ,要指定pwdfile
7. 重启apache和svn就可以了
sudo /etc/init.d/apache2 restart
sudo svnserve -d -r /home/wys/svn
8. 打开浏览器 访问: http://192.168.159.131/svn 输入 admin 密码:admin 就可以进去了!
软件环境:
Ubuntu 10.04 桌面版
Subversion
Apache
第一、安装 Subversion。如果不需要Apache的话, 只看第一步就可以了。
1. 安装Subversion软件,这里只需要一条语句
sudo apt-get install subversion
2. 创建仓库
svnadmin create /home/wys/svn
/home/wys/svn 为svn仓库所要创建到的目录,如创建目录的位置需要root权限,使用sudo svnadmin
3. 修改配置文件
sudo gedit /home/wys/svn/conf/svnserve.conf
#去掉#[general]前面的#号
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#认证用户的权限,可以是read,write,none,默认为write
auth-access = write
#密码数据库的路径,去掉前面的#
password-db = passwd
4. 修改配置文件 passwd
[users]
admin = admin
一定要去掉[users]前面的#,否则svn只能以匿名用户登录,客户端不会出现登录窗口,除非你的anon不为none,否则将返回一个错误。这里的密码是没有加密的,后面在apache时,会讲到用htppasswd生成加密的密码。
到这里,Svn服务器已经配置好了。
#停止Subversion服务器
sudo killall svnserve
#启动Subversion服务器
svnserve -d -r /home/wys/svn
其中-d表示在后台运行,-r指定服务器的根目录,这样访问服务器时就可以直接 用svn://服务器ip来访问了。
第二、安装apache服务器
1. 安装Apache服务器
sudo apt-get install libapache2-svn
sudo apt-get install apache2
2.此时如果出现以下错误:
sudo /etc/inid.d/apache2 restart 时失败
提示:No apache MPM package installed
则还要下载一个文件,执行以下命令:
sudo apt-get install apache2-mpm-worker
3. 添加subversion管理用户及subversion组
sudo adduser svnuser
sudo addgroup subversion
sudo addgroup svnuser subversion
4. 版本仓库。
版本仓库我们用第一步中所创建的,这时需要为它加一些用户权限
这里要为apache用到的www-data添加权限
sudo chown -R root:subversion /home/wys/svn
sudo chown -R www-data:www-data /home/wys/svn
赋予组成员对所有新加入文件仓库拥有相应的权限
sudo chmod -R g+rws /home/wys/svn
5. 添加用户并设置权限
这里注意了,通过http访问的账号是Apachehttp验证的。
通过svn://访问的账号是svn仓库conf目录下passwd指定的。两个是独立的认证方式。
如果用同一个passwd文件 就会出现 http跟svn只能有其中一个能访问
因为htpasswd创建用户的密码是加密的,相反原始passwd文件里的用户是没加密的
这里我们用htpasswd创建密码文件,取名pwdfile
htpasswd -c /home/wys/svn/conf/pwdfile admin
执行上面语句后,创建admin账号,以及会要输入密码等东东,安提示完成就行了。
如果要加第二个用户,要把 -c 参数去掉,否则会覆盖掉前面文件。
6. 配置httpd.conf文件
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
在最后面添加下面内容
<Location /svn>
DAV svn
SVNPath /home/wys/svn
AuthType Basic
AuthName "SVN 认证名称"
AuthUserFile /home/wys/svn/conf/pwdfile
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
此时 AuthUserFile ,要指定pwdfile
7. 重启apache和svn就可以了
sudo /etc/init.d/apache2 restart
sudo svnserve -d -r /home/wys/svn
8. 打开浏览器 访问: http://192.168.159.131/svn 输入 admin 密码:admin 就可以进去了!
用svn客户端访问: svn://192.168.159.131 输入用户名和密码就可以进去了!