How to Update from v16 (Linux) » History » Revision 10
« Previous |
Revision 10/47
(diff)
| Next »
Anchi Cheng, 06/03/2010 12:41 PM
How to Update from v16 (Linux)¶
The changes from v1.6 requires update of all in-house components of Leginon, dbemtools and database
but not the mrctools.
Don't forget that you need to also update the packages on the microscope-controlling computer
since the pyScope update need to be synchronized.
See Installation Troubleshooting and Leginon Bulletin Board searching
for "install" if you run into problems.
Packages required from NRAMM¶
All Leginon (and Appion) packages distributed from NRAMM are not under one svn control called myami.
A few updates are needed for preparation of python 3.0 compatibility where the method for importing module is changed. They will still run under python 2.4 and up.
Here are the packages you need to install with python installer
SVN subPackage Name | Reason for update: |
---|---|
numextension | package import method change |
libcv | package import method change |
leginon | new features |
pyami | new features |
sinedon | required for updating database |
pyscope | new method for creating pythoncom modules |
imageviewer | debug |
Move your existing packages to a backup directory:¶
At the beginning of the syscheck.py output, the location of the exisiting Leginon folder is shown. Although new installation overwrite the old in most cases, problem has been observed in the past. Therefore, it is best to remove the old files from the path before new installation. Better yet, copy into a backup folder because we need some configuration files from them.
For example, your Leginon folder is at /usr/lib/python/site-packages/Leginon
cd /usr/lib/python/site-packages mkdir Leginon1_6_backup mv Leginon Leginon1_6_backup
Be aware that in some cases the installed package name is different (capitalized) from your svn package name and that numextension amd libCV are not in its own subdirectory in the python library but just the compiled .so files
Perform system check if you can't remember where you have installed your Leginon before.¶
cd ~/myami-2.0/leginon python syscheck.py
You should have all the supporting packages installed for v1.6. If you see any lines like "*** Failed...", then you have something missing. Otherwise, everything should result in "OK".
Install Appion Packages¶
Install the appion python package¶
Install all the myami python packages except appion using the following script:¶
cd /path/to/myami-VERSION/myami sudo ./pysetup.sh install
That will install each package, and report any failures. To determine the cause of failure, see the generated log file "pysetup.log".
Packages installed by pysetup.sh¶
Package Path: |
---|
pyami |
myami_test |
sinedon |
leginon |
pyscope |
imageviewer |
modules/numextension |
modules/radermacher |
modules/libcv |
alternatively, install a specific package in turn¶
If necessary, you can enter a specific package directory and run the python setup command manually. For example, if pyami failed to install, you can try again like this:
cd pyami sudo python setup.py install
python-site-package-path: where the installed python packages went:¶
Python installer put the packages you installed into its site-packages directory. This enables all users on the same computer to access them. The easiest way to discover where your installed package is loaded from by python is to load a module from the package using interactive python command lines like this:
Start the python command line from shell:
python
Import a module from the package. Let's try pyami here. All packages installed through the above setup.py script should go to the same place.
At the python prompt (python>) type:
import pyami
If the module is loaded successfully, call the module attribute path (two underscrolls before "path" and two underscrolls after) will return the location of the module it is loaded from
pyami.__path__ ['/usr/lib/python2.6/site-packages/pyami']
In this case, /usr/lib/python2.6/site-packages/ is your python-site-package-path. If you go to that directory, you will find all the packages you just installed.
Save this value as an environment variable for use later, for bash:
export PYTHONSITEPKG='/usr/lib/python2.6/site-packages'
or C shell
setenv PYTHONSITEPKG '/usr/lib/python2.6/site-packages'
Check permissions¶
Verify that all users have executable permission for rctacquisition.py. It may be necessary to run:
chmod 755 ./leginon/rctacquisition.py
Set additional appion environment variables¶
Finally, you will need to set the the MATLABPATH environment variable in order to get the Appion utilities that use Matlab to work.
For bash:
export MATLABPATH=$MATLABPATH:<your_appion_directory>/ace
or C shell
setenv MATLABPATH $MATLABPATH:<your_appion_directory>/ace
< Download Appion/Leginon Files | Perform system check >
Copy your Leginon1.6 sinedon.cfg to the new installation¶
- Find your sinedon.cfg. Depending on your previous setting, look in the directories listed here in order:
*your home directory as described in syscheck.py
*The sinedon directory where it is called from. If unsure, start python command line and type these to find out:python> import sinedon python> sinedon
- If sinedon.cfg reside in the installed sinedon subpackage, you should copy it from your Leginon1,6 backup to the new installation.
cd /your_default_python_installation_path cp Leginon_1_6_backup/sinedon/sinedon.cfg sinedon
Back up all your databases¶
We will be doing a database update that is not backward compatible, Make sure you back up all your current databases before performing the update
- mysqldump -u usr_object your_leginon_database > leginondb_1_6_backup_today's_date
- mysqldump -u usr_object your_project_database > projectdb_1_2_backup_today's_date
- .... do the same to any of your processing databases if you have installed and used Appion 1.0
Install updated Web viewers and tools¶
See Install the Web Interface section in Complete Installation Chapter to put the new web tools (Now under subpackage myamiweb) to document root for the web server. The Setup Wizard will take you through the steps to create config.php and to create and initialize values for the new tables.
Run database update scripts¶
cd ~/myami-2.0/dbschema python schema-r12857.py python schema-r13713.py python schema-r14077.py
The first one update UserData and GroupData so that new data viewing and processing privileges can be enforced
The second is a wide-scale change on database schema many on appion processing databases, and some on projectdata and leginondata.
How to Update from v1.6 (Microscope Windows Computer) >
Updated by Anchi Cheng over 14 years ago · 10 revisions