AppSuite:OX Drive

Revision as of 09:37, 15 November 2013 by Khgras (talk | contribs) (Configuration and Deployment)

IN PRODUCTION: OX Drive for Clients

Description

OX Drive provides file and folder synchronization across devices. It does this in the simple way possible for the end user and is fully optimized for each device type.

Open-Xchange wants to enable end customers to synchronize data. In OX App Suite, Open-Xchange provides a cloud storage called OX Drive. OX Drive accesses storage made available by the provider but can also integrate external storage (e.g. DropBox, Amazone Cloud Drive or Google Drive, …). End customers should be able to synchronize Windows, Mac OS, Android, and iOS devices.

Availability

OX Drive is a combination of two components:

  • OX Drive in OX App Suite
  • OX Drive Clients (optional native client components for synchronization)

OX Drive is available for the following native clients:

  • OX Drive for Windows
  • OX Drive for Mac OS
  • OX Drive for iOS
  • OX Drive for Android

Requirements

Requirement System / Plaform
   
OX App Suite OX App Suite v7.4.2
OX Drive for Windows Latest Versions of Windows 7, Windows 8 (no support of Mac OS X clients with emulators and Windows RT)
OX Drive for Mac OS Mac OS X 10.8 (Mountain Lion), Mac OS X 10.9 (Mavericks)
OX Drive for iOS Apple iPhone on iOS 6 / iOS 7, Apple iPad on iOS 6 / iOS 7
OX Drive for Android Smartphone on Android Jelly Bean (4.1 - 4.2), Tablets on Android Jelly Bean (4.1 - 4.2)

The key features of OX Drive for Clients

  • Native Apps for Windows, Mac OS, iOS and Android
  • Easy and attractive upsell properties (e.g. Upsell based on Quota limitations)
  • Clients are specially designed for the devices they run on taking into account limitations such as battery life, screen limitations, bandwidth etc.
  • Integrates with other storage solutions (e.g. DropBox, SharePoint, etc.)
  • Controlled synchronization of files across devices
  • Storage management (e.g. quota control, upload limits)
  • Connection type recognition and adaptation (e.g. Wi-Fi, cell network)

Install on OX App Suite

Debian GNU/Linux 8.0

Add the following entry to /etc/apt/sources.list.d/open-xchange.list if not already present:

deb https://software.open-xchange.com/products/appsuite/stable/backend/DebianJessie/ /
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# deb https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/DebianJessie/ /

and run

$ apt-get update
$ apt-get install open-xchange-drive

Debian GNU/Linux 9.0

Add the following entry to /etc/apt/sources.list.d/open-xchange.list if not already present:

deb https://software.open-xchange.com/products/appsuite/stable/backend/DebianStretch/ /
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# deb https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/DebianStretch/ /

and run

$ apt-get update
$ apt-get install open-xchange-drive

SUSE Linux Enterprise Server 12

Add the package repository using zypper if not already present:

$ zypper ar https://software.open-xchange.com/products/appsuite/stable/backend/SLE_12 ox

If you have a valid maintenance subscription, please run the following command and add the ldb account data to the url so that the most recent packages get installed:

$ zypper ar https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/SLES11 ox-updates

and run

$ zypper ref
$ zypper in open-xchange-drive

RedHat Enterprise Linux 6

Start a console and create a software repository file if not already present:

$ vim /etc/yum.repos.d/ox.repo

[ox]
name=Open-Xchange
baseurl=https://software.open-xchange.com/products/appsuite/stable/backend/RHEL6/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# [ox-updates]
# name=Open-Xchange Updates
# baseurl=https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/RHEL6/
# gpgkey=https://software.open-xchange.com/oxbuildkey.pub
# enabled=1
# gpgcheck=1
# metadata_expire=0m

and run

$ yum update
$ yum install open-xchange-drive

RedHat Enterprise Linux 7

Start a console and create a software repository file if not already present:

$ vim /etc/yum.repos.d/ox.repo

[ox]
name=Open-Xchange
baseurl=https://software.open-xchange.com/products/appsuite/stable/backend/RHEL7/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# [ox-updates]
# name=Open-Xchange Updates
# baseurl=https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/RHEL7/
# gpgkey=https://software.open-xchange.com/oxbuildkey.pub
# enabled=1
# gpgcheck=1
# metadata_expire=0m

and run

$ yum update
$ yum install open-xchange-drive

CentOS 6

Start a console and create a software repository file if not already present:

$ vim /etc/yum.repos.d/ox.repo

[ox]
name=Open-Xchange
baseurl=https://software.open-xchange.com/products/appsuite/stable/backend/RHEL6/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# [ox-updates]
# name=Open-Xchange Updates
# baseurl=https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/RHEL6/
# gpgkey=https://software.open-xchange.com/oxbuildkey.pub
# enabled=1
# gpgcheck=1
# metadata_expire=0m

and run

$ yum update
$ yum install open-xchange-drive

CentOS 7

Start a console and create a software repository file if not already present:

$ vim /etc/yum.repos.d/ox.repo

[ox]
name=Open-Xchange
baseurl=https://software.open-xchange.com/products/appsuite/stable/backend/RHEL7/
gpgkey=https://software.open-xchange.com/oxbuildkey.pub
enabled=1
gpgcheck=1
metadata_expire=0m
# if you have a valid maintenance subscription, please uncomment the 
# following and add the ldb account data to the url so that the most recent
# packages get installed
# [ox-updates]
# name=Open-Xchange Updates
# baseurl=https://[CUSTOMERID:PASSWORD]@software.open-xchange.com/products/appsuite/stable/backend/updates/RHEL7/
# gpgkey=https://software.open-xchange.com/oxbuildkey.pub
# enabled=1
# gpgcheck=1
# metadata_expire=0m

and run

$ yum update
$ yum install open-xchange-drive

Installation of the Clients

Installation of Desktop Clients

To download the OX Drive for Clients installation packages for Windows and Apple iOS follow this: OX Drive for Clients (The LDB credentials have to be provided)

After the download of the package, you can start the installation by double-clicking on the package. On the first screen, you will see some information about the OX Drive. Please follow the installation steps in the wizard. Please carefully read the license agreement for Open-Xchange.

Installation on Mobile Clients

The OX Drive App is available via the different App Stores.

Configuration and Deployment

The user defines a folder on the client that should be used for the future synchronization. Within this folder, the application creates a subfolder (e.g. per device) to prevent a heavy amount of data being transferred during the initial synchronization if e.g., a “wrong” directory (like C:\) has been selected. This folder is called Client Sync Folder. We might consider to relax this rule for the power user and allow to manually select the Client Sync Folder.

Optionally, the user can select a private (user must be Admin of the folder) Server Sync Folder as source/target folder. If there is no folder selected a client specific folder can automatically be created and configured. If the Server Sync Folder is not selected, a device specific subfolder is created and configured as Server Sync Folder which of course is also created if not already existing.

Assumption: The Client Sync Folder as well as the Server Sync Folder can not be changed after the configuration.

  • If the Client Sync Folder is not available, the synchronization will not be started.
  • If the Server Sync Folder is not available, the sync process will be aborted.

As a default procedure, new sync folders should be created on the server as well as on the client. This ensures that objects are only synchronized as soon as this is done and the user has full control.

Sync Procedure

  • The client creates a list of the Client Sync Folder and - together with extended attributes (e.g. md5sums, file name, and path) - sends it to the server. Also, the last sync state (if existing) is sent to the server.
  • The server creates a list of the Server Sync Folder together with the extended attributes, compares them and creates an action list
  • The client saves the last sync state (either calculated by the server or created by the client)