Linux_CVS的安装与设置.doc_第1页
Linux_CVS的安装与设置.doc_第2页
Linux_CVS的安装与设置.doc_第3页
Linux_CVS的安装与设置.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux CVS的安装与设置1 Linux CVS介绍CVS 在大多数平台上都可以运行,包括 Windows、Linux、AIX和 UNIX。在Linux系统中安装配置CVS有下列几点好处:(1) Linux 现在是占垄断地位的开放源代码操作系统。(2) CVS 包含在绝大部分的Linux分发版中。 (3) Linux CVS非常稳定、可靠并且可伸缩,对于个人开发者、小规模的小组以及大规模、分布式小组都很有用。 2 在 RedHat Linux 7 上安装 CVS首先检查是否在linux系统下安装了cvs服务。命令如下:rpmqa|grep cvs。如果返回的是cvs的版本号信息,则说明cvs已经安装。否则就需要安装cvs。 如果没有安装CVS,那么就找出linux的安装光盘,从安装光盘中安装cvs的rpm包,3 设置步骤与方法3.1 建立 CVS 用户帐户和组1) 以 root 用户的身份登录。 2) 创建一个名为 cvs 的用户,让这个用户使用 cvs 作为他的主组。 3) 创建cvs 的用户。本文使用 cvsdev1 和 cvsdev2。 4) 使用 cvs 的开发者可以使用他们的私有组作为他们的主组。例如,cvsdev1 的主组是 cvsdev1,但要确保他们还属于 cvs 组。 3.2 建立文件夹和资源库1) 以用户 cvs 的身份登录。 2) 在 cvs 自己的主目录(即 /home/cvs/)下创建一个名为 repository 的目录。 3) 初始化资源库:cvs d /home/cvs/repository init。4) 注销用户 cvs。 3.3 修改 xinetd 服务以启用 pserver 协议1) 以 root 用户的身份登录。 2) 在目录 /etc/xinetd.d 中创建一个名为 cvspserver 的文件,文件内容如下:# default: off# description: An cvs server. service cvspserverdisable = nosocket_type = streamprotocol = tcpuser = rootwait = noserver = /usr/bin/cvsserver_args = -f -allow-root=/home/cvs/repository pserverlog_on_success +=USERIDlog_on_failure += USERID3) 打开 /etc/services 并核实存在下面这两行代码。如果不存在,则添加它们: cvspserver 2401/tcp # CVS client/server operationscvspserver 2401/udp # CVS client/server operations4) 重新启动 xinetd 服务:service xinetd restart。3.4 建立用户环境1) 打开文件 /etc/profile。您应该能在该文件中看到下面这些行:USER=id -unLOGNAME=$USERMAIL=/var/spool/mail/$USER2) 在环境变量 MAIL 后添加一行内容: CVSROOT=:pserver:$USERlocalhost:/home/cvs/repository3) 在该文件中,您还应该看到这样一行: export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC4) 修改这一行并将 CVSROOT 添加到导出(export)列表中,如下所示: export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC CVSROOT4 对CVS库文件的访问权限设置步骤与方法:4.1 linux文件权限概念1)Linux系统中,文件分为五种不同的类型:普通文件、目录文件、链接文件、设备文件和管道文件。2)Linux系统是一个典型的多用户系统,不同的用户处于不同的地位。为了保护系统的安全性,Linux系统对不同用户访问同一文件的权限做了不同的规定。对于一个Linux系统中的文件来说,它的权限可以分为三种:读权限、写权限和执行权限,分别用r、w和x表示。不同的用户具有不同的读、写和执行的权限。对于一个Linux系统中的文件来说,它都有一个特定的所有者,也就是对文件具有所有权的用户。同时,由于在Linux系统中,用户是按组分类的,因此还存在组用户。另外还存在其它用户。因此,Linux系统按文件所有者、组用户和其它用户三类规定不同的文件访问权限。3)Linux文件系统安全模型是通过给系统中的文件赋予两个属性来起作用的,这两个赋予每个文件的属性称为所有者和访问权限。Linux下的每一个文件必须严格地属于一个用户和一个组。4)我们可以通过ls l命令列出一个文件拥有的权限,例如:现在有一个名为test.txt的文件,我们可以使用ls l命令列出test.txt文件的权限,假设列出如下所示的内容:-rw-r- user1 group1 602 8月27 09:50 test.txt从上面的内容可以看到,这样的符号:-rw-r-。这些符号就是用来描述文件的访问权限的。总共有10种权限属性,因此一个权限列表中共是10个字符的长度。它的格式遵循下列规则:l 第一个字符表示一种特殊的文件类型,其中字符可为d(表示该文件是一个目录)、b(表示该文件是一个系统设备,使用块输入/输出与外界交互,通常为一个磁盘)、c(表示该文件是一个系统设备,使用连续的字符输入/输出与外界交互,如串口和声音设备),“-”表示该文件是一个普通文件,没有特殊属性。l 24个字符用来确定文件的用户权限,57个字符用来确定文件的组权限,810个字符用来确定文件的其它用户(既不是文件所有者,也不是组成员的用户)的权限。其中,2、5、8个字符是用来控制文件的读权限的,该位字符为r表示用户、组成员或其它人可从该文件中读取数据。短线“-”则表示不允许该成员读取数据。与此类似,3、6、9位的字符控制文件的写权限,该位若为w表示允许写,若为“-”表示不允许写。4、7、10位的字符用来控制文件的制造权限,该位若为x表示允许执行。4.2 Linux文件访问权限设置方法在Linux中,系统对用户创建的目录有一个默认的权限。有时候,我们需要更改文件的权限,以适应实际操作的需要。用于更改文件访问权限的命令是:chmod。该命令有两种方法设定文件权限:1) 用包含字母和操作符表达式的文字设定法,其语法格式为:chmod whooptmode 文件/目录名。(1)who表示对象,是以下字母中的一个或组合:u:表示文件所有者;g:表示同组用户;o:表示其它用户;a:表示所有用户。(2)Opt则是代表操作,可以为:“+”添加某个权限;“-”取消某个权限;=:赋予给定的权限,并取消原有的权限。(3)mod代表权限:r:可读;w:可写;x:可执行。例如为组用户增加对test.txt文件的写权限:chmod g+w test.txt.2) 用数字设定法,其语法格式为:chmod mode 文件名。关键是mode的取值。我们将用户的r、w、x权限看成是二进制数,如果有则用1表示,没有则用0表示,那么文件modules.txt的“-rw-r-”权限则可以表示为:110100000,再将其每三位转换成为一个十进制数,就是640。例如:如果想让modules.txt的文件权限变为:rw-rw-r-,那么转换成二进制就是110110100,再每三位转换为一个十进制数,就得到664,因此我们执行命令chmod 664 modules.txt。3)在使用chmod命令进行权限设置的时候,注意普通文件和其它类型文件的设置不同,因为任何用户对普通文件都没有执行的权限。所以普通文件的执行权限都是为空。4)使用一些添加符号可以使chmod命令实现不同的功能。例如:chmod mod R文件名可以使的当前文件的下层文件都继承它的权限设置。5 注意事项在使用Linux CVS的过程中,需要注意一些问题:1)客户端从Linux CVS服务器端checkout文件的时候,可能会提示关于类似lockdir出错的信息。这是因为当用户从Linux CVS服务器checkout文件时,会在当前模块下生成一个锁文件。如果当前用户对当前模块没有写的权限,读是不可能的。 解决办法:修改CVS服务器的配置。改成不在当前模块下生成锁文件,把锁文件集中到一个所有用户都有读写权限的目录。例如:/tmp目录。修改方法:修改资源库下面CVSROOT/config文件。在CVSROOT/config文件下找到这行:#LockDir=/var/lock/cvs。首先把前面的注释号去掉。然后把LockDir的值改为/tmp即可。2)对Linux设置文件的权限来说,可以通过chmod命令实现下层文件对上层文件的权限继承(具体使用方法可以查阅关于chmod的使用)。但是使用chmod命令只能实现原本存在的文件/目录的权限继承,对于新上传到CVS库中的文件/目录,不能实现权限的继承。那么我们只能使用访问存取控制列表(ACL)。ACL的使用可以查阅相关的ACL的使用方法。3)用户umask的值影响直接由用户在Linux系统下创建的文件/目录的权限,但是对新上传到CVS库中的文件/目录权限是没有影响的。4)linux CVS不支持list命令。6 参考:在Linux系统下使用ACL进行访问权限控制1)Linux ACL简介在Linux系统下,我们可以使用chmod命令来实现对UGO 权限管理。但为了实现一些比较复杂的权限管理,往往不得不创建很多的组,并加以详细的记录和区分。如果可以针对某一个用户对某一文件指定一个权限,那就最好不过了。比如对某一个特定的文件,用户A可以读取,用户B所在的组可以修改,惟独用户B不可以。于是就有了这个ACL的标准。所谓ACL,就是Access Control List,一个文件/目录的访问控制列表,可以针对任意指定的用户/组分配RWX权限。现在主流的商业Linux系统从2.6版之后的内核都支持ACL。ACL有两种:存取ACL(access ACLs)和默认ACL(default ACLs)。存取ACL是对指定文件或目录的存取控制列表。默认ACL只能和目录相关。如果目录中的文件没有存取ACL,它就会使用该目录的默认ACL。2)Linux ACL命令和用法要掌握的ACL命令有两个:getfacl, setfacl。 (1) getfacl用来查看文件/目录拥有的ACL权限。(2) setfacl工具为文件和目录设置ACL。使用-m来添加或修改文件或目录的ACL。要设置默认的ACL,在规则前面添加d,并且指定一个目录而不是文件名。(3) Linux系统中的文件/目录使用ACL之前,它们所在的分区必须使用ACL来挂载。没有使用ACL来挂载的分区,可以使用getfacl命令来查看这个分区下的文件/目录。但不能用setfacl命令来设置文件/目录的权限。关于ACL的用法可以参考关于访问存取控制列表(ACL)方面的资料。3)公司Linux服务器上CVS库中文件权限的设置方法对与Linux cvs库中的文件/目录的权限设置,要使用ACL和chmod命令结合使用的方法:(1) 首先用chmod命令设置好原有用户的权限:chmod mod R 目录(服务器使用的是数字设定的方法,也可以使用文字设定法)和chmod g+s R 目录。(2) 当添加新的用户或组的时候,使用setfacl m 组或者用户权限 R 目录命令形式设置本目录和下级目录/文件的ACL。(3) 使用setfacl d set 组或者用户 R 目录 ,该命令用来设置新上传的目录ACL,使新上传的目录或者文件的ACL和上级目录保持一致。(4) 当给目录

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论