ownCloud is a free and open-source web application for data synchronisation, file sharing and remote storage of documents (cloud storage).

ownCloud is written in PHP and javascript languages

This is a great alternative to the other storage based cloud solutions as it is a “fully manage yourself” solution. As long as you trust the host you reside the data on.


  • Manage yourself solution
  • Cheaper than other storage based cloud providers


I don’t add it to any of the steps below but you can in fact encrypt your data on the /var volume using the in built encryption methods within Linux. This can prove to be invaluable especially if you don’t know the history of the VPS you are using (if you are using a VPS). Add SSL encryption and you have quite a secure method of not only storing data on the cloud but also encrypting the transmission of the data to your devices.


Lets look at what you need in order to get your ownCloud server up and running. There are a number of things you need, namely the hardware required. Here is a full list:

  • A spare machine to install ownCloud on
  • Enough hard drive space to fit the operating system and cloud data
  • A good quality internet connection with good upload and download speeds to help sync speeds
  • (Optional but helps) A static IP address otherwise you will need to use a dynamic IP service such as DynDNS
  • Access to your router/firewall to NAT ports to the server

This Example

In this example I will be installing ownCloud on the following:

  • VMware ESX 5.1
  • Linux Debian Wheezy (7)

You can step past the steps should you have a operating system (such as a VPS) already available.


  • File storage
  • WebDAV support
  • Cryptography
  • Synchronisation of clients
    • Windows XP
    • Windows Visa
    • Windows 7
    • Windows 8
    • Mac OS X
    • Linux
  • Calendar
  • Task scheduler
  • Address book
  • Music streaming
  • Photo gallery
  • PDF viewer

Creation of Virtual Machine

Start by creating the virtual machine, enter the name belowESX - Create New Virtual Machine - Name

I am giving the guest server SSD disk to run the operation system only.

ESX - Create Virtual Machine - DiskSelect Virtual Machine Version 8 unless you need backwards compatibility to older VMware ESX host versions

ESX - Create Virtual Machine - VM VersionSelect “Linux” and select the Linux flavour, in my case I am using Debian 7 x64 but Debian 6 x64 will do.

ESX - Create Virtual Machine - Guest OSSelect processor usage, I am not expecting high load so one vCPU is sufficent

ESX - Create Virtual Machine - CPUAllocate RAM allocation, from what I have read 512MB is the minimum. I will be using 1GB.

ESX - Create Virtual Machine - RAMSelect the virtual network you wish to allocate to the virtual machine

ESX - Create Virtual Machine - NICSelect the SCSI adapter you wish to use

ESX - Create Virtual Machine - SCSICreate a new virtual disk

ESX - Create Virtual Machine - Create DiskAllocate the guest OS disk size and provisioning type, I left it at 16GB for the guest OS as it will be headless and selected thin provisioning to save allocated space and allow grow on demand

ESX - Create Virtual Machine - Disk AllocationSelect SCSI allocation, I recommend leaving as default unless you need to change for a reason

ESX - Create Virtual Machine - SCSI AllocationReview summary, if everything is okay select “Edit the virtual machine settings before completing”

ESX - Create Virtual Machine - SummarySelect floppy drive and select remove (not needed)

ESX - Create Virtual Machine - @Edit VM - Remove FloppySelect the CD/DVD Drive and browse to the distribution ISO you wish to install and click on “Connect at power on”

ESX - Create Virtual Machine - @Edit VM -Add ISO(Optional) Add a second disk, in my case I added 100GB and placed on storage disk and assigned it as Thin provisioning to save space

ESX - Create Virtual Machine - @Edit VM - Add Data Disk(Optional) Select the Options tab, click on “Memory/CPU Hotplug” and enable both Memory and CPU hotplug should you need to increase resources without powering off the server

ESX - Create Virtual Machine - @Edit VM - HotPlug Opts

Installing Operating System

Power on the virtual machine and click “Install”OwnCloud Power On

Select languageOwnCloud OS Language

Select Country

OwnCloud Country

Configure keyboard keymapOwnCloud Keymap

If DHCP is not available on the network you will be presented with the following error, select “Continue”OwnCloud DHCP

Select “Configure network manually”OwnCloud Config Network

Assign unallocated IP address, the following is just an exampleOwnCloud IP Address

Assign subnet, the following is just an exampleOwnCloud Subnet

Assign reachable gateway, the following is just an exampleOwnCloud Gateway

Assign DNS address, the following is just an exampleOwnCloud DNS

Name the server with a hostname, I recommend keeping it simple and use the name of the function of the server, such as OwnCloud

OwnCloud Hostname

Specify domain name (not really required), the following is just an example

OwnCloud Domain Name

Input a root password, use something complicated with upper case and lower case, symbols and numbers and make it at least twelve characters longOwnCloud First Root Password

Re-enter root passwordOwnCloud Second Root Password

Enter your full name, the following is just an exampleOwnCloud Full Name

Enter your desired username, the following is just an exampleOwnCloud Username

Enter the usernames passwordOwnCloud First User Pass

Re-enter the usernames passwordOwnCloud Second User Pass

Select state or provinceOwnCloud Regional

Change the selection to a manual partitioning methodOwncloud - Manual Partitioning Method

Select the Operating System disk to partition, in my example it is sdaOwncloud - Partitioning Disks

Select yes to create a new empty partitionOwncloud - Create Empty Partition

Select the partition to configureOwncloud - Config Free SpaceSelect “Create a new partition”Owncloud - Create new partition

The first partition to make is Swap, which will be set at three times the size of RAM which in my example is 3GBOwncloud - Swap Space Size

Change type to “Logical”Owncloud - Swap Space Type

Select “Use As” Owncloud - Swap Space Type Change

Select “swap area’Owncloud - Swap Space Type Change to SWAPSelect “Done setting up the partition”Owncloud - Swap Space Finalise

Select “pri/log FREE SPACE”Owncloud - Config Free Space for slash

Select “Create a new partition”Owncloud - Create new partition

Change to “max”Owncloud - Config Free Space for slash - size

Select “Primary”Owncloud - Slash Type

Select “Bootable flag”Owncloud - Slash Select Bootable

Select “Done setting up the partition”Owncloud - Slash Done

Select “sdb”Owncloud - Select sdb

Select “Yes”Owncloud - sdb Create new empty partition

Select “pri/log FREE SPACE” on sdbOwncloud - sdb Select Free Space

Select “Create a new partition”Owncloud - Create new partition

Change size to “max”Owncloud - sdb Change size

Change to “Logical”Owncloud - sdb Change Partition Type

Select “Mount point”Owncloud - sdb Select Mount Point

Select “/var”Owncloud - sdb Select VAR

Select “Done setting up the partition”Owncloud - sdb Done

Verify partition structure is the same as this example
Select “Finish partitioning and write changes to disk”Owncloud - Finish Partitioning

Select “Yes” to write changes to diskOwncloud - Write Disk Changes

Select “No” to not scan CD or DVDOwncloud - Dont scan CD

Select “Yes” to use a network mirrorOwncloud - Mirror

Select country of mirrorOwncloud - Country Mirror

Select archive mirrorOwncloud - Archive Mirror

Select “Continue” unless you require a proxy to connect to the internetOwncloud - Proxy

Select “No” to participate in the package survey

Owncloud - Survey

Unselect all packagesOwncloud - Install Packages

Select “Yes” to install GRUBOwncloud - Install GRUB

Click “Continue” to finish installationOwncloud - Finish Installation

Installing OwnCloud

There are packages that OwnCloud depends on in order to run, we will install and configure these manually.


su - root
apt-get update
apt-get upgrade

Install Sudo

su - root
apt-get install sudo

Install OpenSSH

su - root
apt-get install openssh-server

Install Apache

su - root
apt-get install apache2

Install MySQL

su - root
apt-get install mysql-server mysql-client

Install PHP

su - root
apt-get install php5 libapache2-mod-php5
/etc/init.d/apache2 restart
vi /var/www/info.php
phpinfo () ;

Browse to http://yourserverip/info.php
PHP Test

Install ownCloud

Create mySQL Database

apt-get install phpmyadmin

Select “apache” and click OKInstall phpmyadmin webserver

Browse to http://serverip/phpmyadminPhpmyadmin Login Page

Click on “Databases”Phpmyadmin Create DB

Type a name for the new database and click “Create”Phpmyadmin Name DB

Click on “Check Privileges” next to the database you createdPhpmyadmin Check Priv

Click “Add User”Phpmyadmin Add User

Type in the username
Check Host to “Localhost”
Type and retype the password
Click on “Grant all privileges on database <database name>
Click on “Check All”
Click on “Go” at the bottom right on the screen

Phpmyadmin Add User Details

Install ownCloud

echo 'deb http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud.list
apt-get update
apt-get install owncloud

Browse to http://yourserverip/owncloud

Owncloud Admin Account
  • Drop down the Advanced
  • Change to mySQL database
  • Enter database username
  • Enter database password
  • Enter database name
Owncloud Finish Installation

Should you have any questions, comments or suggestions, please don’t hesitate to comment below. If you like what you have read, please share it on your favourite social media medium.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.