AMP AMP

How to Install ownCloud in Ubuntu 16.04

To install ownCloud in Ubuntu 16.04

OwnCloud is an open-source web application used for file synchronization, sharing and storing. The control and security of the data is returned to the user without the need for a third party cloud hosting service. This article sheds some light on the installation procedure of ownClowd in Ubuntu 16.04.

Features

  • Easy Data Synchronization
  • File storage in conventional structure
  • Supports Music streaming
  • Administers users and groups
  • Supports content sharing via groups & public URLs
  • Online text editor with syntax highlighting and code folding.


To install ownCloud

Release key is needed to install ownCloud in Ubuntu, it can be retrieved by using curl command.

root@linuxhelp1:~# curl https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key | sudo apt-key add -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 4502 100 4502 0 0 2607 0 0:00:01 0:00:01 --:--:-- 2608
OK

Add the Repository as soon as the key is added.

root@linuxhelp1:~# echo ' deb http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /'  | sudo tee /etc/apt/sources.list.d/owncloud.list deb http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /

Now update the newly added repository by invoking the following command.

root@linuxhelp1:~# apt-get update
Ign:1 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04 InRelease
Get:2 http://security.ubuntu.com/ubuntu xenial-security InRelease [94.5 kB]
Hit:3 http://in.archive.ubuntu.com/ubuntu xenial InRelease
Get:4 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04 Release [984 B]
Get:5 http://in.archive.ubuntu.com/ubuntu xenial-updates InRelease [95.7 kB]
Get:6 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04 Release.gpg [481 B]
Get:7 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04 Packages [1,624 B]
Hit:8 http://in.archive.ubuntu.com/ubuntu xenial-backports InRelease
Fetched 193 kB in 1s (114 kB/s)
Reading package lists... Done
W: http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.gpg: Signature by key DDA2C105C4B73A6649AD2BBD47AE7F72479BC94B uses weak digest algorithm (SHA1)

Once the repository is updated, install ownCloud with the help of the following command.

root@linuxhelp1:~# apt-get install owncloud -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php7.0 libapr1 libaprutil1 libaprutil1-dbd-sqlite3
libaprutil1-ldap libc-client2007e liblua5.1-0 libmcrypt4 libpq5 libzip4 mlock owncloud-deps-php7.0 owncloud-files php-common
php7.0-cli php7.0-common php7.0-curl php7.0-gd php7.0-imap php7.0-intl php7.0-json php7.0-mbstring php7.0-mcrypt php7.0-mysql
php7.0-opcache php7.0-pgsql php7.0-readline php7.0-sqlite3 php7.0-xml php7.0-zip
Suggested packages:
apache2-doc apache2-suexec-pristine | apache2-suexec-custom php-pear uw-mailutils libmcrypt-dev mcrypt php7.0-ldap
Recommended packages:
mysql-server | mariadb-server | postgresql exim4 | mail-transport-agent
The following NEW packages will be installed:
apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php7.0 libapr1 libaprutil1 libaprutil1-dbd-sqlite3
libaprutil1-ldap libc-client2007e liblua5.1-0 libmcrypt4 libpq5 libzip4 mlock owncloud owncloud-deps-php7.0 owncloud-files
php-common php7.0-cli php7.0-common php7.0-curl php7.0-gd php7.0-imap php7.0-intl php7.0-json php7.0-mbstring php7.0-mcrypt
php7.0-mysql php7.0-opcache php7.0-pgsql php7.0-readline php7.0-sqlite3 php7.0-xml php7.0-zip
0 upgraded, 35 newly installed, 0 to remove and 404 not upgraded.
Need to get 31.8 MB of archives.
After this operation, 127 MB of additional disk space will be used.
Get:1 http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04 owncloud-files 9.1.1-1.2 [25.0 MB]
Get:2 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libapr1 amd64 1.5.2-3 [86.0 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libaprutil1 amd64 1.5.4-1build1 [77.1 kB]
Get:4 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libaprutil1-dbd-sqlite3 amd64 1.5.4-1build1 [10.6 kB]
Get:5 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libaprutil1-ldap amd64 1.5.4-1build1 [8,720 B]
Get:6 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 liblua5.1-0 amd64 5.1.5-8ubuntu1 [102 kB]
Get:7 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2-bin amd64 2.4.18-2ubuntu3.1 [923 kB]
Get:8 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2-utils amd64 2.4.18-2ubuntu3.1 [81.3 kB]
Get:9 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2-data all 2.4.18-2ubuntu3.1 [162 kB]
Get:10 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 apache2 amd64 2.4.18-2ubuntu3.1 [86.7 kB]
Get:11 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 php-common all 1:35ubuntu6 [10.8 kB]
.
.
.
Creating config file /etc/php/7.0/mods-available/xmlreader.ini with new version

Creating config file /etc/php/7.0/mods-available/xmlwriter.ini with new version

Creating config file /etc/php/7.0/mods-available/xsl.ini with new version
Setting up php7.0-zip (7.0.8-0ubuntu0.16.04.3) ...

Creating config file /etc/php/7.0/mods-available/zip.ini with new version
Setting up owncloud-deps-php7.0 (9.1.1-1.2) ...
Enabling conf owncloud.
To activate the new configuration, you need to run:
service apache2 reload
apache2_invoke: Enable module rewrite
apache2_invoke owncloud: already enabled
Setting up owncloud (9.1.1-1.2) ...
Processing triggers for libc-bin (2.23-0ubuntu3) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for systemd (229-4ubuntu4) ...
Processing triggers for ufw (0.35-0ubuntu2) ...
Processing triggers for libapache2-mod-php7.0 (7.0.8-0ubuntu0.16.04.3) ...

Now restart Apache to give effect to previous configuration

root@linuxhelp1:~# systemctl restart apache2


To install MySQL

Once Apache server is restarted, install the MySQL database by triggering the following command.

root@linuxhelp1:~# apt-get install mysql-server -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libaio1 libevent-core-2.0-5 libhtml-template-perl mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server-5.7
mysql-server-core-5.7
Suggested packages:
libipc-sharedcache-perl mailx tinyca
The following NEW packages will be installed:
libaio1 libevent-core-2.0-5 libhtml-template-perl mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server
mysql-server-5.7 mysql-server-core-5.7
0 upgraded, 9 newly installed, 0 to remove and 404 not upgraded.
Need to get 18.1 MB of archives.
After this operation, 161 MB of additional disk space will be used.
Get:1 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libevent-core-2.0-5 amd64 2.0.21-stable-2 [69.4 kB]
Get:2 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-common all 5.7.15-0ubuntu0.16.04.1 [16.8 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu xenial/main amd64 libaio1 amd64 0.3.110-2 [6,356 B]
Get:4 http://in.archive.ubuntu.com/ubuntu xenial-updates/main amd64 mysql-client-core-5.7 amd64 5.7.15-0ubuntu0.16.04.1 [6,132 kB]
.
.
.
Processing triggers for systemd (229-4ubuntu4) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up libevent-core-2.0-5:amd64 (2.0.21-stable-2) ...
Setting up libaio1:amd64 (0.3.110-2) ...
Setting up mysql-client-core-5.7 (5.7.15-0ubuntu0.16.04.1) ...
Setting up mysql-client-5.7 (5.7.15-0ubuntu0.16.04.1) ...
Setting up mysql-server-core-5.7 (5.7.15-0ubuntu0.16.04.1) ...
Setting up mysql-server-5.7 (5.7.15-0ubuntu0.16.04.1) ...
update-alternatives: using /etc/mysql/mysql.cnf to provide /etc/mysql/my.cnf (my.cnf) in auto mode
Renaming removed key_buffer and myisam-recover options (if present)
Setting up libhtml-template-perl (2.95-2) ...
Setting up mysql-server (5.7.15-0ubuntu0.16.04.1) ...
Processing triggers for libc-bin (2.23-0ubuntu3) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for systemd (229-4ubuntu4) ...

After the installation, enter a password for the MySQL user.

Once it is complete, configure the MySQL database for ownCloud by logging in with your MySQL admin account.

root@linuxhelp1:~# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with   or g.
Your MySQL connection id is 4
Server version: 5.7.15-0ubuntu0.16.04.1 (Ubuntu)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ' help '  or ' h'  for help. Type ' c'  to clear the current input statement.

Once the MySQL configuration is complete, create a user and database for the ownCloud

mysql>  create database owncloud 
Query OK, 1 row affected (0.00 sec)

mysql>  grant all on owncloud.* to ' user1' @' localhost'  identified by ' linuxc'  
Query OK, 0 rows affected, 1 warning (0.02 sec)

mysql>  flush privileges 
Query OK, 0 rows affected (0.00 sec)

mysql>  exit
Bye


To access ownCloud

Once configuring MySQL, open your browser and enter your server' s IP address to access ownCloud.

http://server-ip/owncloud

Now create the user name and password for ownCloud

Choose the Database, and enter the login credentials. Once done click ' Finish setup'

Once done, the screen should display a box like below.

Close the box and you' ll see the home screen of ownCloud.

FAQ
Q
Why do you use HTTP and not another protocol?
A
Because HTTP goes through every firewall and proxy.
Q
Where is the ownCloud community hosted?
A
The ownCloud code can be found at github.com/ownCloud and our website is on owncloud.org
Q
How can I get involved in the ownCloud Community?
A
The best way to get started is to visit owncloud.org/contribute.
Q
Where do I find information on how to use/install ownCloud?
A
You can find guides how to install ownCloud in different ways in our ownCloud Documentation.
Q
Why does ownCloud use csync rather than rsync?
A
rsync is a one-way syncing protocol. This means that if you have two servers and delete a file on one side, it will pop up again if you use rsync. To ensure old files get removed but new file