首 页文章中心

Linux学习网

您的位置Linux学习网 > Linux服务器应用 > 文章内容

apache+ftp+cvs+samba开发环境搭建

作者:佚名  来源:不详  发布时间:2008-5-14 8:10:00


版本控制:CVS

CVS缺省在服务器上几乎都安装好了,只要按照以下步骤初始化即可:

在/etc/profile里:
CVS库所在的主服务器设置:
export CVSROOT=/home/cvsroot
在其他开发服务器里设置:
export CVSROOT=:ext:$USER@192.168.0.200:/home/cvsroot
export CVS_RSH=ssh

然后在主服务器上cvs init初始化:

关于CVSWEB的设置,重复以下CVS常用命令手册中CVSWEB的内容:

CVSWEB的下载:CVSWEB从最初的版本已经演化出很多功能界面更丰富的版本,这个是个人感觉安装设置比较方便的:
http://www.spaghetti-code.de/software/linux/cvsweb/

下载解包:
tar zxf cvsweb.tgz
把配置文件cvsweb.conf放到安全的地方(比如和apache的配置放在同一个目录下),
修改:cvsweb.cgi让CGI找到配置文件:
$config = $ENV{’CVSWEB_CONFIG’} || ’/path/to/apache/conf/cvsweb.conf’;

转到/path/to/apache/conf下并修改cvsweb.conf:

  1. 修改CVSROOT路径设置:
    %CVSROOT = (
    ’Development’ => ’/path/to/cvsroot’, #<==修改指向本地的CVSROOT
    );
  2. 缺省不显示已经删除的文档:
    "hideattic" => "1",#<==缺省不显示已经删除的文档
  3. 在配置文件cvsweb.conf中还可以定制页头的描述信息,你可以修改
    $long_intro成你需要的文字

首先可以CVS进库里的就是以上系统的安装文档。

更多的关于CVS的扩展应用可以参考CVS常用命令手册CVSTRAC部分

多个服务之间的资源共享

一般可以通过链接解决,比如:

我希望匿名ftp共享的内容(比如在/var/ftp/pub目录下)都可以WEB发布,
ln -s /var/ftp/pub /home/apache/htdocs/pub

我希望/usr/share/doc里的文档大家可以通过WEB浏览:
ln -s /usr/share/doc /home/apache/htdocs/doc

我希望WEB发布的内容大家通过WINDOWS网络邻居也可以访问:假设/home/share是samba发布的只读共享路径
ln -s /home/apache/htdocs /home/share

服务的自动启动:
系统已经安装的服务一般可以通过setup的服务配置是否自动启动,否则就在/etc/rc.local里加一些启动脚本即可。
比如:

备份和日志统计

可以将以下脚本写在主服务器的ROOT的CRON里:

#time sync
0 5 * * 1 (/usr/bin/rdate -s YOUR_DATE_TIME_SERVER)

#backup cvsroot
5 3 * * * (cd /home; tar czf /home/backup/cvsroot.`date +\%w`.tgz cvsroot)

#backup apache
8 3 * * * (cd /home; tar czf /home/backup/apache.`date +\%w`.tgz apache)

#webalizer demo
3 5 * * * (/usr/local/bin/webalizer -c /home/apache/conf/webalizer.conf
/home/apache/logs/`date -d yesterday +\
%w`/access_log)

#remove last week web log
3 4 * * * (find /home/apache/logs/ -name access_log -mtime +4 -exec rm -f {} ;)

这样,在/home/backup目录下会有按星期轮训的7个备份。然后通过在辅助服务器上设置CRON用wget的-m选项镜像主服务器上的 /home/backup目录或者用rsync做同步就可以了。后面的2条是关于使用webalzier做服务器的日志统计,APACHE的日志通过 cronolog进行了轮循。具体设置请参考:
注意:
在CRONTAB中 %需要转义\%,比如:tar czf /home/backup/apache.`date +\%w`.tgz apache
而命令行中需要转义的\; 在crontab 中不需要转义,比如:...-mtime +4 -exec rm -f {} ;

基于RSYNC的同步备份:

主服务器:设置启动rsync服务
/etc/rsyncd.conf
hosts allow 192.168.0.*
[ftp]
path = /home/apache/htdocs
comment = docs need backup

备份服务器:每天6点同步一次数据
2 6 * * * (/usr/bin/rsync -au --delete rsync://192.168.0.200/ftp /home/apache/htdocs )

如何给用户设置缺省密码:
/home/apache/bin/htpasswd -bmn chedong 123
chedong:$apr1$5hoi./..$XlpyjZk6rw7R9D5QPo6V6/
-b don’t prompt
-m md5
-n print to stout

TODO:

基于WIKI的文档共享:twiki

打印服务;

上一页  [1] [2] [3] 

收藏本页到: 365Key | del.icio.us | | 添加到雅虎收藏+
  • 网站帮助 - 广告合作 - 网站地图