Install CVS server

Pendahuluan:
Hi semua, sebelumnya saya ingin jelaskan terlebih dahulu apa itu CVS menurut saya, CVS adalah aplikasi berbasiskan open source yang berfungsi sebagai repository dan versioning, CVS dan Subversion adalah sejenis, namun pengembangan subversion jauh diatas CVS, Subversion yang pada materi sebelumnya sudah pernah saya bahas. berikut cara instalasi yang sudah saya pernah coba, jika ada kesalahan mohon dimaafkan dan jika ada pertanyaan mohon langsung PM dengan saya

Skenario
1. dalam hal ini saya buatkan contoh CVS server di install di server 192.168.0.12 
2. path root directorynya adalah /home/infra/cvsroot
3. user = infra, passowrd = infra
      Saya tidak membahas penggunaan CVS secara detail ya, mohon mencari sendiri caranya di google

INSTALL CVS SERVER + CLIENT

server side
  1. install CVS server
# yum install CVS
atau
tar -zxvf file.tar.gz
cd cvs xxxxx
./configure
make
make install

  1. create user and group
# groupadd develop
# useradd -M -s /sbin/nologin infra -G develop
NOTE : untuk membuat user yang bisa dipakai untuk login hilangkan gunakan useradd infra -G develop

  1. cek service CVS
cat /etc/services | grep 2401
cvspserver 2401/tcp # CVS client/server operations
cvspserver 2401/udp # CVS client/server operations

  1. Edit atau Tambahkan file CVS
# vi /etc/xinetd.d/cvs
# default: off
# description: The CVS service can record the history of your source \
# files. CVS stores all the versions of a file in a single \
# file in a clever way that only stores the differences \
# between versions.
service cvspserver
{
disable = no
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
env = HOME=/home/infra/cvsroot
server_args = -f --allow-root=/home/infra/cvsroot pserver
# bind = 127.0.0.1
}
bila anda ingin mengganti default home folder CVS nya, rubah saja pada env dan server_args

  1. Restart service xinetd
# /etc/xinetd.d/xinetd restart
pastikan port 2401 sudah open dengan mengetikkan nmap localhost

  1. Buat file repositories dan hak akses nya
# cvs -d home/infra/cvsroot init
# chown -R infra.develop home/infra/cvsroot
# chmod ug+rwx home/infra/cvsroot
# chmod o-rwx home/infra/cvsroot
# chmod g+s home/infra/cvsroot

  1. buat file untuk generate password agar password ter enkripsi dan random, sebagai contoh saya tempatkan file tersebut di /tmp
# vi random.pl
#!/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";

ganti premission nya menjadi
# chmod 777 /tmp/random.pl && chown .develop /tmp/random.pl
untuk test file tersebut gunakan perintah berikut
# /tmp/random.pl passwordnya
tdo0P9yxNTGrU → copy kode tesebut


  1. buat file untuk mengecek passoword
# cd /home/infra/cvsroot/CVSROOT
# vi passwd
# echo infra:tdo0P9yxNTGrU > passwd
# chmod 777 /home/infra/cvsroot/CVSROOT/passwd && chown .develop /home/infra/cvsroot/CVSROOT/passwd

  1. edit file config
# cd /home/infra/cvsroot/CVSROOT
# vi config
hilangkan tanda # pada baris
#SystemAuth=no
Menjadi
SystemAuth=no

  1. Restart service xinetd
# /etc/xinetd.d/xinetd restart
  1. edit file modul
# cd /home/infra/cvsroot/CVSROOT
# echo karir -a background backup crm crm_login daily data fonts functions htmltoexcel iklan images jobs library logos logs photos programs request scripts styles tables utility >> /home/infra/cvsroot/CVSROOT/moduls
Note : perintah diatas menunjukan lingkup folder yang digunakan, jadi jika anda ada keperluan lainnya, anda dapat tambahkan sendiri
  1. Buat enviroment
login menggunakan user yang akan dibuatkan enviroment nya (contoh web)
# echo export CVSROOT=/home/infra/cvsroot >> /home/infra/.bash_profile

Client Side
setting di client (WINCVS)
yang perlu di perhatikan untuk sisi client adalah path untuk menunjukan CVSROOT, gunakan script berikut ini
:pserver;username=infra;password=infra;hostname=192.168.0.12:/home/infra/cvsroot
keterangan :
pserver =adalah protocol yang digunakan
username=adalah user yang sudah teregistrasi di server
password=adalah password yang sudah di encrypt (lihat no.7)
hostname=adalah ipserver/DNS yang terinstall CVS server
CVSROOT=adalah path yang menunjukan directory repositories di server
beberapa fungsi yang sering digunakan dalam CVS
  1. Login = sebuah menu untuk mengetest CVS script
  2. Logout = sebuah menu untuk mengetest CVS script
  3. CVScheckout = untuk mengambil / export dari repo
  4. import modules = untuk upload repositories structure
  5. update = untuk melakukan perubahan file di server
  6. commit = untuk permanent kan file yang sudah di rubah

Comments

Popular posts from this blog

Configure Open Smtp google with Postfix

membuat random password di linux

ISCSI