Picture of Raspberry Pi Owncloud (dropbox clone)
What I'm going to show you is how to build a your own personal dropbox like service using a raspberry pi and some software called OwnCloud. ownCloud gives you freedom and control over your own data. It's a personal cloud which runs on your own server.

If you don't want to go through the steps for downloading and setup up the software you can download the image I have setup from here. While I have done everything I can to check this is working it should be understood that you use at your own risk. If you do download the image you can skip to step 5. 

Step 1: What you need

Picture of What you need
A Raspberry Pi
An Usb External Harddisk or a USB Drive
An Enclosure for the Raspberry Pi and Hard Disk
Wireless network card (optional)

Step 2: Setting up the network download the software

Picture of setting up the network download the software
So first off we need to give the Pi a fix IP address we do this by editting the network interfaces file

$ sudo nano /etc/network/interfaces

Once open we need to make the file look like this (your IP address might be different)

auto eth0
iface eth0 inet static

The file then needs to be saved by pressing ctrl o and ctrl  x to exit

once exited the networking need to be restarted

$ sudo /etc/init.d/networking restart

After that is done we need to update the Pi and download the software. This will take a little while to complete

$ sudo apt-get update

We are going to install Apache with SSL, PHP5, PHP APC which will load pages faster

$ sudo apt-get install apache2 php5 php5-json php5-gd php5-sqlite curl libcurl3 libcurl4-openssl-dev php5-curl php5-gd php5-cgi php-pear php5-dev build-essential libpcre3-dev php5 libapache2-mod-php5 php-apc gparted

Step 3: Configuor php & Apache

Picture of Configuor php & Apache
Screen Shot 2012-10-27 at 16.18.07.png
Screen Shot 2012-10-27 at 16.18.32.png
Screen Shot 2012-10-27 at 16.18.53.png
Screen Shot 2012-10-27 at 16.19.49.png
Screen Shot 2012-10-27 at 16.20.49.png
Now we have download the software we need to configor it.

First off we need to install PHP apc

$ sudo pecl install apc
After that is done we need to create the apc.ini

$ sudo nano /etc/php5/cgi/conf.d/apc.ini

In to that file we need to add the following


Once added the file needs saving

Next up we have to change the PHP.ini to change the max upload file so we can add large file and add the APC externsion to PHP

$ sudo nano /etc/php5/apache2/php.ini

In this file we need to find upload_max_filesize and then change the value to 1024M which will allow files of upto 1GB to be uploaded

The we need to find post_max_size and then chaged the value to 1200m which will allow files to upto 1 gb to be uploaded

We need to find externsion= section and add in the extension=apc.so

After we have done that save and exit

next up we need to config apache and enable SSL

$ sudo nano /etc/apache2/sites-enabled/000-default

inside the file we need to change Allow over ride to All from none 

Next up we need to setup SSL

$ sudo a2enmod rewrite
$ sudo a2enmod headers

After the follow command you will be asked to provide information

sudo openssl genrsa -des3 -out server.key 1024; sudo openssl rsa -in server.key -out server.key.insecure;sudo openssl req -new -key server.key -out server.csr;sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt;sudo cp server.crt /etc/ssl/certs;sudo cp server.key /etc/ssl/private;sudo a2enmod ssl;sudo a2ensite default-ssl

Once all that is done the apache need restarting

$ sudo service apache2 restart

Step 4: Download and install own cloud

Picture of download and install own cloud
Now we have Apache and PHP setup we need to download own cloud

$ wget http://mirrors.owncloud.org/releases/owncloud-4.5.1.tar.bz2

once download it needs unziping

$ sudo tar -xjf owncloud-4.5.1.tar.bz2

And then copying in to the web root

$ sudo cp -r owncloud /var/www

After it's been copied we need to give the webserver permission to access the owncloud directory

$ sudo chown -R www-data:www-data /var/www/owncloud/

We also need to edit the .htaccess file to change the max upload file these values need to changed to the same values as you set in you php.ini

$ sudo nano /var/www/owncloud/.htaccess

Step 5: Setup own cloud

Picture of setup own cloud
Screen Shot 2012-10-27 at 18.25.06.png
Screen Shot 2012-10-27 at 18.25.25.png
The easy way to setup the external drive is to use gparted on the Pi

$ startx

and the from inside the  GUI open a ternmail and type

$ sudo gprarted

from here you can partion and format the drive

Once done give the web-server permission 

$ sudo chown -R www-data:www-data /media/owncloud

All that needs to be done now is to setup owncloud

in a web browser type in https://IPADDRESS/owncloud

Choose a user name and password by typing then in to the user name and password box

click advanced and changed the data location to the place of your external drive in my case it's /media/owncloud

The click finish and you are done.

You should now be able to upload files. To play video files you'll need to enable the video player app.

To setup external access to your device I would suggest using DyDns or Noip.

Step 6: Placing it in the encloser

Picture of Placing it in the encloser
Now the software is setup the Pi just needs placing in to the box. I would drill some hole in the box to allow a little air flow.

And that's it done.
1-40 of 101Next »
DevB13 months ago

Great article. thanks. Also recommend looking at the owncloud installation via apt-get. Easier than downloading the link and handling ownership permissions for a begineer :-)


QaadirK4 months ago

So will this let me login from anywhere even from outside my network?

DbC16 months ago

hi i can access my owncloud login page fine from my local network,using my noip address. but when i try to go to my logon page in a browser from a remote computer. then i just get a white screen. have got any ideas on this please?

Gemcc DbC14 months ago

Have you port forwarded?

Gemcc Gemcc4 months ago

sorry, didn't see the other comments :)

MGl1 DbC15 months ago

Try to open ports on your router

DbC1 MGl14 months ago
Its ok. My fault. Another program on my pc was blocking the ports. All works great now. :-)
MGl1 DbC14 months ago

No problem :D... I'm glad to hear, that my advice helped you :D

lionwang11 months ago

http://www.bananapi.com http://www.banana-pi.com

Banana PI is an Open Source hardware platform which was produced to run the Elastos.org open source OS among others. Banana PI a dual core, Android 4.2 product which is much better than the Raspberry Pi.
The Banana Pi hardware runs Android, Debian Linux, Ubuntu Linux, OpenSuse linux and images that run on the Raspberry Pi and Cubieboard.
Banana PI has a Gigabit Ethernet port and a SATA Socket. It can run with Android 4.2.2 smoothly. The size of Banana PI M1 is about the same size as a credit card,
It can easily run games as it supports 1080P high definition video output. The GPIO is compatible with Raspberry Pi and can run Raspberry Pi images directly.

harvsch lionwang4 months ago

So, what's your point?

How have your comments added to the effort put in by the author?

Why don't you write an instructable on how to build a personal cloud server based on the bannanapi?

RichGags5 months ago

This is great! Thanks so much. It works perfectly, except, when I install the desktop client, OwnCloud wants to connect to https. If I try my site with https, it fails. With regular http, it works fine. How do I enable https on my RPi?

RichGags5 months ago
MGl15 months ago

in the march 2015 you can get version 8.0.0 working on your raspberry pi

you have to do:

wget https://download.owncloud.org/community/owncloud-8...

and to untar downloaded file

sudo tar -xjf owncloud-8.0.0.tar.bz2

Enjoy :D

fboteroh MGl15 months ago

Hi MGI1, I got a question. I want to do it for the first time. Should the image be installed before doing wget... ? Tks

MGl1 fboteroh5 months ago

What image? Raspbian?

fboteroh MGl15 months ago

Yes. It could be... or the one you've setup (Clouddit.iso)...


MGl1 fboteroh5 months ago

You need to have Raspbian installed!! And then just follow all the instructions until the 4th step. Then you replace first two commands with commands i gave you, and then continue :D...

fboteroh MGl15 months ago

Thank you very much!


New here... I'm looking to do this process, but I struggle with a some steps. First is on step 2. I don't find a ip address. I can do ifconfig and see I have one, and can use the browser as well. But when I use the command nothing shows up. Second, on step 3 I seemed to do well and find everything until I try following the "find extension=section". Where do I put this command/extension? From there I figured I'll wait until I can really get those things working. If you could let me know that would be amazing! Thanks!

On the Banana Pi you can also create an Cloud System with more power: http://www.bananapi-kaufen.de/

BrianM106 months ago

externsion = section doesn't exist in the file. extension = section doesn't exist in the file.

DaveH4 BrianM106 months ago

i think he means extention

MariusB16 months ago

Great instructable. Thank you

ed.torres.3597 months ago

I'm getting the error "chown: cannot access `/media/owncloud': no such file or directory" even though I've followed your steps to the T. Help is appreciated

the reference directory for the owncloud server is no longer there. (return error 404). with this info, if I had to guess, the owncloud directory is never created. Checkout the link below for updated installs.


when do you get this response?

I'm getting the same error, after attempting to partition the drive - it's likely that I'm doing that step wrong, but since there's no direction in the step, I don't know how to change that.

DbC17 months ago

thanks loads!! it works great! your tut has helped me so much.


gcheintz7 months ago

Thanks for the guide! I was thinking about buying a pi and doing this. Just one question, will it work equally well with say a banana pi or cubieboard? They seem to have a lot faster network speed and general specs.

Also, I didnt understand if this is like an independent OS or if you like install it on raspbian or whatever is the OS on the pi? I kinda would like to use owncloud on the pi together with OTHER usages too if possible.

tony.magliulo8 months ago

For folks looking for a dead simple (and free) way to roll your own Dropbox, check out odrive. The SFTP integration gives you the Dropbox experience on anything that runs SSH which, of course, can include the Raspberry Pi.


Full disclosure: I work for odrive. The reason I work here is because I am passionate about this stuff. I fought hard for the SFTP integration because I think it will open up a whole new world of possibilities for your existing storage and devices, so I am trying to get the word out. Overlaying sync on top of SSH gives you that "Dropbox experience" against your own storage, pretty much instantly.

You are spamming for a product that doesn't even exist for linux? Fresh.

I realize that it will not be for everyone, and certainly isn't a 1-to-1 replacement for Owncloud, which is a great product. We are looking into client integration to Owncloud, as a matter of fact.

I am simply trying to offer up an easy way to achieve dropbox-like access to your own storage, because I know how difficult it can be for some, as evidenced in these comments.

A linux client actually does exist, it is just in private beta right now. Windows and Mac clients, however, are already available to the public for free.

Mhm. Quick feedback: you currently do not have the product you are trying to sell. This is a site for how-to's and instructables. You are not supplying it. This is spam, and not what I'm looking for.

Tony, when will the linux client be made available?

Hi Dominic,

We are shooting to have something out in March, if not sooner. Since the client will allow linking to not only SFTP but many other sources like OneDrive, Google Drive, Dropbox, etc.., there is a lot to work through, as you can imagine. You can keep up-to-date on our blog and forums, though.

Excellent. I use odrive to access multiple Google Drive accounts on my Windows PC and there are a few files that I would like to back up to Google Drive from my Raspberry Pi. If you need any beta testers for the Google Drive integration on Linux let me know! Thanks.

DriesB8 months ago


I have a little problem, my raspbery won't recognize my Hard Disc?
What can I do about that?

sverkerw DriesB7 months ago

do you still have this problem? I'm no wiz, but maybe I can help.

The current location seems to be:
wget http://download.owncloud.org/community/owncloud-latest.tar.bz2

This did work

1-40 of 101Next »