Andreas Kyek wrote:
On 31 May 2001, at 18:03, Peter Spiess wrote:
Hm, einerseits sehe ich das ein, andererseits ist es mir nicht ganz verständlich. Bei ein paar Anwendungen ist es notwendig, daß ein user einem anderen user eine Datei zur Weiterbearbeitung gibt. Da helfen auch gleiche Gruppenzugehörigkeiten nicht. Der user, der die Datei bearbeitet, muß auch der Eigentümer sein.
Dann ist der einzig legale Weg, daß der andere sich die Datei holt. Dieses holen MUSS dann ein copy sein, kein move. Denn beim Copy wird die Datei unter deiner eigenen Kennung neu angelegt. Beim move dagegen nicht. Danach kann man dann ja die Originaldatei, wenn Du sie in ein Übergabeverzeichnis gestellt hast, löschen.
Wenn man die Möglichkeit hat, eine Gruppe mit allen Berechtigten einzurichten, bietet es sich auch an, das Problem mit RCS zu lösen: Man richtet ein gemeinsames Arbeitsverzeichnis (schreibbar für die Gruppe) ein, in dem dann die einzelnen Dateien unter RCS-Kontrolle gestellt werden. Wer eine Datei bearbeiten möchte, checkt diese mit `ci -l DATEINAME` aus, wobei sie für ihn schreibbar wird.[1] Nach getaner Arbeit checkt der Benutzer die Datei mit `ci [-u] DATEINAME` wieder ein. Bei Einhaltung dieses Verfahrens stellt RCS auch sicher, daß sich nicht zwei Leute gleichzeitig an der selben Datei zu schaffen machen -- und die Versionenkontrolle bekommt man auch gleich dazu[2]. Irgendwo in den man-Pages zu RCS wird AFAIK auch ein Verfahren beschrieben, wie man ohne Gruppe auskommt, indem ci und co vom Verwalter des RCS-Verzeichnisses mit SetUID-Bit installiert werden und so Schreibrechte darauf haben. Ich weiß aber gerade nicht mehr, was man da noch alles beachten mußte. Und für größere Projekte bietet sich auch CVS an. Eilert Footnotes: [1] Tatsächlich löscht RCS die bisherige Arbeitskopie der Datei und ersetzt sie durch eine neue Fassung, die dann natürlich dem Aufrufer gehört. Das ist mit Schreibrechten für das Verzeichnis auch ohne Schreibrecht auf die einzelne Datei möglich. [2] Das ist ja der Hauptzweck von RCS (Revision Control System). -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Eilert Brinkmann -- Universitaet Bremen -- FB 3, Informatik eilert@informatik.uni-bremen.de - eilert@tzi.org http://www.informatik.uni-bremen.de/~eilert/