Difference between revisions of "(depreciated) empty page - TJP"
Jump to navigation
Jump to search
Tim phillips (talk | contribs) (Redirected page to Running CTP as a Linux Service) |
Tim phillips (talk | contribs) |
||
Line 1: | Line 1: | ||
− | # | + | == How to install MIRC-Zn on Ubuntu Linux == |
+ | * Download the script | ||
+ | wget http://timphillips.net/mirc/install-MIRC-Zn.txt | ||
+ | * Make it executable | ||
+ | mv ./install-MIRC-Zn.txt ./install-MIRC-Zn | ||
+ | chmod 777 ./install-MIRC-Zn | ||
+ | * Run the script | ||
+ | ./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. | ||
+ | |||
+ | ===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 | ||
+ | |||
+ | # 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 'Updating Ubuntu repositories ...' | ||
+ | |||
+ | #work in the temp folder | ||
+ | cd /var/tmp | ||
+ | |||
+ | #check which chipset we're using | ||
+ | case $(arch) in | ||
+ | i686) | ||
+ | CHIP=i586 | ||
+ | ;; | ||
+ | x86_64) | ||
+ | CHIP=amd64 | ||
+ | ;; | ||
+ | *) | ||
+ | ;; | ||
+ | esac | ||
+ | |||
+ | # 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 | ||
+ | |||
+ | #check which chipset we're using | ||
+ | case $(arch) in | ||
+ | i686) | ||
+ | CHIP=i586 | ||
+ | CHIP2=i386 | ||
+ | ;; | ||
+ | x86_64) | ||
+ | CHIP=amd64 | ||
+ | CHIP2=amd64 | ||
+ | ;; | ||
+ | *) | ||
+ | ;; | ||
+ | esac | ||
+ | |||
+ | #reassure the user something is happening | ||
+ | echo 'Downloading JAI Image IO ...' | ||
+ | |||
+ | #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 | ||
+ | |||
+ | #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== | ||
+ | |||
+ | * 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. | ||
+ | ** [http://turnkeylinux.org TurnkeyLinux] is a very good Ubuntu install for this purpose. | ||
+ | |||
+ | <div align="right">''Any questions or comments please email me at timothy.john.phillips@gmail.com - Tim Phillips.''</div> |
Revision as of 02:53, 10 September 2011
1 How to install MIRC-Zn on Ubuntu Linux
- Download the script
wget http://timphillips.net/mirc/install-MIRC-Zn.txt
- Make it executable
mv ./install-MIRC-Zn.txt ./install-MIRC-Zn chmod 777 ./install-MIRC-Zn
- Run the script
./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.
2 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.
2.1 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 # 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 'Updating Ubuntu repositories ...' #work in the temp folder cd /var/tmp #check which chipset we're using case $(arch) in i686) CHIP=i586 ;; x86_64) CHIP=amd64 ;; *) ;; esac # 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 #check which chipset we're using case $(arch) in i686) CHIP=i586 CHIP2=i386 ;; x86_64) CHIP=amd64 CHIP2=amd64 ;; *) ;; esac #reassure the user something is happening echo 'Downloading JAI Image IO ...' #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 #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
3 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.