O serviço cvsd te deixa configurar usuários sem a necessidade de usar os do sistema, além de é claro, subir repositórios do cvs.
Tive a necessidade de atualizar meus servidores na empresa, e em um deles rodava o serviço de CVS. Era uma máquina um tanto obsoleta e uma distro também (Fedora 5).
Migrei tudo o que tinha para Ubuntu, mas ficou o cvs para resolver, instalei, configurei. Porém não queria que os usuários fossem autenticados como usuários do sistema, tentei de várias maneiras e não consegui, até que encontrei o cvsd (meio na cara né. :) ). Com ele resolvi os problemas, e de quebra não precisei usar mais o xinetd para iniciar o cvs.
Segue a instalação e configuração do mesmo:
# apt-get install cvs cvsd
Na configuração do cvsd aparecerá a mensagem:
Configuring cvsd
A ideia do cvsd é servir repositórios. Especifique uma lista separada por dois pontos ':' de repositórios a serem servidos. A localização desses repositórios é relativa a saída jaula chroot especificada (/var/lib/cvsd) e deve iniciar com uma '/'.
Os repositórios aqui devem ser inicializados manualmente com um comando como 'cvs -d /var/lib/cvsd/myrepos init' e logo após senhas poderão ser definidas com um comando como 'cvsd-passwd /var/lib/cvsd/myrepos anomymous'. Consulte o arquivo /usr/share/doc/cvsd/README.gz para maiores detalhes sobre a criação de repositórios.
Repositórios a serem servidos:
/demo:/myrepos
<Ok> <Cancelar>
Pode ser apagado /demo:/myrepos e colocar o seu repositório, aqui vou chamá-lo de vol. Como na própria mensagem diz, devemos iniciar então o repositório:
# cvs -d /var/lib/cvsd/vol init
Aqui o cvs cria o diretório CVSROOT que contém as informações e configurações do cvs.
Feito isso devemos criar os usuários, também especificado na mensagem:
# cvsd-passwd /var/lib/cvsd/vol nomeUsuario
Agora faz-se necessário configurar o cvsd, pois o mesmo não inicia no Ubuntu, e vendo os logs dele gerado observa-se que a porta está sendo usada, para corrigir isso edite o arquivo do cvsd.
# vi /etc/cvsd/cvsd.conf
Altere "Listen * 2401" para "Listen 0.0.0.0 2401", salve e reinicie o serviço:
# service cvsd restart
Caso já tenha projetos em uso, basta copiá-los para /var/lib/cvsd/vol e dar permissões para os projetos. Exemplo:
# chmod 777 -R /var/lib/cvsd/vol
Podemos ainda criar um script para inserção de novos usuários sem ter a necessidade de digitarmos todo o comando de criação:
#!/bin/bash
echo "Digite o nome do usuario para CVS"
read usuario
cvsd-passwd /var/lib/cvsd/vol $usuario
[1] Comentário enviado por cctessaro em 26/10/2010 - 21:02h
Salve!
Cara muito bom o artigo....gostei muito!
to so com um pequenino problema :
eu ja exportei a variavel CVSROOT porém quando eu dou um cvs login e digito a senha do usuário a seguinte mensagem me é apresentada :
cvs -d :pserver:[email protected]:/var/lib/cvsd/cassio login
Logging in to :pserver:[email protected]:2401:/var/lib/cvsd/cassio
cvs [login aborted]: unrecognized auth response from 10.10.0.199: cvs [pserver aborted]: /var/lib/cvsd/cassio: no such repository
Seguinte, eu já iniciei os repositorios que eu criei no cvsd.
[2] Comentário enviado por denilsoneskas em 27/10/2010 - 08:53h
Seguinte, usava o CVS em fedora 5.0(puta obsoleto).
Também quiz utilizar os dados do CVSROOT, pois tinham bastantes usuários cadastrados, porém encontrei o mesmo erro.
Só consegui utilizar fazendo-o do zero, mas os repositórios funcionaram sem nenhum incomodo.
Creio que não ajudou, mas foi a dificuldade que tive.