From a75bbda07c73b99148fbd5eb3db0a2dc3b4fbb35 Mon Sep 17 00:00:00 2001 From: rayosborn Date: Mon, 23 Oct 2023 19:23:10 +0000 Subject: [PATCH] deploy: 13528d41d64d9531ab72f2eed341d939b3dc8efd --- _sources/installation.rst.txt | 33 ++++++++++++++++++++++++++++++--- installation.html | 32 +++++++++++++++++++++++++++++--- searchindex.js | 2 +- 3 files changed, 60 insertions(+), 7 deletions(-) diff --git a/_sources/installation.rst.txt b/_sources/installation.rst.txt index 284c1c2..f8ee3ee 100644 --- a/_sources/installation.rst.txt +++ b/_sources/installation.rst.txt @@ -52,10 +52,37 @@ command: $ nxserver -d /path/to/parent -.. note:: The name of the server directory is always 'nxserver.' This - will be appended to the supplied path, unless the final - element is already 'nxserver.' +This will create a directory at '/path/to/parent/nxserver' containing +the files that are required by NXRefine server. + +.. note:: If the supplied path already ends in 'nxserver,' it will not + be appended. All the files in the 'nxserver' directory will have group read/write permissions to allow them to be updated by multiple users in that group. +This also adds a hidden file to the home directory pointing to the +server directory, so that the server path can be read in future login +sessions. Each user should then issue the same command to store the +server directory in their own home directory. If the server directory +already exists, it is not touched. In principle, this only needs to be +run once, + +NXRefine uses file-based locking to prevent corruption of data files. +This system is provided by the +`nexusformat package `_, which defines +the directory to contain the lock files using the NX_LOCKDIRECTORY +environment variable. It is recommended that this directory be placed +within the server directory. + +.. note:: The NeXpy GUI has a settings file that can be used to define + the lock directory, but it is overridden by the environment + variable if it is defined. This allows system administrators + to set up a unique lock file directory for all their users. + +It is suggested that users add the following to their .bashrc file:: + + export NX_LOCKDIRECTORY=/nfs/chess/id4baux/nxserver/locks + export NX_LOCK=10 + nxserver -d /nfs/chess/id4baux/nxserver + diff --git a/installation.html b/installation.html index 7f4e1b6..85df8b5 100644 --- a/installation.html +++ b/installation.html @@ -107,14 +107,40 @@

Initial Setup

Note

-

The name of the server directory is always ‘nxserver.’ This -will be appended to the supplied path, unless the final -element is already ‘nxserver.’

+

If the supplied path already ends in ‘nxserver,’ it will not +be appended.

All the files in the ‘nxserver’ directory will have group read/write permissions to allow them to be updated by multiple users in that group.

+

This also adds a hidden file to the home directory pointing to the +server directory, so that the server path can be read in future login +sessions. Each user should then issue the same command to store the +server directory in their own home directory. If the server directory +already exists, it is not touched. In principle, this only needs to be +run once,

+

NXRefine uses file-based locking to prevent corruption of data files. +This system is provided by the +nexusformat package, which defines +the directory to contain the lock files using the NX_LOCKDIRECTORY +environment variable. It is recommended that this directory be placed +within the server directory.

+
+

Note

+

The NeXpy GUI has a settings file that can be used to define +the lock directory, but it is overridden by the environment +variable if it is defined. This allows system administrators +to set up a unique lock file directory for all their users.

+
+

It is suggested that users add the following to their .bashrc file:

+
export NX_LOCKDIRECTORY=/nfs/chess/id4baux/nxserver/locks
+export NX_LOCK=10
+nxserver -d /nfs/chess/id4baux/nxserver
+
+
diff --git a/searchindex.js b/searchindex.js index 5bf3fc5..7901d5f 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["index","installation","introduction","nxrefine"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":5,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["index.rst","installation.rst","introduction.rst","nxrefine.rst"],objects:{},objnames:{},objtypes:{},terms:{"0":2,"1":2,"1999":2,"30":2,"32":2,"3d":2,"614":2,"90":2,"\u03b4":2,"\u03b4pdf":2,"\u03b7":2,"\u03b8":2,"\u03bc":2,"\u03bd":2,"\u03c6":2,"\u03c7":2,"\u03c9":2,"final":[1,2],"function":[0,2],"while":0,At:2,For:2,If:[1,2],In:[1,2],It:[1,2],The:[0,1,2],Then:1,These:0,about:2,acquisit:[0,2],addit:2,adjust:2,advanc:0,after:0,all:[1,2],allow:[0,1,2],alreadi:1,also:2,although:2,alwai:1,an:[0,2],angl:2,ani:1,anl:1,append:1,appl:2,approxim:2,ar:[0,1,2],area:[0,2],aris:0,arrai:[0,2],assum:2,autom:0,automat:2,avail:0,averag:[0,2],axi:2,base:[1,2],batch:0,beam:[0,2],been:2,befor:[0,2],behind:2,being:0,between:2,both:[0,2],bragg:[0,2],bug:1,build:1,c:[1,2],calibr:2,call:2,can:[0,1,2],cartesian:2,cci:1,cctbx:1,cctbx_doc:1,cctw:[0,2],chang:2,chip:2,circl:2,clone:1,code:1,collect:[0,2],com:1,command:[0,1],complet:[0,2],compris:2,configur:2,connect:2,consist:2,contact:1,contigu:0,continu:[0,2],convent:2,coordin:[0,1,2],correspond:2,coupl:2,creat:2,cryst:2,crystal:[0,1,2],crystallin:[0,2],crystallograph:0,crystallographi:2,current:[1,2],d:1,data:[0,2],dectri:2,defin:[1,2],depend:1,deriv:0,design:2,det:2,detector:[0,2],determin:2,deviat:[0,2],differ:2,diffract:0,diffus:[0,2],dimension:[0,2],direct:2,directori:1,distribut:[1,2],doc:1,download:1,e:[0,2],each:2,earlier:2,either:[0,2],element:1,elimin:2,enabl:[0,2],entir:0,equival:2,exist:0,experi:2,experiment:[0,1],fashion:0,fast:0,fastest:2,fig:2,figur:2,file:1,fill:2,fix:2,follow:[1,2],form:2,four:2,from:[0,1,2],futur:1,g:0,gap:2,gener:[0,2],geometri:0,gigabyt:2,git:1,github:1,goal:0,goniomet:2,gonpitch:2,gov:1,grid:1,group:1,gui:[0,1],h:2,ha:[1,2],hand:2,handl:2,have:[0,1],horizont:2,howev:[0,2],http:1,hundr:2,i:2,ideal:2,imag:[0,2],implement:[0,2],incid:2,includ:0,independ:2,index:0,initi:[0,2],input:1,inspect:[0,2],instal:0,instrument:[0,2],intens:[0,2],interatom:2,interest:1,introduct:0,io:1,issu:1,itself:2,j:2,jen:1,job:0,just:2,known:2,lab:2,laboratori:2,larg:0,launch:[0,1],lbl:1,librari:0,line:[0,1],list:1,log:1,m:1,machin:1,map:2,matrix:[0,2],matter:0,measur:[0,2],merg:2,mesh:[0,2],metadata:1,method:2,minut:[0,2],misalign:2,model:2,modul:0,monochromat:[0,2],motor:2,multipl:[1,2],must:1,name:1,necessari:2,nexpi:[0,1],normal:2,nxrefin:[1,2],nxserver:1,often:2,onc:2,one:2,onli:2,order:1,org:1,orient:[0,2],orthogon:2,osborn:1,output:1,packag:1,page:0,pair:2,parallel:2,parametr:2,parent:1,path:1,patterson:2,pdf:2,peak:[0,2],permiss:1,perpendicular:2,pilatu:2,pip:1,pitch:2,pixel:2,place:2,plane:2,pleas:1,plugin:0,possibl:2,powder:2,present:2,principl:2,probabl:2,process:[1,2],produc:2,program:2,psutil:1,punch:2,pyfai:1,pypi:1,python:[0,1],q:2,queue:[0,1],quickli:2,rai:[0,1,2],rapid:0,raw:2,read:1,readthedoc:1,reason:2,recent:0,reciproc:[0,2],rectangular:2,reduc:[0,2],reduct:[0,2],refer:2,refin:[0,2],relat:2,relev:1,repeat:2,report:1,repositori:1,repres:2,requir:0,respect:2,result:2,retain:2,right:2,rosborn:1,rotat:[0,2],run:[0,2],s:2,sampl:[0,2],scan:2,scatter:[0,2],scientist:2,search:0,see:2,separ:1,seri:2,server:1,set:[0,1,2],setup:0,should:2,show:2,shown:2,sinc:2,singl:[0,2],small:2,so:[0,1,2],solv:0,sometim:2,sourc:1,space:[0,2],sqlalchemi:1,stack:0,stage:2,standard:1,still:2,store:1,structur:[0,2],submit:0,sum:2,suppli:1,support:0,synchrotron:0,system:2,task:1,temperatur:[0,2],ten:2,them:[1,2],thi:[1,2],those:2,three:[0,2],tilt:2,time:2,tool:1,traceback:1,transform:[0,1,2],translat:2,transmiss:2,two:2,typic:0,uncompress:2,under:2,unless:1,updat:1,upload:1,url:1,us:[0,1,2],user:0,usual:2,variabl:2,vector:2,version:2,vertic:2,volum:[0,2],wa:2,when:2,which:[1,2],within:1,without:1,workflow:[0,1,2],write:1,written:[0,1],x:[0,2],y:2,yaw:2,you:[1,2],z:2},titles:["NXRefine","Installation","Introduction","nxrefine package"],titleterms:{cctw:1,content:3,experiment:2,geometri:2,indic:0,initi:1,instal:1,introduct:2,librari:1,modul:3,nxrefin:[0,3],packag:3,requir:1,setup:1,submodul:3,support:1,tabl:0,user:1}}) \ No newline at end of file +Search.setIndex({docnames:["index","installation","introduction","nxrefine"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":5,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["index.rst","installation.rst","introduction.rst","nxrefine.rst"],objects:{},objnames:{},objtypes:{},terms:{"0":2,"1":2,"10":1,"1999":2,"30":2,"32":2,"3d":2,"614":2,"90":2,"\u03b4":2,"\u03b4pdf":2,"\u03b7":2,"\u03b8":2,"\u03bc":2,"\u03bd":2,"\u03c6":2,"\u03c7":2,"\u03c9":2,"export":1,"final":2,"function":[0,2],"while":0,At:2,For:2,If:[1,2],In:[1,2],It:[1,2],The:[0,1,2],Then:1,These:0,about:2,acquisit:[0,2],add:1,addit:2,adjust:2,administr:1,advanc:0,after:0,all:[1,2],allow:[0,1,2],alreadi:1,also:[1,2],although:2,an:[0,2],angl:2,ani:1,anl:1,append:1,appl:2,approxim:2,ar:[0,1,2],area:[0,2],aris:0,arrai:[0,2],assum:2,autom:0,automat:2,avail:0,averag:[0,2],axi:2,base:[1,2],bashrc:1,batch:0,beam:[0,2],been:2,befor:[0,2],behind:2,being:0,between:2,both:[0,2],bragg:[0,2],bug:1,build:1,c:[1,2],calibr:2,call:2,can:[0,1,2],cartesian:2,cci:1,cctbx:1,cctbx_doc:1,cctw:[0,2],chang:2,chess:1,chip:2,circl:2,clone:1,code:1,collect:[0,2],com:1,command:[0,1],complet:[0,2],compris:2,configur:2,connect:2,consist:2,contact:1,contain:1,contigu:0,continu:[0,2],convent:2,coordin:[0,1,2],correspond:2,corrupt:1,coupl:2,creat:[1,2],cryst:2,crystal:[0,1,2],crystallin:[0,2],crystallograph:0,crystallographi:2,current:[1,2],d:1,data:[0,1,2],dectri:2,defin:[1,2],depend:1,deriv:0,design:2,det:2,detector:[0,2],determin:2,deviat:[0,2],differ:2,diffract:0,diffus:[0,2],dimension:[0,2],direct:2,directori:1,distribut:[1,2],doc:1,download:1,e:[0,2],each:[1,2],earlier:2,either:[0,2],elimin:2,enabl:[0,2],end:1,entir:0,environ:1,equival:2,exist:[0,1],experi:2,experiment:[0,1],fashion:0,fast:0,fastest:2,fig:2,figur:2,file:1,fill:2,fix:2,follow:[1,2],form:2,four:2,from:[0,1,2],futur:1,g:0,gap:2,gener:[0,2],geometri:0,gigabyt:2,git:1,github:1,goal:0,goniomet:2,gonpitch:2,gov:1,grid:1,group:1,gui:[0,1],h:2,ha:[1,2],hand:2,handl:2,have:[0,1],hidden:1,home:1,horizont:2,howev:[0,2],http:1,hundr:2,i:2,id4baux:1,ideal:2,imag:[0,2],implement:[0,2],incid:2,includ:0,independ:2,index:0,initi:[0,2],input:1,inspect:[0,2],instal:0,instrument:[0,2],intens:[0,2],interatom:2,interest:1,introduct:0,io:1,issu:1,itself:2,j:2,jen:1,job:0,just:2,known:2,lab:2,laboratori:2,larg:0,launch:[0,1],lbl:1,librari:0,line:[0,1],list:1,lock:1,log:1,login:1,m:1,machin:1,map:2,matrix:[0,2],matter:0,measur:[0,2],merg:2,mesh:[0,2],metadata:1,method:2,minut:[0,2],misalign:2,model:2,modul:0,monochromat:[0,2],motor:2,multipl:[1,2],must:1,necessari:2,need:1,nexpi:[0,1],nexusformat:1,nf:1,normal:2,nx_lock:1,nx_lockdirectori:1,nxrefin:[1,2],nxserver:1,often:2,onc:[1,2],one:2,onli:[1,2],order:1,org:1,orient:[0,2],orthogon:2,osborn:1,output:1,overridden:1,own:1,packag:1,page:0,pair:2,parallel:2,parametr:2,parent:1,path:1,patterson:2,pdf:2,peak:[0,2],permiss:1,perpendicular:2,pilatu:2,pip:1,pitch:2,pixel:2,place:[1,2],plane:2,pleas:1,plugin:0,point:1,possibl:2,powder:2,present:2,prevent:1,principl:[1,2],probabl:2,process:[1,2],produc:2,program:2,provid:1,psutil:1,punch:2,pyfai:1,pypi:1,python:[0,1],q:2,queue:[0,1],quickli:2,rai:[0,1,2],rapid:0,raw:2,read:1,readthedoc:1,reason:2,recent:0,reciproc:[0,2],recommend:1,rectangular:2,reduc:[0,2],reduct:[0,2],refer:2,refin:[0,2],relat:2,relev:1,repeat:2,report:1,repositori:1,repres:2,requir:0,respect:2,result:2,retain:2,right:2,rosborn:1,rotat:[0,2],run:[0,1,2],s:2,same:1,sampl:[0,2],scan:2,scatter:[0,2],scientist:2,search:0,see:2,separ:1,seri:2,server:1,session:1,set:[0,1,2],setup:0,should:[1,2],show:2,shown:2,sinc:2,singl:[0,2],small:2,so:[0,1,2],solv:0,sometim:2,sourc:1,space:[0,2],sqlalchemi:1,stack:0,stage:2,standard:1,still:2,store:1,structur:[0,2],submit:0,suggest:1,sum:2,suppli:1,support:0,synchrotron:0,system:[1,2],task:1,temperatur:[0,2],ten:2,them:[1,2],thi:[1,2],those:2,three:[0,2],tilt:2,time:2,tool:1,touch:1,traceback:1,transform:[0,1,2],translat:2,transmiss:2,two:2,typic:0,uncompress:2,under:2,uniqu:1,up:1,updat:1,upload:1,url:1,us:[0,1,2],user:0,usual:2,variabl:[1,2],vector:2,version:2,vertic:2,volum:[0,2],wa:2,when:2,which:[1,2],within:1,without:1,workflow:[0,1,2],write:1,written:[0,1],x:[0,2],y:2,yaw:2,you:[1,2],z:2},titles:["NXRefine","Installation","Introduction","nxrefine package"],titleterms:{cctw:1,content:3,experiment:2,geometri:2,indic:0,initi:1,instal:1,introduct:2,librari:1,modul:3,nxrefin:[0,3],packag:3,requir:1,setup:1,submodul:3,support:1,tabl:0,user:1}}) \ No newline at end of file