《Linux下cvs服务器的配置和权限管理很详细》由会员分享,可在线阅读,更多相关《Linux下cvs服务器的配置和权限管理很详细(3页珍藏版)》请在金锄头文库上搜索。
1、GLinux 下 cvs 服务器的配置和权限管理1 1、查看是否安装、查看是否安装 cvscvs(redhat9 缺省是装的,没有可在系统光盘中找到)#rpm -qa|grep cvs2 2、下载、下载CVSACLCVSACL cvs 版本#cvs version3 3、安装、安装 CVSACLCVSACL# tar -zxvf cvs-1.11.22-cvsacl-1.2.5-patched.tar.gz# mv cvs-1.11.22-cvsacl-1.2.5-patched cvs-1.11.22# cd cvs-1.11.22# ./configure# make# make inst
2、all4 4、在、在 CVSCVS 服务器端建立仓库服务器端建立仓库创建用于 CVS 的专用系统组和用户,以后要访问CVS 服务的用户加入 cvs 这个组:#groupadd cvs#useradd -g cvs -s /sbin/nologin cvsroot#passwdcvsroot初始化 cvs 服务器环境#mkdir /cvs#cvs -d /cvs init其实就是 cvs 初始化 cvs 环境的命令,会在/cvs 目录下生成 CVSROOT 文件夹,但是安装了CVSACL 后,使用此命令 CVSROOT 文件夹中生成的文件会和不安装 CVSACL 的文件有所区别,会增加几个文件,
3、稍后会详细介绍这几个文件的作用。AclconfigAccessaclconfig,设置 CVS 配置库归属及权限:#chown -R cvsroot.cvs /cvs#chmod -R 770 /cvs加入 cvs 服务(redhath9 缺省就有 cvs 服务,所以不用加)#vi /etc/services#cvspserver 2401/tcp #pserver cvs service#cvspserver 2401/udp #pserver cvs service创建 CVS 启动脚本:#vi /etc/xinetd.d/cvspserver内容如下:service cvspserver
4、disable = noflags = REUSEsocket_type = streamwait = nouser = rootserver = /usr/bin/cvsserver_args = -f -allow-root=/cvs pserverlog_on_failure += USERID重新启动 inetd 或者 xinetd:#/etc/init.d/xinetd restart检查 cvspserver 服务是否已经启动#netstat -l |grep cvspserver5 5、创建、创建 CVSCVS 用户用户#vi /project/CVSROOT/aclconfig
5、UseSystemGroups=noUseCVSGroup=yes改为“SUseSystemGroups=no”,/etc/passwd 里的用户将不再生效,需要给开发者在CVSROOT/passwd 里逐一建立账号,新建的不要分配用户目录,因为它将作为一个虚拟用户帐号来使用#cd /cvstest/CVSROOT#htpasswd c passwd yueyx#vi passwdyueyx:*:cvsadmin6 6、添加用户、添加用户#cd /cvstest/CVSROOT#htpasswd passwd yueyx#vi passwdyueyx:*:cvsadmin7 7、创建组、创建组
6、#cd /cvs/CVSROOT#vi group文件格式:group1:x:1:test1, yueyx /用户之间用“,”分割。注:cvsacl 有个 bug,必须在组用户最前边添加一个不存在的cvs 用户,group 文件才会生效。原因不明,但此方法确实管用。8 8、使用、使用 cvsaclcvsacl 细化权限细化权限(可以针对用户,也可以针对组设置权限)1.1. 命令格式命令格式cvs d 配置库位置 racl 用户|组:权限 -Rl -r tag 模块 文件2.2. 权限参数权限参数权限没有权限读权限写权限tag创建删除全部权限管理权限关键字nrwtcdap用户不能做任何 cvs
7、操作可以执行annotate, checkout, diff, export, log, rannotate,rdiff, rlog, status 命令可以执行 commit/checkin命令可以执行 tag/rtag 命令,依赖读权限可以执行 add import 命令可以执行 rm 命令可以执行所有 cvs 命令处理 cvsacl 管理命令可以执行所有命令说明3.3. 命令参数命令参数- R 进行目录递归- r rev 设定版本/标签- l 列出已定义的 ACLs 权限4.4. 特别注意特别注意如果没有通过 cvs -d racl 指定用户或组对某个文件的权限,那么这个用户或组会对此目录具有最大权限 (只受文件本身属性限制) , 因此在实际对 CVS 中的项目进行权限设置时,必须指定用户对每一个文件的权限。