cvs commit: BLFS/BOOK/server/other/cvsserver cvsserver-exp.xml cvsserver-inst.xml cvsserver-intro.xml cvsserver.ent

larry at linuxfromscratch.org larry at linuxfromscratch.org
Sun Aug 25 20:04:15 PDT 2002


larry       02/08/25 20:04:15

  Modified:    BOOK/introduction/welcome changelog.xml credits.xml
               BOOK/server server.ent
               BOOK/server/other cvsserver.xml other.xml
  Added:       BOOK/server/other/cvsserver cvsserver-exp.xml
                        cvsserver-inst.xml cvsserver-intro.xml
                        cvsserver.ent
  Log:
  added cvs server
  
  Revision  Changes    Path
  1.87      +3 -0      BLFS/BOOK/introduction/welcome/changelog.xml
  
  Index: changelog.xml
  ===================================================================
  RCS file: /home/cvsroot/BLFS/BOOK/introduction/welcome/changelog.xml,v
  retrieving revision 1.86
  retrieving revision 1.87
  diff -u -r1.86 -r1.87
  --- changelog.xml	25 Aug 2002 21:52:07 -0000	1.86
  +++ changelog.xml	26 Aug 2002 03:04:15 -0000	1.87
  @@ -10,6 +10,9 @@
   
   <itemizedlist>
   
  +<listitem><para>August 25th, 2002 [larry]: Server: Added cvs
  +server.</para></listitem>
  +
   <listitem><para>August 25th, 2002 [larry]: Multimedia: Added
   lame-3.92.</para></listitem>
   
  
  
  
  1.40      +1 -2      BLFS/BOOK/introduction/welcome/credits.xml
  
  Index: credits.xml
  ===================================================================
  RCS file: /home/cvsroot/BLFS/BOOK/introduction/welcome/credits.xml,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- credits.xml	25 Aug 2002 21:52:07 -0000	1.39
  +++ credits.xml	26 Aug 2002 03:04:15 -0000	1.40
  @@ -93,8 +93,7 @@
   <listitem><para>db and lcms: <emphasis>Jeremy Jones and Mark
   Hymers</emphasis></para></listitem>
   
  -<listitem><para>bind, emacs, leafnode, libfam, pine, qmail, PostgreSQL, Samba,
  -sendmail, slrn, tex and xinetd: <emphasis>Billy O'Connor</emphasis></para></listitem>
  +<listitem><para>bind, cvs server, emacs, leafnode, libfam, pine, qmail, PostgreSQL, Samba, sendmail, slrn, tex and xinetd: <emphasis>Billy O'Connor</emphasis></para></listitem>
   
   <listitem><para>fetchmail and wvdial: <emphasis>Paul
   Campbell</emphasis></para></listitem>
  
  
  
  1.2       +2 -1      BLFS/BOOK/server/server.ent
  
  Index: server.ent
  ===================================================================
  RCS file: /home/cvsroot/BLFS/BOOK/server/server.ent,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- server.ent	7 Jul 2002 20:28:52 -0000	1.1
  +++ server.ent	26 Aug 2002 03:04:15 -0000	1.2
  @@ -17,7 +17,7 @@
   
   <!-- Other server software -->
   <!ENTITY server-other SYSTEM "other/other.xml">
  -<!ENTITY server-other-cvsserver SYSTEM "other/cvsserver.xml">
  +<!ENTITY % cvsserver SYSTEM "other/cvsserver/cvsserver.ent">
   <!ENTITY % openssh SYSTEM "other/openssh/openssh.ent">
   <!ENTITY % bind SYSTEM "other/bind/bind.ent">
   <!ENTITY % dhcp SYSTEM "other/dhcp/dhcp.ent">
  @@ -26,6 +26,7 @@
   <!ENTITY % samba SYSTEM "other/samba/samba.ent">
   
   %openssh;
  +%cvsserver;
   %bind;
   %dhcp;
   %xinetd;
  
  
  
  1.2       +6 -3      BLFS/BOOK/server/other/cvsserver.xml
  
  Index: cvsserver.xml
  ===================================================================
  RCS file: /home/cvsroot/BLFS/BOOK/server/other/cvsserver.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- cvsserver.xml	7 Jul 2002 20:28:52 -0000	1.1
  +++ cvsserver.xml	26 Aug 2002 03:04:15 -0000	1.2
  @@ -1,7 +1,10 @@
  -<sect1 id="server-other-cvsserver">
  +<sect1 id="cvsserver" xreflabel="cvsserver">
   <?dbhtml filename="cvsserver.html" dir="server"?>
  -<title>Running a cvs server</title>
  +<title>Running a CVS server</title>
   
  -<para>???</para>
  +&cvsserver-intro;
  +&cvsserver-inst;
  +&cvsserver-exp;
   
   </sect1>
  +
  
  
  
  1.2       +1 -1      BLFS/BOOK/server/other/other.xml
  
  Index: other.xml
  ===================================================================
  RCS file: /home/cvsroot/BLFS/BOOK/server/other/other.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- other.xml	7 Jul 2002 20:28:52 -0000	1.1
  +++ other.xml	26 Aug 2002 03:04:15 -0000	1.2
  @@ -3,7 +3,7 @@
   <title>Other Server Software</title>
   
   &openssh;
  -&server-other-cvsserver;
  +&cvsserver;
   &bind;
   &dhcp;
   &xinetd;
  
  
  
  1.1                  BLFS/BOOK/server/other/cvsserver/cvsserver-exp.xml
  
  Index: cvsserver-exp.xml
  ===================================================================
  <sect2>
  <title>Command explanations</title>
  
  <para><userinput>mkdir /cvsroot :</userinput> Create the CVS repository
  directory.</para>
  
  <para><userinput>chmod 1777 /cvsroot :</userinput> Sticky bit
  permissions for CVSROOT.</para>
  
  <para><userinput>export CVSROOT=/cvsroot :</userinput> Specify new
  CVSROOT for all cvs commands.</para>
  
  <para><userinput>cvs init :</userinput> Initialize the new CVS
  repository.</para>
  
  <para><userinput>cvs import -m "repository test" cvstest vendortag
  releasetag :</userinput> All source code modules must be imported
  into the CVS repository before use, with the cvs import command.  the
  -m flags specifies an initial descriptive entry for the new module.
  the "cvstest" parameter is the name used for the module in all
  subsequent cvs commands.  the "vendortag" and "releasetag" parameters
  are used to further identify each CVS module and are mandatory whether
  used or not.</para>
  
  <para><userinput>(grep anonymous /etc/passwd || useradd anonymous -s
  /bin/false) :</userinput>  Check for an existing anonymous user and
  create one if not found.</para>
  
  <para><userinput>echo anonymous: > /cvsroot/CVSROOT/passwd
  :</userinput> Add the anonymous user to the CVS passwd file, which is
  unused for anything else in this configuration.</para>
  
  <para><userinput>echo anonymous > /cvsroot/CVSROOT/readers :
  </userinput> Add the anonymous user to the CVS readers file, a list of
  users who have read only access to the repository.</para>
  
  </sect2>
  
  
  
  
  1.1                  BLFS/BOOK/server/other/cvsserver/cvsserver-inst.xml
  
  Index: cvsserver-inst.xml
  ===================================================================
  <sect2>
  <title>Setting up a CVS server.</title>
  
  <para>We will discuss setting up a CVS server using OpenSSH as the
  remote access method.  Other access methods, including :pserver: and
  :server: will not be used for write access to the CVS repository.  The
  :pserver: method sends clear text passwords over the network and the
  :server: method is not supported in all CVS ports.  Instructions for
  anonymous, read only CVS access using :pserver: can be found at the
  end of this section.</para>
  
  <para>Configuration of our CVS server consists of four steps:</para>
  
  <sect3><title>1. Create a repository.</title>
  <para>Create a new CVS repository with the following commands,
  logged in as root:</para>
  <para><screen><userinput>
  mkdir /cvsroot &&
  chmod 1777 /cvsroot &&
  export CVSROOT=/cvsroot
  cvs init</userinput></screen></para></sect3>
  
  <sect3><title>2. Import source code into the repository.</title>
  <para>Import a source module into the repository with the following
  commands, issued from a user account on the same machine as the CVS
  repository:</para>
  
  <para><screen><userinput>
  export CVSROOT=/cvsroot &&
  cd sourcedir &&
  cvs import -m "repository test" cvstest vendortag releasetag
  </userinput></screen></para></sect3>
  
  <sect3><title>3. Verify local repository access.</title>
  <para>Test access to the CVS repository from the same user account
  with the following command:</para>
  
  <para><screen><userinput>
  cvs co cvstest
  </userinput></screen></para></sect3>
  
  <sect3><title>4. Verify remote repository access.</title>
  <para>Test access to the CVS repository from a remote machine using a
  user account that has ssh access to the CVS server with the following
  commands:
  <note><para>Replace "servername" with the IP address or host name
  ofthe CVS repository machine.  You will be prompted for the user's
  shellaccount password before CVS checkout can
  continue.</para></note></para>
  
  
  <para><screen><userinput>
  export CVS_RSH=/usr/bin/ssh &&
  cvs -d:ext:servername:/cvsroot co cvstest 
  </userinput></screen></para></sect3>
  </sect2>
  <sect2>
  <title>Configuring CVS for anonymous read only access.</title>
  
  <para>CVS can be set up to allow anonymous read only access using the
  :pserver: method by logging on as root and executing the following
  commands:</para> 
  
  <para><screen><userinput>
  (grep anonymous /etc/passwd || useradd anonymous -s /bin/false) &&
  echo anonymous: > /cvsroot/CVSROOT/passwd &&
  echo anonymous > /cvsroot/CVSROOT/readers
  </userinput></screen></para>
  
  <para>If you use inetd, the following command will add the pserver
  entry to /etc/inetd.conf:</para>
  
  <para><screen><userinput>
  echo "2401  stream  tcp  nowait  root  /usr/bin/cvs cvs -f \
          --allow-root=/cvsroot pserver" >> /etc/inetd.conf
  </userinput></screen></para>
  
  <para>Issue a killall -HUP inetd to reread the changed inetd.conf
  file.</para>
  
  <para>If you use xinetd, the following command will add the pserver
  entry to /etc/xinetd.conf:</para>
  
  <para><screen><userinput>
  cat >> /etc/xinetd.conf << "EOF"
       service cvspserver
       {
            port        = 2401
            socket_type = stream
            protocol    = tcp
            wait        = no
            user        = root
            passenv     = PATH
            server      = /usr/bin/cvs
           server_args = -f --allow-root=/cvsroot pserver
       }
  EOF
  </userinput></screen></para>
  <para>Issue a killall -HUP xinetd to reread the changed xinetd.conf
  file.</para>
  
  <para>Testing anonymous access to the new repository requires an account
  on another machine that can reach the CVS server via network.  No
  account on the CVS repository is needed.  To test anonymous access to
  the CVS repository log in to another machine as an unprivileged user
  and execute the following command:</para>
  
  <para><screen><userinput>
  cvs -d:pserver:anonymous at servername:/cvsroot co cvstest
  </userinput></screen><note><para>Replace "servername" with the IP
  address or hostname of the CVS server</para></note></para>
  
  </sect2>
  
  
  
  
  
  1.1                  BLFS/BOOK/server/other/cvsserver/cvsserver-intro.xml
  
  Index: cvsserver-intro.xml
  ===================================================================
  <sect2>
  <title>Running a CVS server</title>
  
  <para>This section will describe how to set up, administer and secure
  a CVS server.</para>
  
  <screen>In order to install a CVS server You will need: 
  <xref linkend="cvs"/> and <xref linkend="openssh"/>.
  </screen>
  
  </sect2>
  
  
  
  1.1                  BLFS/BOOK/server/other/cvsserver/cvsserver.ent
  
  Index: cvsserver.ent
  ===================================================================
  <!ENTITY cvsserver SYSTEM "../cvsserver.xml">
  <!ENTITY cvsserver-intro SYSTEM "cvsserver-intro.xml">
  <!ENTITY cvsserver-inst SYSTEM "cvsserver-inst.xml">
  <!ENTITY cvsserver-exp SYSTEM "cvsserver-exp.xml">
  
  
  
-- 
Unsubscribe: send email to listar at linuxfromscratch.org
and put 'unsubscribe blfs-book' in the subject header of the message



More information about the blfs-book mailing list