Data privacy: how safe is your data in the cloud?

There's more

We have looked at three main programs here, covering file storage, email and social networking, although they all provide extra features, such as photo albums, calendaring, contacts and bookmarks management. There are alternatives to each of these, as we have mentioned, but there are plenty of other cloud type programs around.

For example, Gallery is a dedicated photo album that provides far more features than the addons for the programs we have looked at here. It is a typical web application using PHP, so the installation and configuration procedure is much the same as the other programs, and it has a comprehensive web administration interface for creating public and private albums, as well as many available plugins to enhance Gallery even further.

There is also an open source instant messaging service that uses Jabber (which is used by Google Talk among others).

Asterisk, which we have covered before, can be used to set up your own VoIP gateway, which is especially useful for an organisation with more than one office.

There is only one important area where the open source alternatives do not currently match up to the commercial offerings and that's office productivity software. While the WebDAV accessibility of ownCloud does allow editing anywhere, and by anyone with the correct login, it still depends on client-side office software.

There is a project in development called OX documents that currently has a demo at Interestingly, it supports ODF as well as Word format files and is the first step towards an open source online office suite.

The first release is due around now and when it adds a spreadsheet, we will be able to do just about anything in our own clouds that we can in the proprietary ones, except lose our privacy.

Adding a MySQL DB

MySQL is a database server, all of the packages we have mentioned here need some sort of database to hold settings and data. While MySQL is one of the most popular, there are alternatives.

SQLite is, as the name suggests, a much lighter option. It stores a complete database in a single file and works well on single user systems that do not have particularly demanding requirements. However, it does not scale particularly well, either in terms of users or load.

Because MySQL uses the classic server/ client model, one server will take care of the database needs of several programs, so if you are using more than one of the packages covered here, MySQL is probably the best choice. The disadvantage is that you need to set up databases and users on the server for each package.

When you install MySQL it asks for a password, this is for the root user and not to be used by individual packages. You can create a new database and a user for it using the command line MySQL client mysql -uroot -p will prompt for a password, then you create the database and user with:

GRANT ALL PRIVILEGES ON dbname.* TO username@localhost IDENTIFIED BY 'password';

The first line creates the database, the second creates a user with a password, allowing them full access to that one database. The flush command simply tells MySQL to implement the changes immediately.

When you've finished \q will exit the client. You can tell your program to use that database and user and it can create the database structure itself.

An alternative to mucking around with all this command line malarkey is to use phpMyAdmin, a web-based administration tool for MySQL. There's a certain irony that you actually need to use the command line to create the user for phpMyAdmin, but what you need to do is all detailed in the web interface.


While we have concentrated on ownCloud here, there are alternatives; one such is OpenStack. However, OpenStack is aimed more towards large scale use. OwnCloud can be used in enterprise deployments and there are commercial variants available, but it is also well suited to personal and small organisation use.

On the other hand OpenStack is aimed more at those wishing to offer cloud services commercially. That certainly doesn't rule out OpenStack and if your requirements are for something more than a personal cloud service, you should take a look at to see if it better suits your needs.