Thursday, December 04, 2014

HOWTO Install the ownCloud Server on Mageia5

It appears that "the cloud" is the popular buzzword now. All cloud computing is is a remote file server where you can store, access, share and manipulate your files. While several commercial services are available, it's possible to create your own cloud service using the ownCloud software. As with any powerful server software, it's not out-of-the-box easy, but with some preparation and understanding, it's not that difficult. Most of this HOWTO is Mageia-specific; a lot of the configuration details are enumerated at the ownCloud website documents.

We're installing ownCloud on a minimal Mageia4 virtual machine using VirtualBox just to go through the process. There is no X-server, so it's all done on the command line.

Mageia5 documentation, installation discs and Errata can be found here.

Part One -- Installing the Apache Webserver

We must begin by installing the Apache webserver. It's certainly possible to use alternative webservers, but Apache is most common. Getting a working Apache webserver is pretty straightforward.

1. Install Apache and some other related modules we'll need. Eventually, you'll want to configure ownCloud to use SSL, so install that module now.

$ sudo urpmi apache apache-mod_ssl

Note that we don't install apache-mod_dav since ownCloud supplies its own DAV module.

2. Use drakconf on the command line and choose the selection that allows you to configure the firewall to allow the web server (and the ssh server for system administration via ssh).




3. Set inint to run the webserver on startup.

$ sudo chkconfig httpd on

4. Start the webserver.

$ sudo service httpd start

5. Check to see that the webserver is working by pointing you browser to the server IP.  I used the text-based lynx browser since there is no X-server on this machine.

$ lynx localhost

And it works!

Part Two - Install Useful Dependencies

Use urpmi to install the following apps. The ownCloud documentation explains why they are useful. You might as well do it now.

imagemagick
php-fileinfo
libreoffice-writer
php-exif
php-imagick
php-bz2
php-mcrypt
samba-client
davfs2
ffmpeg


Part Three - Install ownCloud

By default, the Mageia package installs the ownCloud application in /use/share/owncloud. There's nothing wrong with that although some people prefer it to be someplace else and, with some care, you can move it wherever you like.

$ sudo urpmi owncloud

What's important is that the user apache own all the files and directories associated with ownCloud. We insure that by using:

$ sudo chown -R apache:apache /usr/share/owncloud

NOTE: When upgrading using URPMI, the file ownerships are changed but can be easily fixed as shown above.


OwnCloud no longer requires an initial configuration file.  When we run ownCloud the first time (below), it will create one during its initial setup.

The data files are, by default, kept in /var/lib/owncloud, but you have the option to locate them anywhere  you select during the initial configuration.

Part Four - Initial Setup of ownCloud

Before you access the admin part of ownCloud, you must be logging in from an authorized fully qualified domain name (FQDN). This is allowed by editing config.php to add your FQDN. If you are assigned a dynamic IP address, you must use a dynamic DNS service to get access; it's a security feature.

Once that is out of the way, access the admin pages by pointing your web browser to http://your.server.address/owncloud.

The complete configuration is actually a little more complicated that this and I'll be adding links to documents that provide details, but essentially this is what you need to to do to get ownCloud running on Mageia5. It's just not as simple as "urpmi owncloud".

NOTE: In an older installation of ownCloud, I had some difficulty getting ownCloud 6.x to run reliably, but Mageia5 now offers version 8.X. If you need a version newer than Mageia provides, you can simply download the latest tar.bz2 package from the ownCloud site and replace the contents of /usr/share/owncloud, making sure to change the ownership to apache:apache as noted above, or use the built-in update function accessible from the admin page.

No comments: