Backup
A backup of all data (database + files) (~/scripts/backup.sh
):
tar cvzf /mnt/disk/merlin/data0.tgz /data0 [92G]
A backup of software: tomcat8
, labkey
, apache
:
tar cvzf /mnt/disk/merlin/tomcat8.tgz /usr/share/tomcat8 [21M]
tar cvzf /mnt/disk/merlin/tomcat8_catalina.tgz /var/lib/tomcat8 [7.5M]
tar cvzf /mnt/disk/merlin/labkey.tgz /usr/share/labkey [742M]
tar cvzf /mnt/disk/merlin/apache2.tgz /usr/share/apache2 [2.1M]
tar cvzf /mnt/disk/merlin/ssl.tgz /etc/ssl [1.4M]
User code:
tar cvzf /mnt/disk/merlin/andrej.tgz /home/andrej [13G]
Get new labkey version
Fill out the form at labkey.com
, download the files. Untar/unzip.
Upgrade
Follow the checklist.
Identify locations
Important places:
- labkey home:
/usr/share/labkey
(labkeywebapp
,modules
,externalModules
) - tomcat8 home:
/var/lib/tomcat8
(lib
,conf/Catalina/localhost/labkey.xml
)
Backup of current configuration
Make a copy of all current configuration. As root:
cd /usr/share/labkey
mkdir backupN
#N is the backup number; always create a new one
cp -rp labkeywebapp backupN/
cp -rp modules backupN/
cp -rp externalModules backupN/
cd /var/lib/tomcat8
mkdir backupN
#ideally N for tomcat8 and labkey are identical
cp -rp lib backupN/
cp -rp conf backupN/
Stop the server
/etc/init.d/tomcat8 stop
Copy new files
cd /usr/share/labkey
rm -rf labkeywebapp modules
cp -rp /home/andrej/software/src/LabKey16.2-45209.14-community-bin/labkeywebapp .
chown -R tomcat8:tomcat8 labkeywebapp
cp -rp /home/andrej/software/src/LabKey16.2-45209.14-community-bin/modules .
chown -R tomcat8:tomcat8 modules
cd /var/lib/tomcat8
rm -rf lib
mkdir lib
cp -rp /home/andrej/software/src/LabKey16.2-45209.14-community-bin/tomcat-lib/* lib/
chown -R tomcat8:tomcat8 lib
Start the tomcat8 server
/etc/init.d/tomcat8 start
Versions side by side
cd /usr/share/
cp -rp labkey labkey17.1
cp -rp /labkey/backup1 labkey16.2
mv labkey labkey.old
ln -s labkey17.1 labkey
cd /var/lib/tomcat8
cp -rp lib lib_labkey17.1
cp -rp backup1/lib lib_labkey16.2
mv lib lib.old
ln -s lib_labkey16.2 lib