To: brahms-dev-l@bnl.gov, bearden@hehi03.nbi.dk Subject: Re: updating brat In-Reply-To: <39A25911.1B975A94@hehi03.nbi.dk> References: <39A25911.1B975A94@hehi03.nbi.dk> X-Mailer: Mew version 1.94 on Emacs 20.3 / Mule 4.0 (HANANOEN) ---- Hi Ian, On Tue, 22 Aug 2000 12:42:25 +0200 "I. G. Bearden" <bearden@hehi03.nbi.dk> wrote concerning ": updating brat": > I am trying to do the following: > cvs update brat > I get the error message > >cvs update: Sorry, you don't have read/write access to the history file > > >cvs [update aborted]: /afs/rhic/brahms/BRAHMS_CVS/CVSROOT/history: > Permission denied > I seem to recall having done this in the past without this particular > problem (which also occurs if > I try to do a checkout). Has the protection scheme changed, or have I > made (a series of...) dumb mistake. Hrmm, I don't really want to answer that last question, since it may prove fatal to my health. Anyway, here's what you need to do, and why: The CVS Repostory is on the AFS for rhic. In general, one doesn't need special priviliges to read from a AFS volume, such as /afs/rhic/brahms/BRAHMS_CVS/brat, while others are more restricted, like /afs/cern.ch/user/b/bearden. However, _writting_ on a AFS volume is a serious matter, and _must_ be subject to restrictions. Therefore one needs special priviliges to write to /afs/rhic/brahms/BRAHMS_CVS/brat. "But I'm not writting to the CVS respository, I'm reading" I hear you say. Well, not exactly. When you update your working copy from CVS, CVS creates lock files, with the user priviliges, to insure that noone can commit during your update (which could break your code!), hence you need write permissions in the repository directory! "Ok, so how do I get those write permissions?". You obtain your AFS token with the command "klog". One needs to obtain seperatetokens for each volume (cern.ch, rhic) one wants them for. Since the system default volume (at NBI anyway) is cern.ch, you need to tell klog that you want the token for volume rhic. Some times you also need to use a special user name, if the AFS user name isn't the same as the local name. All in all it looks like prompt% klog -cell <volume> -principal <user> In your case prompt% klog -cell rhic after that, you should have the needd token. check it with "tokens" command. You can also check the access rightd on any AFS directory with "fs listacl <dir>". Please note, that on the hehi account, there's a script that I use for updating BRAT. You still need the AFS token (no way around that). Just login as "hehi" and get your token, and then run the script "update_brat.csh": prompt% klog -cell rhic -pr bearden Password: prompt% update_brat.csh <vers> [<vers sym> [<root vers> [<cvs tag>]]] where <vers> is the version number (like 1.8.2), <vers sym> is one of "pro", "new", or "old", <root vers> is the ROOT version for compiling BRAT, and can a real version number (e.g., 2.25.02 (not out yet)), or a symbolic version, like "pro", "new", or "old". Finally <cvs tag> is the version tag from the repository (e.g., VER-1-8-1). Note, that defaults are: <vers sym> = pro <root vers> = pro <cvs tag> = empty Note that if you don't specify a CVS tag, you'll get the head of the repository, which should be placed in something like <next version>-pre, and with symbol "dev". If the script can't find the source files, it'll try to get them from the CVS. If it can find the source files, it recompiles it. This is useful, since that means you can log on to a Linux machine with AFS (say hilux05), run update_brat.csh to get the sources and build for Redhat 5.2, then logon to a redhat 6.1 machine (say hilux12), run update_brat.csh again to build for the type of Linux box, then log on to a Digital Machine and build there, using the script! I hope that helps. Live long and prosper, Christian ----------------------------------------------------------- Holm Christensen Phone: (+45) 35 35 96 91 Sankt Hansgade 23, 1. th. Office: (+45) 353 25 305 DK-2200 Copenhagen N Web: www.nbi.dk/~cholm Denmark Email: cholm@nbi.dk
This archive was generated by hypermail 2b29 : Tue Aug 22 2000 - 08:43:43 EDT