Linux非root用户部署SVN
1. 创建普通用户
useradd svn
passwd svn
2. 上传安装包至/home/svn/
打包下载
zlib-1.2.11.tar.xz
apr-1.7.0.tar.gz
apr-util-1.6.1.tar.gz
sqlite-autoconf-3330000.tar.gz
subversion-1.14.0.tar.gz
expat_2.0.1.orig.tar.gz
3. 依赖安装:
su - root
yum install -y gcc
4. 解压安装包
su - svn
cd /home/svn/
tar -xf zlib-1.2.11.tar.xz
tar -zxf apr-1.7.0.tar.gz
tar -zxf apr-util-1.6.1.tar.gz
tar -zxf sqlite-autoconf-3330000.tar.gz
tar -zxf subversion-1.14.0.tar.gz
tar -zxf expat_2.0.1.orig.tar.gz
5. 安装apr
cd apr-1.7.0
vim configure
将RM=’$RM’ 改为 RM=’$RM -f’
./configure --prefix=/home/svn/apr-1.7.0
make && make install
6. 安装expat
cd expat-2.0.1/
./configure --prefix=/home/svn/expat-2.0.1/
make && make install
7. 安装apr-util
cd apr-util-1.6.1
./configure --prefix=/home/svn/apr-util-1.6.1 --with-apr=/home/svn/apr-1.7.0/ --with-expat=/home/svn/expat-2.0.1/
make && make install
vim /home/svn/apr-util-1.6.1/.libs/libaprutil-1.lai
vim /home/svn/apr-util-1.6.1/lib/libaprutil-1.la
将
dependency_libs=' -L/home/svn/expat-2.0.1/lib /usr/local/lib/libexpat.la /usr/local/apr/lib/libapr-1.la -lrt -lcrypt -lpthread -ldl'
修改为
dependency_libs=' -L/home/svn/expat-2.0.1/lib /home/svn/expat-2.0.1/lib/libexpat.la /home/svn/apr-1.7.0/lib/libapr-1.la -lrt -lcrypt -lpthread -ldl'
8. 安装zlib
cd zlib-1.2.11
./configure --prefix=/home/svn/zlib-1.2.11
make && make install
9. 安装sqllite
cd sqlite-autoconf-3330000
./configure --prefix=/home/svn/sqlite-autoconf-3330000
make && make install
10. 安装subversion
cd subversion-1.14.0
./configure --prefix=/home/svn/subversion-1.14.0 --with-apr=/home/svn/apr-1.7.0 --with-apr-util=/home/svn/apr-util-1.6.1 --with-zlib=/home/svn/zlib-1.2.11 --with-sqlite=/home/svn/sqlite-autoconf-3330000 --with-lz4=internal --with-utf8proc=internal
make && make install
11. 配置svn环境变量
vim ~/.bash_profile
添加
PATH=/home/svn/subversion-1.14.0/bin:$PATH
source ~/.bash_profile
12. 验证svn
svnserve --version
13. 配置仓库
mkdir -p /home/svn/myproject
svnadmin create /home/svn/myproject
将/home/svn/myproject/conf/中的passwd和authz拷贝到单独目录/home/svn/auth/,可以在多个项目使用此认证文件
mkdir /home/svn/auth/
cp /home/svn/myproject/conf/{passwd,authz} /home/svn/auth/
14. 修改用户
vim /home/svn/auth/passwd
[users]
boy = boy123
girl = girl123
chmod 600 /home/svn/auth/passwd
15. 修改权限
vim /home/svn/auth/authz
[groups]
tech = boy girl
[myproject:/]
boy = rw
girl = r
16. 修改项目配置文件svnserve.conf
vim /home/svn/myproject/conf/svnserve.conf
anon-access = none
auth-access = write
password-db = /home/svn/auth/passwd
authz-db = /home/svn/auth/authz
17. 启动svn
svnserve -d --listen-port 3690 -r /home/svn/
18. svn客户端登录地址
svn://192.168.10.143/myproject
19. 添加其他项目
a. 创建项目mytestd的目录
mkdir /home/svn/mytest
b. svn赋权
svnadmin create /home/svn/
c. 修改项目目录下的配置文件
vim /home/svn/mytest/svnserve.conf