- 浏览: 80310 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (95)
- Linux(CentOS) (17)
- ubuntu (16)
- linux命令 (13)
- java基础 (8)
- eclipse maven (1)
- ubuntu xen (0)
- samba (1)
- jdk (1)
- linux (1)
- jenkins (1)
- MySQL (4)
- spring (1)
- redis (2)
- zookeeper (3)
- java多线程 (3)
- 线程池 (2)
- 工具类 (1)
- 技术问答 (1)
- 算法 (1)
- eclipse JVM (1)
- hadoop配置 (2)
- hadoop配置 HDFS (0)
- ubuntu svn (1)
- hadoop (5)
- mapReduce (1)
- HDFS (2)
- hive (3)
- flume (1)
- python (6)
- centos (1)
- svn (1)
- sonar (1)
- JVM (1)
- kafka (1)
- zabbix (1)
- python paramiko (1)
- TPS (1)
- docker (4)
- ssh (2)
- Go (1)
最新评论
下面就讲一下如何采用Apache+SVN,实现以http的方式享受SVN服务,示例用户名为jzk。
一、Apache
1、安装Apache
如果报如下错误:
需要更新源
2、修改端口
因为nginx默认情况应该是占用了80端口,而apache默认也应该使用的是80端口,所以会发生端口冲突。
将上面2个文件中的80端口修改8099,或者其他,然后在重新启动apache
3、配置多站点
a、修改配置文件
b、修改001-filehost.conf文件
将文件中的DocumentRoot部分替换为以下部分:
同时编辑文件 /etc/apache2/apache2.conf,在里面加入如下内容:
c、激活站点 001-filelist.conf
二、SVN
1、安装SVN命令如下:
2、查看/etc/apache2/mods-enabled/dav_svn.load文件,有mod_dav_svn.so和mod_authz_svn.so这两个动态库说明apache已经加载了Subversion的访问控制模块。如果没有,手动添加。
3、在/home目录下创建一个SVN项目仓库(repository),指令如下:
运行创建版本库的命令,指定数据存储为 FSFS,如果要指定为 Berkeley DB,则将 fsfs 替换为 bdb。
如果一切正常,命令执行后没有任何反馈信息而迅速返回。一个新的版本库就被创建出来。我们可以查看下版本库里有什么。
用如下命令我们可以测试下Subversion能不能检出。
4、 Subversion添加用户
首次创建需要添加-c选项,将登录Ubuntu系统的用户jzk添加到SVN用户中。
如果再次添加用户的话不需要添加-c选项了,如果添加-c选项,之前已经添加的用户就会消失,相当于从新开始了。如下:
5、添加svnAdmin的用户组,并将账号jzk添加到这个组中,命令如下:
顺带解释一下用到的2个参数
# 其中-G指定用户添加到哪个组中
-a 参数的意义等同于 -dR --preserve=all
就是以下几个意义的组合:
-d: 保持软链接
-R: 递归
--preserve=all :保持文件原有属性
这里-a表明我们只是将用户jzk添加到svnadmin这个组中,用户多了一个所属的用户组,但是不会从之前所属的用户组中脱离出来。
6、 Subversion分配用户权限
授权用户权限命令如下:
编辑内容:
其中* = 表示其它所有用户都没有任何权限。@表示用户组,*表示所有用户,[/]表示全部目录。注意顶格写。UTF-8格式才能配置SVN权限,Linux下默认是UTF-8,Windows下有转换工具,比如Eclipse->Edit->最后一项。一般针对最末梢文件设置权限。
特别注意:权限分配时,不能写成cen, huang =r,这样提交时会出现错误:svn Commit failed checkout of 403 forbidden。应该写成cen = r和huang = r
设置SVN开机启动
a、创建执行脚本svn.sh
b、添加可执行权限
c、添加自动运行
在最后添加一行内容如下:
重启服务器
7、配置Apache,以http的协议方式访问SVN服务。
在安装libapache2-svn的时候,生成了一个路径为/etc/apache2/mods-available/dav_svn.conf的文件,接下来我们对其进行些许的修改来完成对Apache的配置。
修改完的dav_svn.conf内容如下所示:
8、重启SVN:
9、访问
http://192.168.36.135:8099/svn/repos/
Subversion添加项目
我以统一的版本库为例,添加三个项目business,develop和project。首先在一个临时目录下,根据 Subversion 版本控制的一般布局结构,创建出三个项目的主要目录树,命令如下:
然后用 svn import 命令导入已有的目录树。
可以用 svn list 确认导入的项目是否正确:
如果要查看最新修订版本的信息,可以使用 svnlook info 命令:
还可以在命令后面接上 “--revision 版本号” 来指定某一个修订版的显示。
还可以用如下命令来显示版本库的具体树形结构,后面的 “--show-ids” 选项指定显示每一个显示元素的修改版本 ID。
重启之后我们在浏览器中键入SVN项目的访问地址就可以查看项目中的内容了,假定我们配置服务器的IP地址为192.168.36.135,那么我们在浏览器中可键入http://192.168.36.135/svn/respo/进行访问。
以上我们介绍的是SVN服务器端的安装和配置,在客户端可以安装一个SVN的客户端软件,如TortoiseSVN这个软件。TortoiseSVN的安装使用都非常方便,但是在第一次使用的时候可能会遇到一些小问题,如在TortoiseSVN Commit时报出错误:
svn: Can't open file '/home/svn/repos/db/txn-current-lock': Permission denied
消除这种错误的解决方法是给SVN目录添加读写权限,命令如下:
一、Apache
1、安装Apache
sudo apt-get install apache2
如果报如下错误:
Package apache is not available, but is referred to by another package
需要更新源
sudo apt-get update sudo apt-get upgrade
2、修改端口
因为nginx默认情况应该是占用了80端口,而apache默认也应该使用的是80端口,所以会发生端口冲突。
sudo vim /etc/apache2/ports.conf sudo vim /etc/apache2/sites-available/000-default.conf
将上面2个文件中的80端口修改8099,或者其他,然后在重新启动apache
sudo /etc/init.d/apache2 restart
3、配置多站点
a、修改配置文件
$ cd /etc/apache2/sites-available $ sudo cp 000-default.conf 001-filehost.conf
b、修改001-filehost.conf文件
将文件中的DocumentRoot部分替换为以下部分:
DocumentRoot /home/www Options +Indexes IndexOptions FancyIndexing FoldersFirst NameWidth=* DescriptionWidth=*
同时编辑文件 /etc/apache2/apache2.conf,在里面加入如下内容:
<Directory /home/www/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
c、激活站点 001-filelist.conf
sudo a2ensite 001-* sudo a2dissite 000-* service apache2 reload #无效 sudo /etc/init.d/apache2 restart
二、SVN
1、安装SVN命令如下:
sudo apt-get install subversion sudo apt-get install libapache2-svn sudo apt-get install apache2-utils
2、查看/etc/apache2/mods-enabled/dav_svn.load文件,有mod_dav_svn.so和mod_authz_svn.so这两个动态库说明apache已经加载了Subversion的访问控制模块。如果没有,手动添加。
sudo vim /etc/apache2/mods-enabled/dav_svn.load LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so
3、在/home目录下创建一个SVN项目仓库(repository),指令如下:
sudo mkdir -pv /home/svn/repos #创建SVN项目仓库 sudo svnadmin create --fs-type fsfs /home/svn/repos /** sudo chown -R root:subversion repos #将repos这个目录下的所有文件和目录转移所有权给subversion用户组中的用户root;-R对目前目录下的所有档案与子目录进行相同的拥有者变更 sudo svnadmin create /home/svn/repos #用SVN自带的工具svnadmin create创建SVN项目仓库 sudo chmod -R g+rws repos #赋予组成员对所有新加入项目仓库repos的文件和目录均拥有相应的权限 **/
运行创建版本库的命令,指定数据存储为 FSFS,如果要指定为 Berkeley DB,则将 fsfs 替换为 bdb。
如果一切正常,命令执行后没有任何反馈信息而迅速返回。一个新的版本库就被创建出来。我们可以查看下版本库里有什么。
用如下命令我们可以测试下Subversion能不能检出。
sudo svn co file:///home/svn/repos/
4、 Subversion添加用户
sudo touch /home/svn/passwd.conf sudo touch /home/svn/authz.conf
sudo htpasswd -c /home/svn/passwd.conf jzk
首次创建需要添加-c选项,将登录Ubuntu系统的用户jzk添加到SVN用户中。
如果再次添加用户的话不需要添加-c选项了,如果添加-c选项,之前已经添加的用户就会消失,相当于从新开始了。如下:
sudo htpasswd /etc/subversion/passwd new_jzk
5、添加svnAdmin的用户组,并将账号jzk添加到这个组中,命令如下:
sudo addgroup svnadmin sudo usermod -G svnadmin -a jzk
顺带解释一下用到的2个参数
# 其中-G指定用户添加到哪个组中
-a 参数的意义等同于 -dR --preserve=all
就是以下几个意义的组合:
-d: 保持软链接
-R: 递归
--preserve=all :保持文件原有属性
这里-a表明我们只是将用户jzk添加到svnadmin这个组中,用户多了一个所属的用户组,但是不会从之前所属的用户组中脱离出来。
6、 Subversion分配用户权限
授权用户权限命令如下:
sudo vim /home/svn/authz.conf
编辑内容:
#用户组指令 [groups] svnadmin = jzk,将用户jzk添加到用户组svnAdmin #其他组 [repos:/] @svnadmin = rw #为用户组subversion添加读写权限 * =
其中* = 表示其它所有用户都没有任何权限。@表示用户组,*表示所有用户,[/]表示全部目录。注意顶格写。UTF-8格式才能配置SVN权限,Linux下默认是UTF-8,Windows下有转换工具,比如Eclipse->Edit->最后一项。一般针对最末梢文件设置权限。
特别注意:权限分配时,不能写成cen, huang =r,这样提交时会出现错误:svn Commit failed checkout of 403 forbidden。应该写成cen = r和huang = r
设置SVN开机启动
a、创建执行脚本svn.sh
#sudo touch /root/svn.sh sudo vim /root/svn.sh #输入如下内容 #!/bin/bash svnserve -d -r /home/svn
b、添加可执行权限
sudo chmod ug+x /root/svn.sh
c、添加自动运行
sudo vim /etc/init.d/rc.local
在最后添加一行内容如下:
/root/svn.sh
重启服务器
7、配置Apache,以http的协议方式访问SVN服务。
在安装libapache2-svn的时候,生成了一个路径为/etc/apache2/mods-available/dav_svn.conf的文件,接下来我们对其进行些许的修改来完成对Apache的配置。
sudo vim /etc/apache2/mods-available/dav_svn.conf
修改完的dav_svn.conf内容如下所示:
<Location /svn> DAV svn SVNParentPath /home/svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /home/svn/passwd.conf AuthzSVNAccessFile /home/svn/authz.conf Require valid-user </Location>
8、重启SVN:
sudo killall svnserve svnserve -d -r /home/svn --config-file /home/svn/repos/conf/svnserve.conf sudo /etc/init.d/apache2 restart
9、访问
sudo /etc/init.d/apache2 restart
http://192.168.36.135:8099/svn/repos/
Subversion添加项目
我以统一的版本库为例,添加三个项目business,develop和project。首先在一个临时目录下,根据 Subversion 版本控制的一般布局结构,创建出三个项目的主要目录树,命令如下:
sudo mkdir /home/temp sudo mkdir /home/temp/develop sudo mkdir /home/temp/business sudo mkdir /home/temp/project
然后用 svn import 命令导入已有的目录树。
svn import /home/svn/tmp/ file:///home/svn/repos/ --message "init"
可以用 svn list 确认导入的项目是否正确:
svn list --verbose file:///home/svn/repos/
如果要查看最新修订版本的信息,可以使用 svnlook info 命令:
svnlook info /home/svn/repos/
还可以在命令后面接上 “--revision 版本号” 来指定某一个修订版的显示。
还可以用如下命令来显示版本库的具体树形结构,后面的 “--show-ids” 选项指定显示每一个显示元素的修改版本 ID。
svnlook tree /home/svn/repos/ --show-ids
重启之后我们在浏览器中键入SVN项目的访问地址就可以查看项目中的内容了,假定我们配置服务器的IP地址为192.168.36.135,那么我们在浏览器中可键入http://192.168.36.135/svn/respo/进行访问。
以上我们介绍的是SVN服务器端的安装和配置,在客户端可以安装一个SVN的客户端软件,如TortoiseSVN这个软件。TortoiseSVN的安装使用都非常方便,但是在第一次使用的时候可能会遇到一些小问题,如在TortoiseSVN Commit时报出错误:
svn: Can't open file '/home/svn/repos/db/txn-current-lock': Permission denied
消除这种错误的解决方法是给SVN目录添加读写权限,命令如下:
cd /home/svn/repos sudo chown jzk:1 -R db/ sudo chmod 777 -R db/
发表评论
-
制作ubuntu启动盘
2015-03-23 13:59 551http://www.ubuntu.com/download/ ... -
Ubuntu新建用户
2015-03-18 14:20 405新建用户的命令是useradd,修改密码是passwd,如下: ... -
Linux文件系统
2014-11-01 21:35 4061、查看系统分区 df 【-h】 2、查看文件、目录大小 d ... -
ubuntu14.04更换源
2014-08-22 15:20 7361、备份 sudo cp /etc/apt/sources ... -
ubuntu14.04安装jenkins
2014-08-19 16:39 8601、安装 wget -q -O - http://pkg. ... -
Ubuntu14.04server 修改时间
2014-08-18 11:31 534sudo dpkg-reconfigure tzdata ... -
ubuntu14.04开放端口
2014-08-06 19:58 2352jzk@ubuntu:$ sudo ufw enable ... -
Ubuntu14.04server 下安装samba
2014-08-06 12:34 39291、安装samba sudo apt-get instal ... -
Ubuntu14.04 安装nginx
2014-07-31 17:16 889=============================== ... -
ubuntu14.04安装maven
2014-07-20 22:19 15721、下载maven http://maven.apache. ... -
linux文件夹权限问题
2014-07-20 16:08 6571、sudo chmod 777 /usr/local/j ... -
Ubuntu配置SSH服务
2014-07-08 20:00 5131、Ubuntu14.04缺省没有安装SSH Server,使 ... -
ubuntu安装eclipse
2014-06-24 22:12 5921、下载http://www.eclipse.org/down ... -
ubuntu14.04安装tomcat8
2014-06-23 23:24 24501、http://tomcat.apache.org/down ... -
ubuntu14.04 安装JDK8
2014-06-22 23:14 1219http://www.oracle.com/technetwo ...
相关推荐
在Ubuntu 14.04上安装Docker是许多系统管理员和开发者的需求,尤其是在没有互联网连接或者网络环境受限的情况下。Docker是一个开源的应用容器引擎,它允许开发者将他们的应用及其依赖打包到一个可移植的容器中,然后...
5. 安装和配置Ubuntu系统:完成虚拟机配置后,通过虚拟机启动并加载Ubuntu 14.04的安装镜像,按照提示进行操作系统的安装。在这个过程中,可能会有一些特定的配置要求,如时区设置、语言选择、磁盘分区等。对于磁盘...
Ubuntu 14.04 安装配置 NFS 服务器 NFS(Network File System)是一种允许多个电脑通过网络共享文件的系统。它使得不同的计算机可以通过网络访问和共享对方的文件,实现了文件的共享和交换。在 Ubuntu 14.04 中,...
Ubuntu 14.04 安装 GitLab 指南 GitLab 是一个用于仓库管理系统的开源项目,使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务。它提供 Git 版本控制版本控制、代码检查、Bug 跟踪和 Wiki,它可以通过 ...
在Ubuntu 14.04上离线安装NFS涉及到几个关键步骤,包括理解NFS的基本概念、准备安装包、配置NFS服务器以及设置客户端。下面将详细介绍这个过程。 1. **NFS基本概念**:NFS由Sun Microsystems开发,是一种标准的...
Ubuntu 14.04 设置 Apache 虚拟主机的方法 在本教程中,我们将学习如何在 Ubuntu 14.04 上设置 Apache 虚拟主机。虚拟主机是一种允许多个域名共享同一个IP地址的技术,它广泛应用于 Web 服务器中。在本教程中,我们...
有关在Ubuntu 14.04上安装UHD和GNURdio的教程,自己总结的
在 Ubuntu 14.04 中,默认情况下 root 帐号是禁用的,这是为了安全考虑。但是在某些情况下,我们需要使用 root 帐号来进行系统管理和维护。下面我们将介绍如何启用 root 帐号、如何在终端模式下切换到 root 身份,...
本文档详细介绍了在 Ubuntu 14.04 系统上升级 GCC 到 4.9.3 版本的步骤。GCC 是一个强大的编译器,支持 C++11 和 C++14 特性。在 Ubuntu 14.04 系统中,默认的 GCC 版本是 4.8.2,本文将指导用户如何升级到 4.9.3 ...
........Ubuntu 14.04 64位Linux操作系统IOS镜像下载..........................................................................................................................................................
mysql-ubuntu14.04系统版
以下将详细讲解如何在Ubuntu 14.04上进行NFS的离线安装,并介绍相关的依赖包。 首先,你需要下载Ubuntu 14.04的NFS离线安装包,这个包应该包含了NFS服务及其所有必需的依赖。在没有网络的情况下,你可以通过其他有...
复制文件内百度网盘分享地址ubuntu-14.04-desktop-amd64.iso
Ubuntu 14.04系统下能用的vscode客户端(新版本在启动时无响应,且无法打开终端),版本号:code_1.42.1-1581432938_amd64.deb 使用方法:解压后执行sudo dpkg -i code*
sudo dpkg -i openssh-client_6.6p1-2ubuntu1_amd64.deb sudo dpkg -i openssh-sftp-server_6.6p1-2ubuntu1_amd64.deb sudo dpkg -i libck-connector0_0.4.5-3.1ubuntu2_amd64.deb sudo dpkg -i openssh-server_6.6...
2. **安装常用软件**:Ubuntu 14.04预装了一些基础应用,但可能并不包括所有你需要的。你可以通过`sudo apt-get install`命令安装例如办公软件(LibreOffice)、媒体播放器(VLC)、浏览器(Firefox)等。 3. **...
在本文中,我们将详细讨论如何在Ubuntu 14.04上配置Caffe环境,包括安装GCC 4.7、相关依赖、NVIDIA驱动以及CUDA。Caffe是一种高效的深度学习框架,广泛应用于图像识别和计算机视觉任务。由于Ubuntu 14.04自带的GCC...
在本场景中,我们关注的是在Ubuntu 14.04操作系统上安装和配置Apache Tomcat 8.0.15的过程。这个过程涉及到几个关键步骤,包括下载、解压、配置环境变量、启动服务以及进行基本的故障排查。 首先,我们需要从官方...
在Ubuntu 14.04系统中安装indigo版本ROS的教程内容涵盖了从系统软件源配置、添加ROS软件源、导入公钥、安装ROS不同版本到初始化rosdep和设置环境变量等多个方面。本文将详细介绍这些知识点。 首先,配置Ubuntu的...
Ubuntu14.04中安装配置bochs详解。亲自安装成功。