Omniscope 3.0 is available for common Linux distributions as both a desktop application and a headless server.  

It requires a recent version of any popular Linux distributions on x64 hardware.  We've tested Ubuntu Desktop & Server 12.04+, CentOS 5/6/7+, and the Amazon EC2 AMI.  


N.B. Omniscope Classic desktop interface will be in beta for the foreseeable future;

These instructions are tailored to Ubuntu.


Installation on a Linux server via terminal

This describes how to install Omniscope on a Linux server without a graphical desktop environment, such as Ubuntu Server via an SSH terminal session.

  1. Read and approve the EULA before proceeding.

      

  2. Log in as the user account you wish to use for Omniscope.

    This account will be the activated account, and the account that runs the Omniscope Server service.  You should arrive in your home directory (~/, or /home/username).  These instructions assume you remain in this directory.
      

  3. Stop and remove any previous installation
    e.g. stop an existing service by executing   :   sudo service omniscope-server stop      or       kill - 15 -f com.visokio
    Once all Omniscope processes have been stopped, remove the installation.  To permanently remove the existing version:
    rm -rf ~/visokio-omniscope
    Alternatively, rename the folder so it is available for restoring later if you run into issues with the new version:
    mv visokio-omniscope visokio-omniscope-old
    Either way, make sure that neither a "VisokioOmniscope-Linux.tgz" file nor a "visokio-omniscope" folder exist in your home directory.
        
  4. Download the Linux "tgz" to your home directory

    Visit the Omniscope 3.0 download page.  Alpha partners will find the link to this page on the forums announcement after logging in.  Choose the version you want, and copy the URL for the TGZ file.  Then enter:

    wget url
    ls
    You should now have "VisokioOmniscope-Linux.tgz" in your current (home) directory as shown by ls.
      

  5. Extract files

    tar zxf VisokioOmniscope-Linux.tgz
    ls
    You should now have "visokio-omniscope" in your current (home) directory as shown by ls.
    rm VisokioOmniscope-Linux.tgz
      

  6. Move to chosen installation location

    You can place the "visokio-omniscope" folder anywhere, but we recommend:

      

    • In your home directory; does not require superuser privileges/sudo, but only available to the user who installed it. It should already be in this location.

      For example: /users/antonio/visokio-omniscope
      Omniscope launch command: ~/visokio-omniscope/omniscope.sh
        

    • System-wide in the /opt directory; requires superuser privileges/sudo.

      For example: /opt/visokio-omniscope
      Omniscope launch command: /opt/visokio-omniscope/omniscope.sh
      To install here:
      sudo mv visokio-omniscope /opt
        

  7. Configure the launcher scripts (memory and cpu architecture)

    Check how much memory you have installed (you want the figure in the total Mem cell):
    free -m
    Check what architecture your server is ("x86_64" for 64-bit; if don't see this, your system is not fully supported):
    uname -m
    In a terminal text editor, open visokio-omniscope/_launch.sh:
    nano visokio-omniscope/_launch.sh

    By default, Omniscope is configured to run in 64-bit mode.  If installing on a 32-bit server, which is not fully supported, change the JAVA_CMD line as instructed in the comments:
    JAVA_CMD=x64/bin/java      if on a 64-bit system (java is bundled with Omniscope)
    JAVA_CMD=/path/to/32-bit/java     if on a 32-bit system (not fully supported)
    Edit the JAVA_VM_PARS line, changing "1100m" to the desired memory cap - depending on what other memory intensive processes are installed, we recommend 50% to 75% of physical memory, the figure shown by the free command, above [1] :
    JAVA_VM_PARS=... -Xmx8000m ...      if on a 64-bit system with 16gb memory
    JAVA_VM_PARS=... -Xmx4000m ...      if on a 64-bit system with 8gb memory
    JAVA_VM_PARS=... -Xmx2000m ...      if on a 64-bit system with 4gb memory
    JAVA_VM_PARS=... -Xmx1000m ...      if on a 32-bit system with 2gb memory; don't go higher than this for 32-bit systems
    Save and exit. 

    • [1] N.B. we suggest you leave at least 256 MB of memory for the Ubuntu OS.

  8. Activate with your Omniscope license key

    For example:
    ~/visokio-omniscope/omniscope.sh -activate XXXX-XXXX-XXXX-XXXX

  9. Install additional required packages

    On Linux Omniscope requires the "MonetDB" packages to be present to run correctly on your machine.


    If you try to start Omniscope withouth it, you will find an error message in the log saying "MonetDb server not found on your Linux OS."


    To install MonetDB packages on Ubuntu and other Linux distro, please follow instructions at https://www.monetdb.org/Downloads


    Omniscope relies on a particular version of the packages and it will show a warning in the app if the packages are not configured correctly.

    For example, at the time of writing the correct version of the package is 11.29.7.

    These are the commands to execute on Ubuntu in sequence to install the MonetDB packages required by Omniscope:


    a) Create a file /etc/apt/sources.list.d/monetdb.list with the following contents (replacing "suite" with your system's code name which you may be able to get by running the command lsb_release -cs, e.g. trusty)

    deb https://dev.monetdb.org/downloads/deb/ suite monetdb

    deb-src https://dev.monetdb.org/downloads/deb/ suite monetdb


    b) Then issue the following command to install the MonetDB GPG public key:

    wget --output-document=- https://www.monetdb.org/downloads/MonetDB-GPG-KEY | sudo apt-key add -


    c) After this, you can use apt to install the MonetDB packages. First run:

    sudo apt update


    d) To install MonetDB/SQL, use the command:
    sudo apt-get install monetdb5-sql=11.29.7 monetdb5-server=11.29.7 monetdb-client=11.29.7

    e) Add any users who are allowed to run a database server to the monetdb group, which was automatically created in the previous step:
    sudo usermod -a -G monetdb $USER


  10. (Optional) Install the background service
    By default, you'll be running as an unprivileged user.  To allow Omniscope to serve on privileged ports such as 80, you need to install and use privbind:
    sudo apt-get install privbind
    Or configure iptables, preferable since it is not incompatible with printing in a headless server.
    An alternative is to use authbind that allows you to use privileged ports and is compatible with printing in headless server.
    Otherwise you must edit ~/omniscope/-server/config.xml after first attempting to run the server, and change the ports to be over 1024, e.g. 8080 / 8443.
    Edit the service configuration in a text editor
    nano ~/visokio-omniscope/omniscope-server.conf
    Check that the 3 properties USER, INSTALL_DIR and LOG_FILE are correct.  
    If you need to use privbind as mentioned above, replace the exec... line with:
    script
      privbind -u $USER $INSTALL_DIR/omniscope-server-headless.sh > $LOG_FILE 2>&1
    end script
    Save and exit.
    Deploy to Upstart jobs folder:
    sudo cp ~/visokio-omniscope/omniscope-server.conf /etc/init
    Start the service:
    sudo service omniscope-server start
    Check the service is running
    sudo service omniscope-server status
    Check the service log
    tail -n1000 /var/log/omniscope-server-service.log
    Check the Omniscope Server log
    tail -n1000 ~/omniscope-server/log.txt
    Alternatively visit typically http://localhost:24679/ in your browser, e.g. (text-based, if installed):
    lynx http://localhost:24679/
      


  11. Configure Omniscope
    Just launch the app and go to the Server Admin App. From your browser follow the "Server Admin App" link on the page footer, or navigate to "http://yourserverip:24679/_admin_"
    On first start Omniscope is configured to serve only on localhost. So if you are running on an headless server and you want to access Omniscope from another machine, then you have to enable Omniscope Web Server, to allow requests from other machines to be served.
    N.B. To configure Omniscope on a headless machine without a browser, you have to edit the "config.xml" file manually (Please be careful when doing so).
           To enable the Web Server you have to set the "runWebServer" property in the config.xml file to "true":   <servernetworking runWebServer="true"

     



Installation on a Linux desktop

This describes how to install Omniscope on a Linux system with a graphical desktop environment, such as Ubuntu Desktop 12.10.

  1. Read and approve the EULA before proceeding.
     
  2. Download the Linux "tgz" package.

    From your Linux desktop, open your browser and visit the Omniscope 2.8 download page.  Alpha partners will find the link to this page on the forums announcement after logging in.  For example, "VisokioOmniscope-Linux.tgz".
     

  3. Extract files

    Double-click to open with Archive Manager

     

  4. Move to chosen installation location

    You can place the "visokio-omniscope" folder anywhere, but we recommend:


    • In your home directory; does not require superuser privileges/sudo, but only available to the user who installed it.

      For example: /users/antonio/visokio-omniscope
      Omniscope launch command: ~/visokio-omniscope/omniscope.sh

    • System-wide in the /opt directory; requires superuser privileges/sudo.

      For example: /opt/visokio-omniscope
      Omniscope launch command: /opt/visokio-omniscope/omniscope.sh 

  5. Configure the launcher scripts and install the additional packages

    Follow the instructions for installing on a Linux server, above.
     

  6. Create a launcher
    If required, create a launcher icon on your desktop.  More info.

     

  7. Launch Omniscope by double-clicking the launcher created above

    Or, use a terminal command listed below.

      

  8. Enter license key on the welcome screen, if you have one.  Otherwise, register for a free trial.



Linux commands

These terminal commands assume you've installed into your home directory.



~/visokio-omniscope/omniscope.sh

Launches the new Omniscope application. 

If launched from an interactive desktop session, the app will be running in background and available in the OS system tray.

Your system default browser will open up pointing to the Omniscope welcome page.

Otherwise (if launched from a headless terminal console, such as via SSH or from Ubuntu Server), the app will run in headless mode.

 

~/visokio-omniscope/omniscope-classic.sh

Launches the Omniscope Classic desktop application.  If not licensed, this will be the free Viewer, allowing you to open and explore IOK files.

Activation and free trial registration are available from the application's welcome screen.  Once licensed, use this to import and explore data, and create and share reports in IOK format.

Can only be used from an interactive desktop session on a desktop operating system such as Ubuntu Desktop. 

The desktop interface in Linux is in beta and may suffer minor visual issues.


~/visokio-omniscope/omniscope-viewer.sh

As above, but launches the Omniscope Classic desktop application in Viewer mode.  Useful if you're currently licensed and want to preview the experience in the free Viewer. 

The desktop interface in Linux is in beta and may suffer minor visual issues.

 

~/visokio-omniscope/omniscope-server.sh

Launches the Omniscope Server application, for serving Omniscope Mobile reports, scheduling data refreshes, and executing XML actions in watch folders.

If launched from an interactive desktop session, the server dashboard window will appear, where you can start/stop and configure the Omniscope Server services.

Otherwise (if launched from a headless terminal console, such as via SSH or from Ubuntu Server), the server will run in headless mode.

Either way, status of services and scheduled tasks can be monitored in ~/scheduler/log.txt and the server configuration, containing scheduled tasks and Mobile server configuration, is located in ~/scheduler/config.xml.

Requires same the user account to be activated with a Server edition license key. 

 

~/visokio-omniscope/omniscope-server-headless.sh

As above, but always launches in headless mode.  Useful if you're in a deskop session but want to launch the server in non-interactive headless mode.


~/visokio-omniscope/omniscope-server-headless.sh -activate key

Use when unlicensed.  Activates the current user account with the key specified. The key must be in the format xxxx-xxxx-xxx-xxxx  

Requires an active internet connection.  Non-interactive; check the terminal console for status/error messages.

 

~/visokio-omniscope/omniscope-server-headless.sh -reactivate

Use when activated.  Renews and refreshes the license for current user account.  If Visokio have extended or upgraded your license, you will need to do this.  

Requires an active internet connection.  Non-interactive; check the terminal console for status/error messages.

 

~/visokio-omniscope/omniscope-server-headless.sh -activationinfo

Displays the licensing state of the current user account.

Non-interactive; check the terminal console for status/error messages.

 

~/visokio-omniscope/omniscope-server-headless.sh -deactivate

Use when activated.  Deactivates the current user account and makes the license key available to activate on another system (up to 3 transfers, depending on license - not available for trial keys).

Requires an active internet connection.  Non-interactive; check the terminal console for status/error messages. 

 

kill -15 PID

Where PID is the process ID of the Omniscope Java process. (You can obtain the PID by executing "ps aux | grep java" and identifying the Omniscope java process)

Use this command to gracefully stop the Omniscope app if you have started it through one of the above scripts.

      

kill -15 -f com.visokio

Use this command to gracefully stop any Omniscope app running on your machine.

 

sudo service omniscope-server start

Starts the Omniscope Server service.  Note: the service starts automatically on system startup.

Requires the Omniscope Server service to be installed - see the Server section above.  Requires Omniscope to be activated on the user account the service is configured to run as.


 

sudo service omniscope-server status

Displays the running/stopped status of the Omniscope Server service.

Requires the Omniscope Server service to be installed - see the Server section above.



 

sudo service omniscope-server stop

Stops the Omniscope Server service.  Note: the service starts automatically on system startup.

Requires the Omniscope Server service to be installed - see the Server section above.