Geben Sie Ihren Benutzernamen und Ihr Passwort ein, um sich an der Web-Site anzumelden:
 
Thema mit vielen Antworten

CVS-Server für Open Source


Autor Nachricht
Verfasst am: 04.10.2005 [15:51]
tom
Themenersteller
Dabei seit: 26.11.2004
Beiträge: 283
wie aus einem der letzten artikel zu erfahren war, (X)HTML-Format und WebAnalyse werden Open Source!
<a rel='nofollow' href='outbound.php?url=http://www.sachen-fuer-webmaster.de/artikel/329.html' target='_blank'><a href="http://www.sachen-fuer-webmaster.de/artikel/329.html" target="_blank">http://www.sachen-fuer-webmaster.de/artikel/329.html</a></a>

Dazu habe ich am Wochenende einen Highend Server bestellt! Hier werde ich versuchen einen eigenen CVS-Server für das Projekt aufzusetzen.

Wer hat damit Erfahrung und wer hat so eine Installation bereits durchgeführt?
Verfasst am: 04.10.2005 [19:40]
christian
Dabei seit: 21.11.2004
Beiträge: 509
Salve

Leider keine Erfahrung, aber scheinbar eine leidlich gute Seite dazu gefunden:
<a rel='nofollow' href='outbound.php?url=http://kj.uue.org/papers/cvs-handout/' target='_blank'><a href="http://kj.uue.org/papers/cvs-handout/" target="_blank">http://kj.uue.org/papers/cvs-handout/</a></a>

Falls Du eine gute Website kennst, trag sie ein bei http://www.yomada.net. Damit auch andere davon profitieren können.
Verfasst am: 04.10.2005 [21:34]
joe
Dabei seit: 07.04.2002
Beiträge: 1225
Einen CVS-Server aufzusetzen ist nicht so der Act. Je nach installierter Distribution auf dem Server mußt Du im Endeffekt nur das CVS-Paket installieren, den Dienst (cvspserver) in inetd.conf bzw. xinetd.d/ aktivieren, das Repository erstellen und Zugriffsrechte verteilen. Recht ausführlich steht das alles im <a rel='nofollow' href='outbound.php?url=http://ximbiot.com/cvs/manual/cvs-1.11.21/cvs_2.html' target='_blank'>Kapitel 2</a> des CVS Manual.

Eine ernsthafte Frage ist allerdings, warum Du einen eigenen CVS-Server aufsetzen willst?! Für OpenSource bietet sich doch Savannah oder SourceForge regelrecht an...

cu
Joe

while(!asleep()) sheep++;
Verfasst am: 06.10.2005 [18:12]
tom
Themenersteller
Dabei seit: 26.11.2004
Beiträge: 283
Zu Savannah oder SourceForge muß ich mich noch schlau machen! Es ist auch ein Lizenz und rechtliches Problem. Muß sicher beachtet werden. Da wir das Open Source Projekt auf einen eigenen Server verwalten möchten, muß dazu einiges beachtet werden. Ist das bei Savannah oder SourceForge möglich??

Werde in den nächsten Tagen mich in das Thema einlesen.

Joe wie weit hast Du Dich mit CVS Server auseinander gesetzt? Hastg Du schon eine Installation durchgeführt?

Wo bist Du zur Zeit?? icon_smile.gif
Verfasst am: 08.10.2005 [12:55]
joe
Dabei seit: 07.04.2002
Beiträge: 1225
Bei Savanah und SF muß es sich IMHO um Projekte handeln, die unter GPL oder einer ähnlichen Lizenz stehen (freie Software eben). Das ist auch schon fast das Einzige, was zu beachten ist.

Wie meinst Du das mit "auf dem eigenen Server verwalten"? Website usw. kannst Du natürlich betrieben, wo Du willst (auch auf dem Webspace, den Du bei SF kriegst). Tarballs, RPMs und andere Pakete kannst Du bei SF zum Download anbieten und das CVS-Repository liegt auf einem der SF-Server. Schreibzugriff haben nur Projekt-Mitglieder. Der Rest der Welt hat nur Lesezugriff.

Einen CVS-Server hab ich schon mal aufgesetzt. Ist allerdings schon ne Weile her. Seitdem wird das Ding nur noch benutzt icon_smile.gif. Im Endeffekt hab ich aber auch nur das gemacht, was im Kapitel 2 steht (s.o.): Repository initialisieren, cvspserver einrichten und Rechte verteilen. Wenn Du willst, dann kann ich mir das alles nochmal genauer anschauen (dann kann ich mich auch sicher wieder an ein paar Feinheiten erinnern).

Und wenn Du schon so fragst icon_smile.gif. Zur Zeit bin ich ganz langweilig nur in D im Geschäft. Aber übernächste Woche darf ich mal wieder für ne Woche in die Schweiz verschwinden und die nächsten paar Monate geht's, je nach Bedarf, immer mal wieder in die Schweiz und nach Frankreich.

cu
Joe

while(!asleep()) sheep++;
Verfasst am: 21.10.2005 [01:50]
tom
Themenersteller
Dabei seit: 26.11.2004
Beiträge: 283
@joe: gerne komme ich auf dein angebot zurück. die installation des cvs server habe ich durchgeführt. jedoch ist kein login möglich. was ist falsch?

vorgehensweise:

Download von <a rel='nofollow' href='outbound.php?url=http://www.nongnu.org/cvs/' target='_blank'><a href="http://www.nongnu.org/cvs/" target="_blank">http://www.nongnu.org/cvs/</a></a>
<a rel='nofollow' href='outbound.php?url=http://ftp.gnu.org/non-gnu/cvs/' target='_blank'><a href="http://ftp.gnu.org/non-gnu/cvs/" target="_blank">http://ftp.gnu.org/non-gnu/cvs/</a></a>
cvs-1.12.13.tar.gz

per ssh mit root auf den server XX.XXX.XXX.XXX

cvs-1.12.13.tar.gz auf die root ebene kopieren

verzeichnis srv
mkdir cvs --> verzeichnis anlegen
cd cvs
in dieses verzeichnis verschieben
mv /cvs-1.12.13.tar.gz

mkdir source
tar xfvj cvs-1.12.13.tar.gz
verzeichnis wird angelegt cvs-1.12.13

configure --prefix=/usr/local --> configure durchführen (wichtig der prefix)
make --> make ausführen
make install --> installation starten


Mit Yast Benutzer und Gruppen anlegen:
Sicherheit und Benutzer – Gruppen anlegen und bearbeiten – hinzufügen – Name cvs – 500 – alles Standard nehmen
Eine weitere Gruppe „cvsadmin“ anlegen

Benutzer anlegen „cvsuser“ + „cvsadmin“ für Vornamen und Nachnamen.
Login-shell „/bin/false“
Standardgruppe „users“ + zusätzliche Gruppe „cvs“


Verzeichnis für Repository erstellen (für Projektdaten)
mkdir /srv/cvs/Projekt/

Mit cvs ein Verzeichnis anlegen. Dadurch werden Config-Dateien erzeugt, dadurch kann das Repository später konfiguriert werden.
cvs -d :local:/srv/cvs/Projekt/ init

Für das Verzeichnis /srv/cvs/Projekt/ muß eine entsprechende Passwortdatei angelegt werden. Damit nur der User "cvsuser" und die Gruppe "cvs" Zugriff haben. Nicht das "cvsroot" Verzeichnis!! Das wird nur dem "root" freigegeben. Kein Schreibzugriff für andere Personen!!

Folgendes in die Datei /etc/xinetd.conf eintragen (Datei dafür sichern!):
service cvspserver
{
socket_type = stream
protocol = tcp
wait = no
user = root
passenv =
server = /usr/bin/cvs
server_args = -f --allow-root=/srv/cvs/Projekt pserver
}


cvspserver 2401/tcp --> war bereits in etc/services eingetragen! Wenn nicht, dann einfügen! Auf die Reihenfolge achten!

xinetd starten und einloggen!
cvs -d :pserver:Entwickler@ XX.XXX.XXX.XXX:/srv/cvs/Projekt login
Verfasst am: 22.10.2005 [21:01]
tom
Themenersteller
Dabei seit: 26.11.2004
Beiträge: 283
Fehlermeldung nach der Passworteingabe:
cvs [login aborted]: connect to XX.XXX.XXX.XXX(XX.XXX.XXX.XXX):2401 failed: Connection refused
Verfasst am: 22.10.2005 [21:02]
tom
Themenersteller
Dabei seit: 26.11.2004
Beiträge: 283
Habe den Fehler gefunden.

In der Datei /etc/xinetd.conf hatte ich einen falschen Wert für "server" eingetragen:

service cvspserver
{
socket_type = stream
protocol = tcp
wait = no
user = root
passenv =
server = /usr/bin/cvs
server_args = -f --allow-root=/srv/cvs/Projekt pserver
}

bei "server" musste das richtige Verzeichnis angegeben werden "/user/local/bin/cvs"

mit "ps -edal" habe ich die Dienste kontrolliert.
da der Dienst xinetd nicht gestartet war, habe ich ihn gestartet:
etc/init.de/xinetd start

mit telnet erhalte ich nun die Verbindung:
eingabe:
telnet XX.XXX.XXX.XXX 2401
ausgabe:
Trying XX.XXX.XXX.XXX...
Connected to XX.XXX.XXX.XXX.
Escape character is '^]'.


der Login funktioniert ebenfalls:
eingabe:
cvs -d :pserver:Entwickler@XX.XXX.XXX.XXX:/srv/cvs/Projekt login
ausgabe:
passwort:
eingabe:
xxxxx
ausgabe:
cvs login: warning: failed to open /root/.cvspass for reading: No such file or directory

nach wiederholtem Login wurde diese Warnung nicht mehr angezeigt!! weshalb?????
Verfasst am: 22.10.2005 [23:27]
joe
Dabei seit: 07.04.2002
Beiträge: 1225
<!--QuoteBegin-thst+22. Oktober 2005 - 20:02--><div class='quotetop'>ZITAT(thst 4 22. Oktober 2005 - 20:02)</div><div class='quotemain'><!--QuoteEBegin-->cvs login: warning: failed to open /root/.cvspass for reading: No such file or directory

nach wiederholtem Login wurde diese Warnung nicht mehr angezeigt!! weshalb?????<!--QuoteEnd--></div><!--QuoteEEnd-->
Der CVS-Client legt im Home des aktuellen Users die Datei .cvspass an bzw. will beim Verbinden zu einem Server Daten daraus lesen. Weil die Datei noch nicht existiert hat, konnte sie natürlich nicht geöffnet werden und deswegen die Warnung. Ist also nix Schlimmes.

BTW: Du solltest nicht als root arbeiten, wenn's nicht absolut notwendig ist icon_smile.gif

cu
Joe

while(!asleep()) sheep++;
Verfasst am: 22.10.2005 [23:47]
tom
Themenersteller
Dabei seit: 26.11.2004
Beiträge: 283
Danke für die Antwort!

wenn ich das richtig verstanden habe, werden bei den Usern die mit yast angelegt wurden, in dem vom System erzeugten User Verzeichnis eine .cvspass Passwortdatei angelegt.

wie wird diese Datei mit dem vom User vergebenen Passwort beschrieben? besser, woher weiß das System das Passwort für diesen User?


weitere Fragen:

1. hast Du Dir meine Installation für den CVS Server angesehen? Ist das ok?

2. Was ist nun noch zu tun?

3. Der Projektordner ist vorhanden und könnte nun das Repository angelegt werden?

4. mit welcher Client Software verbinde ich mich mit dem zentralen CVS-Server, den ich installiert habe? WinCVS 1.3 oder kann es auch WinCVS 1.2 sein?

5. Gibt es bei dem CVS-Server die Möglichkeit verschiedene Rechte
zuzulassen? So dass z.B. Nutzer 1 nur Repositorys anlegen darf, andere
aber nicht?

6. woher kommt dieser User "Entwickler":
cvs -d :pserver:Entwickler@XX.XXX.XXX.XXX:/srv/cvs/Projekt login
dieser wurde nicht angelegt! Wird dieser bei der Installation automatisch angelegt?

7. ganz wichtig! die Sicherheit! was muß ich dazu beachten??? Das Betriebssystem wurde mit den aktuellsten Patches (Linux) upgedatet und natürlich für die Zukunft auf automatisches Update eingestellt. Nur was ist bei CVS zu beachten - User - Passörter - Verzeichnisschutz .....

[Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 23.10.2005 um 00:40.]