CVS Sunucunun Kurulması ve Yapılandırılması
Önceki CVS ile Açık Kod Yazılım Geliştirme Sonraki
CVS Sunucunun Kurulması ve Yapılandırılması
CVS, http://www.cvshome.org sayfasından indirilip kurulabilir. FreeBSD kullananlar portlardan, Linux kullananlar ise kendi paket yöneticilerinden (.deb, .rpm gibi) yararlanabilirler. cvs paketinin açıldığı dizinde:
# ./configure --prefix /usr/local
# make
# make install
komutları verilerek hızlı kurulum yapılabilir.
CVS sunucu (pserver) 2401. portta çalışır. /etc/services dosyasında aşağıdaki satırların olduğundan emin olun:
# cat /etc/services | grep cvs

cvspserver 2401/tcp #CVS network server
cvspserver 2401/udp #CVS network server
CVS sunucusu inetd veya xinetd ile çalışır. inetd kullananlar (FreeBSD, Slackware) /etc/inetd.conf dosyasında şu satırı bulundurmalılar:
# vi /etc/inetd.conf

cvspserver stream tcp nowait root /usr/local/bin/cvs cvs
¬ --allow-root=/var/cvsroot pserver
Bunu yaptıktan sonra inetd'yi yeniden başlatmalısınız.
# kill -HUP inetd
xinetd kullananlar ise, /etc/xinetd.d/cvspserver dosyasına şunları yazmalı:
/etc/xinetd.d/cvspserver

service cvspserver
{
  disable = no
  socket_type = stream
  wait = no
  user = cvs
  server = /usr/local/bin/cvs
  server_args = --allow-root=/var/cvsroot pserver
  log_on_success += DURATION USERID
  log_on_failure += USERID
  nice = 10
}
tcpserver kullanmak isteyenler için:
# /usr/local/bin/tcpserver -c 25 0 cvspserver /usr/bin/cvs
¬  --allow-root=/var/cvsroot pserver&
Burada /var/cvsroot olarak verilen yol CVSROOT'u yani kod deposunu gösterir. Kodlar ve CVS yönetim bilgileri bu dizindedir. CVSROOT ortam değişkenine bu değeri atamayı unutmayın.
bash kabuğu kullananlar:
# export CVSROOT=/var/cvsroot
csh kabuğu kullananlar:
% set CVSROOT=/var/cvsroot
/usr/local/bin/cvs ise cvs'nin çalışma yoludur (which cvs komutunu vererek bunu öğrenebilirsiniz).
CVS sunucunun cvs kullanıcısı ile çalışacağı varsayılmıştır. Bu kullanıcı hesabını açmanız gerekir.
# groupadd cvs
# useradd -g cvs -m -d /var/cvsroot -s /bin/bash -c "CVS" cvs
Bu ayarları bitirtikden sonra CVSROOT dizinini oluşturmak gerekir.
# cvs init
Bu komutu çalıştırmadan önce CVSROOT değerini export veya set ile atadığınızdan emin olun. Aksi halde şu şekilde kullanmalısınız.
# cvs -d /var/cvsroot init
Bu komut /var/cvsroot dizinini açacaktır. Ayrıca bu dizin altında yönetim bilgilerinin saklandığı CVSROOT dizinini de açar. Bu dizinin haklarını ayarlamayı unutmayın.
# chown -R cvs.cvs /var/cvsroot
Bundan sonra tüm projeler bu dizin altında bir dizin olarak gözükecektir. Bu dizinlerin kullanıcı haklarını da aynı şekilde ayarlamayı unutmayın.
CVS kullanıcılarını, $CVSROOT/CVSROOT/passwd dosyasında tanımlayın.
/var/cvsroot/CVSROOT/passwd dosyası:
simsek:EvQlNsSbLl08I:cvs
user1:WfE9wnFM6gsoQ:cvs
user2:FfJdnVt99Ro/:cvs
Parolalar şifrelenmiş şekilde tutulur. Bu şifreleri üretmek için şu betiği kullanabilirsiniz:
# vi /usr/local/bin/sifrele

#!/usr/bin/perl

srand (time());
my $randletter = "(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))";
my $salt = sprintf ("%c%c", eval $randletter, eval $randletter);
my $plaintext = shift;
my $crypttext = crypt ($plaintext, $salt);

print "${crypttext}\n";
Bundan sonra ./sifrele parolanız komutu ile şifrelenmiş parolayı alıp yukarıda belirtilen biçimde passwd dosyasına yazın. CVSROOT/passwd dosyasındaki satırların en sonundaki cvs, bu kullanıcının eşleştirileceği kullanıcıdır ki bu da CVS sunucunun etkin kullanıcısıdır. CVS kullanıcılarımız gerçek olmadığı için gerçek bir kullanıcıyla bu şekilde eşleştirilmesi gerekir. Şifrelenmiş parola olarak /etc/shadow dosyasındaki parolaları da kullanabilirsiniz. Oradan kendi parolanızı kopyalayıp yapıştırabilirsiniz.
Önceki Üst Ana Başlık Sonraki
Genel Kavramlar Başlangıç Proje Başlatmak
Bir Linux Kitaplığı Sayfası