|
|
| Line 22: |
Line 22: |
| * Installs RSNA MIRC. | | * Installs RSNA MIRC. |
|
| |
|
| ===The script itself (in case you don't trust the download)===
| |
|
| |
| #!/bin/bash
| |
|
| |
| # Make sure only root can run our script
| |
| if [[ $EUID -ne 0 ]]; then
| |
| echo "This script must be run as root or using sudo" 1>&2
| |
| exit 1
| |
| fi
| |
|
| |
| #reassure the user something is happening
| |
| echo 'Updating Ubuntu repositories ...'
| |
|
| |
| #work in the temp folder
| |
| cd /var/tmp
| |
|
| |
| # partner repo
| |
| echo deb http://archive.canonical.com/ lucid partner >>/etc/apt/sources.list.d/partner.list
| |
| apt-get -qq update
| |
|
| |
| # preset the java answers:
| |
| debconf-set-selections << END
| |
| sun-java6-jdk shared/accepted-sun-dlj-v1-1 boolean true
| |
| sun-java6-jre shared/accepted-sun-dlj-v1-1 boolean true
| |
| sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true
| |
| END
| |
|
| |
| #reassure the user something is happening
| |
| echo 'Downloading and installing required ubuntu packages ...'
| |
|
| |
| # packages installed:
| |
| apt-get install -y -qq acpid htop unzip xauth libxtst6 sun-java6-jdk
| |
|
| |
| # if a previous version is here - get rid of it
| |
| cd /usr/lib/jvm/java-6-sun/
| |
| if [ -f UNINSTALL-jai_imageio ]; then
| |
| echo 'Removing previous install of JAI ImageIO ...'
| |
| bash UNINSTALL-jai_imageio
| |
| fi
| |
|
| |
| #work in the temp folder
| |
| cd /var/tmp
| |
|
| |
| #reassure the user something is happening
| |
| echo 'Downloading JAI Image IO ...'
| |
|
| |
| #check which chipset we're using
| |
| case $(arch) in
| |
| i686)
| |
| CHIP=i586
| |
| ;;
| |
| x86_64)
| |
| CHIP=amd64
| |
| ;;
| |
| *)
| |
| ;;
| |
| esac
| |
|
| |
| #download the JAI tgz file
| |
| # get jai binary
| |
| if [ -f ./jai_imageio-1_1-lib-linux-$CHIP.tar.gz ]; then
| |
| rm ./jai_imageio-1_1-lib-linux-$CHIP.tar.gz
| |
| fi
| |
| wget -q http://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-linux-$CHIP.tar.gz
| |
|
| |
| #reassure the user something is happening
| |
| echo 'Installing JAI Image IO ...'
| |
|
| |
| #expand the tgz and put the files where they should go (excluding UNINSTALL)
| |
| tar xzf ./jai_imageio-1_1-lib-linux-$CHIP.tar.gz
| |
| mv ./jai_imageio-1_1/*.txt /usr/lib/jvm/java-6-sun/
| |
| mv ./jai_imageio-1_1/lib/libclib_jiio.so /usr/lib/jvm/java-6-sun/jre/lib/$CHIP2/
| |
| mv ./jai_imageio-1_1/lib/*.jar /usr/lib/jvm/java-6-sun/jre/lib/ext/
| |
|
| |
| #generate the UNINSTALL file - using the version that comes in the binary install
| |
| cat > /usr/lib/jvm/java-6-sun/UNINSTALL-jai_imageio <<DELIM
| |
| #!/bin/sh
| |
| # @(#)UNINSTALL-jai_imageio-jdk 3.1 06/05/12 16:18:39
| |
| # usage: UNINSTALL-jai_imageio
| |
|
| |
| echo "Uninstalling Java Advanced Imaging Image I/O Tools"
| |
|
| |
| rm -f *jai_imageio.txt
| |
| rm -f jre/lib/ext/jai_imageio.jar
| |
| rm -f jre/lib/ext/clibwrapper_jiio.jar
| |
| if [ ( `uname` = "SunOS" ) -a ( `uname -p` = "sparc" ) ]; then
| |
| rm -f jre/lib/sparc/libclib_jiio.so
| |
| rm -f jre/lib/sparc/libclib_jiio_vis.so
| |
| rm -f jre/lib/sparc/libclib_jiio_vis2.so
| |
|
| |
| if [ -f jre/lib/sparcv9/libclib_jiio.so ]; then
| |
| rm -f jre/lib/sparcv9/libclib_jiio.so
| |
| rm -f jre/lib/sparcv9/libclib_jiio_vis.so
| |
| rm -f jre/lib/sparcv9/libclib_jiio_vis2.so
| |
| fi
| |
| fi
| |
| if [ -f jre/lib/amd64/libclib_jiio.so ]; then
| |
| rm -f jre/lib/amd64/libclib_jiio.so
| |
| fi
| |
| if [ -f jre/lib/i386/libclib_jiio.so ]; then
| |
| rm -f jre/lib/i386/libclib_jiio.so
| |
| fi
| |
| rm -f UNINSTALL-jai_imageio
| |
|
| |
| echo "Done"
| |
| DELIM
| |
|
| |
| # Stop MIRC-Zn if it is running
| |
| if [ -f /etc/init/MIRC-Zn.conf ]
| |
| then
| |
| if [[ $(stop -q MIRC-Zn 2>&1 | grep Unknown) ]]
| |
| then
| |
| echo 'MIRC-Zn service not currently running ...'
| |
| echo 'MIRC-Zn will be upgraded with the latest version from the RSNA site ...'
| |
| else
| |
| echo 'Stopping current MIRC-Zn service ...'
| |
| echo 'MIRC-Zn will be upgraded with the latest version from the RSNA site ...'
| |
| fi
| |
| fi
| |
|
| |
| #reassure the user something is happening
| |
| echo 'Downloading RSNA MIRC Installer ...'
| |
|
| |
| # go to the target folder
| |
| cd /usr/share
| |
|
| |
| # get MIRC installer
| |
| if [ -f ./MIRC-installer.jar ]; then
| |
| rm ./MIRC-installer.jar
| |
| fi
| |
| wget -q http://mirc.rsna.org/MIRC2/MIRC-installer.jar
| |
|
| |
| #reassure the user something is happening
| |
| echo 'Writing an upstart script and putting it in /etc/init ...'
| |
|
| |
| # make an upstart script
| |
| cat > /etc/init/MIRC-Zn.conf <<DELIM
| |
| description "MIRC Zn (CTP plugin not Tomcat)"
| |
| author "Tim Phillips <timothy.john.phillips@gmail.com>"
| |
|
| |
| start on (local-filesystems and net-device-up IFACE!=lo)
| |
| stop on stopping network-services
| |
|
| |
| respawn
| |
|
| |
| expect fork
| |
|
| |
| script
| |
| cd /usr/share/CTP/
| |
| java -jar ./CTP-runner.jar
| |
| end script
| |
| DELIM
| |
|
| |
| echo -e
| |
| echo -e
| |
| echo -e
| |
| echo 'Now the RSNA installer will run'
| |
| echo 'You will be asked to choose a folder to install CTP/MIRC into'
| |
| echo 'It should be /usr/share or the startup script wont work'
| |
| echo -e
| |
| echo 'hit enter to continue'
| |
| read dummy
| |
| echo -e
| |
| echo -e
| |
|
| |
| if [[ $(java -jar ./MIRC-installer.jar 2>&1 | grep X11) ]]
| |
| then
| |
| # have to re-login with X forwarding
| |
| echo -e
| |
| echo '================================================'
| |
| echo 'NOT FINISHED YET!!!!'
| |
| echo '================================================'
| |
| echo -e
| |
| echo 'X-forwarding is required for the MIRC installer'
| |
| echo -e
| |
| echo 'Here is what you have to do'
| |
| echo ' - logout'
| |
| echo ' - login again from a machine with a GUI and a display....'
| |
| echo ' - using the switch to enable X forwarding'
| |
| echo ' - From a mac: ssh -Y user@host'
| |
| echo ' - From a linux desktop: ssh -X user@host'
| |
| echo ' - If you are using windows you will need PuTTy and Xming.. (google them)'
| |
| echo ' - When you are logged in again re-run this script'
| |
| else
| |
| cd ~
| |
| echo 'Starting MIRC web service (this will also happen automatically at boot) ...'
| |
| start MIRC-Zn
| |
| echo -e
| |
| echo 'finished - it should all be running'
| |
| echo 'point your browser to this server and have a look'
| |
| fi
| |
|
| |
| ==Choosing between Ubuntu Desktop and Ubuntu Server== | | ==Choosing between Ubuntu Desktop and Ubuntu Server== |
|
| |
|
How to install MIRC-Zn on Ubuntu Linux
wget http://timphillips.net/mirc/install-MIRC-Zn
chmod 777 ./install-MIRC-Zn
./install-MIRC-Zn
- Point your browser to the machine you just installed it on and MIRC should be up and running.
- This script will also upgrade a previous "Tim Phillips" installation of MIRC-Zn so it can be used again when the RSNA code is updated.
What the script does
- Checks you're running it as root or using sudo.
- Stops the MIRC-Zn service if its running.
- Checks which chipset you're running.
- Enables the ubuntu partner repo (to get Oracle Java).
- Answers the Java installation questions in advance.
- Installs SunJava and a few other necessary applications.
- Downloads the appropriate JAI ImageIO files installs JAI ImageIO.
- Downloads the latest version of MIRC-Zn.
- Writes an upstart script (so that CTP/MIRC will be run as a service automatically).
- Installs RSNA MIRC.
Choosing between Ubuntu Desktop and Ubuntu Server
- Ubuntu Desktop
- Easier (very easy) if you're new to Linux.
- May be very slightly slower but on modern hardware you are unlikely to notice the difference.
- Ubuntu Server
- Makes more sense - MIRC is a web service after all.
- Will be leaner and faster.
- Can run on a headless server or virtual machine.
- TurnkeyLinux is a very good Ubuntu install for this purpose.
Any questions or comments please email me at timothy.john.phillips@gmail.com - Tim Phillips.