¡¡¡¡CVSÊÇÒ»¸öÖøÃûµÄ°æ±¾¿ØÖƹ¤¾ß£¬ÎÞÂÛÊǶԸö±ð³ÌÐòÔ±»¹ÊÇÒ»¸ö¿ª·¢ÍŶÓÀ´Ëµ£¬CVS¶¼ÊǷdz£ÓÐÓõİ汾¿ØÖƹ¤¾ß£¬¶øÇÒËüÊÇÃâ·ÑµÄ¡£CVSµÄ¹¦ÄÜÒ²ºÜÇ¿´ó£¬×ÜÌåÉÏËüÊÇÒ»¸öC/S½á¹¹µÄÈí¼þ£¬Ê¹ÓÃÕßÊ×ÏÈÒª¼ÜÉèÒ»¸öCVS·þÎñÆ÷£¬ÔÚCVS·þÎñÆ÷Éϵ¼ÈëÏîĿʵÀý¡¢ÉèÖÃCVSÏîÄ¿·ÃÎÊ¿ØÖƵȡ£¶ø¿Í»§Í¨¹ý¿Í»§¶ËÀ´·ÃÎÊCVS·þÎñÆ÷£¬¿Í»§¿ÉÒÔÈ¡µÃÏîÄ¿×îдúÂ븱±¾¡¢Ìá½»×Ô¼ºÐ޸ĵĴúÂëµÈ£¬¶ø¿Í»§¿ÉÒÔ´ÓInternet¡¢LAN¡¢ÉõÖÁ±¾»úÀ´·ÃÎÊCVS·þÎñÆ÷¡£
¡¡¡¡ÊÂʵÉÏ£¬Ðí¶à´ÓÊÂÈí¼þ¿ª·¢µÄ¸öÈË»òÇÒ×éÖ¯¶¼ÔÚʹÓÃÕâ¸öÃâ·ÑµÄÈí¼þÀ´°ïÖú½øÐÐÈí¼þ¿ª·¢¡£µ«Óû§Ò»·½ÃæÔÚʹÓÃCVSµÄÖî¶à¹¦ÄܽøÐа汾¿ØÖƵÄʱºò£¬È´ºöÊÓÁË°²È«·½ÃæµÄÉ趨£¬ÓÚÊÇÎÊÌâÒ²Òò´Ë¶ø²úÉúÁË¡£ÎÒÃǶ¼ÖªµÀÈí¼þ×÷Ò»ÖÖÌØÊâµÄ²úÆ·£¬ËüÊÇÓмÛÖµµÄ¡£¶ÔÓÚÒ»¸öÈí¼þ¹«Ë¾À´Ëµ£¬Èí¼þµÄÔ´´úÂë¾ÍÊÇÆóÒµ×¹óµÄ×ÊÔ´£¬Èç¹ûй©³öÈ¥£¬¿ÉÄÜ»á¸øÆóÒµ´øµ½ÖØ´óµÄËðʧ£¬ÉõÖÁ»áÓ°Ïìµ½ÆóÒµµÄÉú´æ¡£Ðí¶à¹«Ë¾ÎªÁËÈÃÔÚ¼Ò»òÊdzö²îÔÚÍâµÄͬÊÂÒ²¿ÉÒÔ½øÐй¤×÷£¬Í¨³£»á°ÑCVS·þÎñÆ÷·ÅÔÚInternetÉÏ£¬¶ø·ÅÔÚInternetÉϵÄCVS·þÎñÆ÷¾ÍÊÇÒ»¸ö¿ÉÒÔй©Դ´úÂëµÄÖØҪ;¾¶£¬ËùÒÔÒ²¸üÒªÈÏÕ濼ÂÇÆ䰲ȫÐÔµÄÎÊÌâ¡£
¡¡¡¡±¾ÎľÍÒÔÒ»¼ÒÖÐСÐ͵ÄÈí¼þ¿ª·¢¹«Ë¾ÎªÀý£¬À´½éÉÜÈçºÎÔÚInternetÉϼÜÉèÒ»¸ö°²È«µÄCVS·þÎñÆ÷£¬ÒÔ¹©·Ö²¼ÔÚ¸÷µØµÄÔ±¹¤Í¨¹ýInternetÀ´·ÃÎÊËü¡£
¡¡¡¡ÔÚÕâ¸ö¼ÙÉèµÄÀý×Óµ±ÖУ¬Õâ¼ÒÈí¼þ¹«Ë¾²ÉÓÃ10MµÄADSLרÏß½ÓÈëInternet£¬²¢ÓµÓÐÒ»×é¹Ì¶¨IP¡£ÎªÁË´ïµ½½Ï¸ß¼¶±ðµÄ°²È«£¬¹«Ë¾Ö𼶲ÉÓÃÁËÒÔϵIJßÂԺͷ½·¨£º
[align=center][/align]
¡¡¡¡µÚÒ»²ã±£»¤£ºÔÚÍø¹ØʹÓ÷À»ðǽ
¡¡¡¡ÔÚ½Ó¿ÚÍø¹Ø´¦°²×°ÁË·À»ðǽ£¬²¢»®·ÖÁËDMZ¡¢ÄÚÍø¡¢ÍâÍøÈý¸öÇøÓò¡£CVS·þÎñÆ÷ºÍ¹«Ë¾ÆäËüµÄ¶ÔÍâ·þÎñÆ÷¶¼·ÅÖÃÔÚDMZÇøÓòÖУ¬·À»ðǽ¶ÔDMZÇøÓòʵʩ²»Í¬ÄÚÍø¡¢ÍâÍøµÄרÃÅ°²È«²ßÂÔ£¬¶ÔÓÚCVS·þÎñÆ÷ҲʵʩרÃÅ°²È«²ßÂÔ¡£
¡¡¡¡µÚ¶þ²ã±£»¤£º¶Ô°²×°CVS·þÎñµÄ»úÆ÷½øÐвÙ×÷ϵͳ¼Ó¹Ì
¡¡¡¡¹«Ë¾Ê¹ÓõÄÊÇRed Hat Linux£¬×î³õ°²×°µÄLinuxÖÐȱ·¦ÑϸñµÄ°²È«É趨£¬ÐèÒª½øÐвÙ×÷ϵͳ¼Ó¹Ì²ÅÄÜ´ïµ½¸ü¸ßµÄ°²È«¡£
¡¡¡¡µÚÈý²ã±£»¤£ºÀûÓÃCVS×ÔÉíµÄ°²È«ÌØÐÔ
¡¡¡¡ÕâÒ»²¿·Ö£¬±ÊÕß½«»áÔÚºóÎÄÏêϸ½²½âCVS·þÎñÆ÷µÄ°²×°ÅäÖõÈ
¡¡¡¡µÚËIJ㱣»¤£ºÈËÔ±ÅàѵºÍÖƶÈ
¡¡¡¡¶ÔÓÚʹÓÃCVSµÄÔ±¹¤½øÐÐCVSµÄʹÓÃÅàѵ£¬½éÉÜÈçºÎ°²È«µÄ´ÓÍⲿÁ¬ÈëCVS·þÎñÆ÷£¬ÒÔ¼°ÈçºÎ±£»¤¸öÈ˵ÄCVSÕ˺ŵÈÐÅÏ¢¡£ÓÉÓÚ¿ª·¢ÈËÔ±¿ÉÄÜ´Ó¹«Ë¾ÄÚÍøÖÐÀ´·ÃÎÊDMZÖеÄCVS·þÎñÆ÷£¬Ò²¿ÉÄÜͨ¹ýInternet´Ó¹«Ë¾ÒÔÍâµÄµØ·½À´·ÃÎÊDMZÖеÄCVS·þÎñÆ÷¡£ËùÒªÒªÕë¶ÔÕâÁ½ÖÖÇé¿öÖƶ¨ÏàÓ¦µÄCVS·ÃÎÊÖƶȣ¬Í¬Ê±ÒªÇóÔ±¹¤±£»¤ºÃ×Ô¼ºµÄÓû§ÃûºÍÃÜÂë¡£
¡¡¡¡ÔÚÒÔÉÏËIJ㱣»¤ÖУ¬±¾ÎÄÖصãÒª½éÉܵÄÊǵÚÈý²ã±£»¤¡£
¡¡¡¡Ê×ÏÈÊÇCVS»ù±¾µÄ°²×°£º
¡¡¡¡1.ÏÂÔØÔ´Âë
¡¡¡¡Í¨¹ýÃþË÷ÒýÇæ¿ÉÒÔÕÒµ½CVSµÄÔ´´úÂë°ü£¬Ò²¿É´ÓCVSµÄ¹Ù·½ÍøÕ¾cvshome.orgÉÏ¿ªÊ¼Ñ°ÕÒ£¬ÓÉÓÚCVSÀúÊ·ÉÏÒ²³öÏÖ¹ýһЩ°²È«Â©¶´£¬ËùÒÔ½¨ÒéÒª¶¨ÆÚÈ¥Æä¹Ù·½ÍøÕ¾¿´¿´ÓÐûÓÐ×îа汾ÍƳö¡£Ä¿Ç°×îеÄÊÇ2003Äê12ÔÂ18ÈÕÍƳöµÄ1.12.5°æ±¾£¬´ó¼Ò³¢ÊÔ´ÓÒÔÏÂÁ´½ÓÏÂÔØ£º
¡¡¡¡http://ccvs.cvshome.org/servlets/ProjectDownloadList?action=download&dlID=351
¡¡¡¡2. ±àÒë°²×°
¡¡¡¡[root@terry src]# tar -xjpvf cvs-1.12.5.tar.bz2
¡¡¡¡[root@terry src]# cd cvs-1.12.5
¡¡¡¡[root@terry cvs-1.12.5]# ./configure --prefix=/usr/local/terry_yu/cvs
¡¡¡¡--disable-server-flow-control
¡¡¡¡[root@terry cvs-1.12.5]# make
¡¡¡¡[root@terry cvs-1.12.5]# make install
¡¡¡¡ÒÔÉÏÖ¸ÁCVS°²×°µ½/usr/local/terry_yu/cvsÕâ¸öĿ¼ÉÏ¡£
¡¡¡¡×¢£º³ýÁËʹÓÃÔ´Âë°ü½øÐа²×°Ö®Í⣬»¹¿ÉÒÔʹÓÃRPM°üÀ´°²×°¡£
¡¡¡¡3. ÉèÖÃÆô¶¯CVS·þÎñ
¡¡¡¡ÔÚLinuxÉÏCVS·þÎñ¿ÉÒÔͨ¹ýinetd¡¢xinetd»òtcpwrapperµÈÀ´Æô¶¯£¬ÆäÖÐinetdÓÉÓÚ°²È«ÀíÓÉÔÚÐí¶à³¡ºÏÒѾ±»xinetdËùÈ¡´úÁË¡£ÕâÀïÎÒÃÇʹÓÃxinetdÀ´Æô¶¯CVS·þÎñ¡£
¡¡¡¡ÔÚ/etc/xinetd.dĿ¼ÏÂΪCVS·þÎñ´´½¨Ò»¸öÅäÖÃÎļþ£¬±ÈÈ磺/etc/xinetd.d/cvspserver£¬±à¼/etc/xinetd.d/cvspserver£¬ÊäÈëÈçÏÂÄÚÈÝ£º
¡¡¡¡service cvspserver
¡¡¡¡{
¡¡¡¡disable = no
¡¡¡¡socket_type = stream
¡¡¡¡wait = no
¡¡¡¡user = root
¡¡¡¡env = HOME=
¡¡¡¡server = /usr/bin/cvs
¡¡¡¡server_args = -f --allow-root=/home/cvsroot pserver
¡¡¡¡}
¡¡¡¡×¢£º
¡¡¡¡1)pserver±íʾÊÇ¿ÚÁîÈÏÖ¤µÄ·ÃÎÊ·½Ê½£¬ÕâÊÇ×î³£Óõķ½Ê½£¬ÆäËû»¹ÓÐgserver,kserver,ext£¬Èç¹ûÏëÒª¸ü¸ßµÄ°²È«ÐÔ¿ÉÒÔʹÓÃsshÀ´¼ÓÃÜ¿ÚÁîºÍÊý¾ÝÁ÷£¬²»¹ýÕâÀïΪÁËÓû§Ê¹Óõķ½±ã£¬ÈÔȻѡµÄÊÇpserver
¡¡¡¡2)--allow-rootÊÇÖ¸¶¨RepositoryµÄĿ¼£¬¿ÉÒÔ½¨Á¢¶à¸öRepository
¡¡¡¡È»ºóÖØÐÂÆô¶¯xinetd:
¡¡¡¡[root@terry bin]# /etc/rc.d/init.d/xinetd restart
¡¡¡¡Stopping xinetd: [ OK ]
¡¡¡¡Starting xinetd: [ OK ]
¡¡¡¡ÖØÐÂÆô¶¯xinetd·þÎñºó£¬CVS·þÎñÒ²¿ªÊ¼¹¤×÷ÁË£º
¡¡¡¡4.ÔÚCVS·þÎñÆ÷¶Ë½¨Á¢Repository
¡¡¡¡Ê×ÏÈÒª´´½¨Ò»¸öÃûΪcvsµÄ×éºÍÒ»¸öÃûΪcvsrootµÄÓû§£¬ÒÔºóÒª·ÃÎÊCVS·þÎñµÄÓû§¼ÓÈëcvsÕâ¸ö×飺
¡¡¡¡[root@terry root]# groupadd cvs
¡¡¡¡[root@terry root]# useradd -g cvs -s /sbin/nologin cvsroot
¡¡¡¡[root@terry root]# chown -R cvsroot /home/cvsroot
¡¡¡¡½ÓÏÂÀ´½øÐгõʼ»¯£º
¡¡¡¡[root@terry root]# cvs -d /home/cvsroot init
¡¡¡¡ÕâÑùÔÚ/home/cvsrootĿ¼ÖоͲúÉúÁËCVSROOTĿ¼£¬ÆäÖдæ·ÅÁËһЩÅäÖÃÎļþ£¬ÈçconfigµÈ£¬È»ºóÉèÖÃȨÏÞ£º
¡¡¡¡[root@terry root]# chown -R cvsroot.cvs /home/cvsroot
¡¡¡¡[root@terry root]# chmod -R ug+rwx /home/cvsroot
¡¡¡¡[root@terry root]# chmod 644 /home/cvsroot/CVSROOT/config
¡¡¡¡ÎªÁËCVSϵͳµÄ°²È«£¬ÎÒÃÇÒªÐÞ¸Ä/home/cvsroot/CVSROOT/configÎļþ£¬½«"#SystemAuth =no"µÄÇ°¶øµÄ×¢ÊͺÅ#È¥µô£¬¼´¸ÄΪ¡°SystemAuth =no¡±£¬È»ºó¸ø¿ª·¢ÕßÃÇÖðÒ»½¨Á¢Õ˺ţ¬Ð½¨µÄ²»Òª·ÖÅäÓû§Ä¿Â¼£¬ÒòΪËü½«×÷Ϊһ¸öÐéÄâÓû§ÕʺÅÀ´Ê¹Ó㬾ßÌåÃüÁîÈ磺
¡¡¡¡[root@terry root]# useradd -g cvs -M bogus
¡¡¡¡[root@terry root]# passwd bogus
¡¡¡¡ÉÏÃæµÄÃüÁî¾Í´´½¨ÁËÒ»¸ö²¢Ã»ÓÐHomeĿ¼µÄÓû§bogus£¬½Ó׎«ÏµÍ³µÄshadowÎļþ¸´ÖƵ½CVSROOT, ²¢ÖØÃüÃûΪpasswd:
¡¡¡¡[root@terry root]# cp /etc/shadow /home/cvsroot/CVSROOT/passwd
¡¡¡¡[root@terry root]# chmod 0644 /home/cvsroot/CVSROOT/passwd
¡¡¡¡È»ºóÐÞ¸ÄpasswdÎļþ£¬½«³ý¸Õ²ÅÉ訵ĿÉʹÓ?VSµÄÓû§bogusÖ®ÍâµÄËùÓÐÐÐɾ³ý£¬È»ºóÈ¥µôÿÐеڶþ¸öðºÅÒÔºóµÄËùÓÐÄÚÈÝ£¬²¢ÌíÉÏ×Ö·û´®cvsroot, ¸ÄΪÈçϸñʽ£º
¡¡¡¡bogus:ND5$J8N9BW5DKV.nPdxfdsh:cvsroot
¡¡¡¡È»ºó£¬É¾³ýµô¸Õ¸ÕÔÚϵͳÖÐÌí¼ÓµÄÄǸöÓû§bogus:
¡¡¡¡[root@terry root]# userdel -f bogus
¡¡¡¡ºÃÁË£¬×öµ½ÕâÀCVSµÄ·þÎñÆ÷¶Ë¾ÍÒѾ°²×°ÉèÖúÃÁË£¬ÕâÑùÄãµÄCVSÓû§¾ÍÖ»ÄÜÓÃpasswdÖй涨µÄÓû§À´µÇ½ÄãµÄCVS·þÎñÆ÷ÁË£¬Òª×¢ÒâµÄÊÇ£º±¾ÎĽéÉܵÄÌí¼ÓÓû§µÄ·½·¨ÊÊÓÃÓÚСÊýÁ¿µÄÓû§£¬Èç¹ûÊÇÓдó¹æÄ£µÄ¿ª·¢ÈËÔ±£¬ÍƼö²ÉÓÃÁ¬½ÓLDAP»òÕßÊý¾Ý¿âÀ´½øÐÐÓû§µÄÈÏÖ¤·þÎñ¡£Í¨¹ýÕâËIJ㱣»¤£¬ÏàÐÅ¿ÉÒÔʹÓÃÄã·ÅÐĵÄʹÓÃCVS·þÎñÁË£¬²»¹ý±¾ÎÄÖ»ÊÇ×÷ÁË×î¼òµ¥µÄ½éÉÜ£¬Ï£Íû¿ÉÒÔ¸ø´ó¼ÒÆð²Î¿¼µÄ×÷Óá£ÁíÍ⣬ÏëÒªµÃµ½CVSµÄ×îÐÂÐÅÏ¢£¬¿ÉÒÔ·ÃÎÊCVSµÄÖ÷Ò³£ºhttp://www.cvshome.org/£¬»¹ÓÐPascal MolliµÄCVSÍøÕ¾£ºhttp://www.loria.fr/~molli/cvs-index.html