********** I HAVE UPDATED THIS GUIDE***********

Please view the new version of this guide here.

Have you ever dreamed of accessing your media from anywhere in the world? This tutorial will show you how to host your own cloud at home which will allow you to access your media from anywhere as long as you have an internet connection.

I decided to make this tutorial after struggling for months trying to figure out how to host my own cloud. My goal is to compile all the information I learned from various sources into one, easy to use guide. I will try my best to explain all steps as specifically as I can.

Let's get started with the Prerequisites.

Step 1: Prerequisites

These are the things you will need in order to be able to host your own cloud

1. Media to stream

2. A computer that currently has your media on it. (I will refer to this as the Home computer from now on).

3. A computer to host your media on. This computer does not have to be an excellent computer, but it may need to have quite a bit of storage space depending upon how much media you have. If you only want to stream music, then I would imagine a 120gb Hard drive would be large enough. If you want to host music, movies, documents, pictures, etc. then a larger hard drive will be necessary. I would also reccommend this computer have a CD drive, its not required, but for this tutorial, I am going install the Operating System via a CD Drive. If the computer does not have a CD drive, it can still be used, but I will not specifically cover how. I use a computer from 2004; I replaced the Hard Drive that came with the computer with a substantially larger one (1.5TB), and it works beautifully.
Here is a guide on how to replace a Hard Drive

4. Ubuntu 12.04 LTS Ubuntu is the operating system we are going to use on the computer that will host the media files. Download this file to the Home computer. Just hit the big orange GET UBUNTU! button, and let the file download.

5. A blank CD

6. ImgBurn Download and install ImgBurn to the Home Computer. This program will be used to write Ubuntu to to blank CD.


1. Be sure to place your Server (From now on, that is what I am going to refer to the computer you are using above as) next to your router because that is where you will plug it into.
2. Make sure you router has spots for a hard-line Ethernet connection. I believe most routers nowadays do have them, so it shouldn't be too much of a concern. The reason for having a hard-line Ethernet connection to your router is so that when you stream to a computer outside of the network, the streaming doesn't become choppy.
3. You will need a monitor while you are setting up your server, but after it is up and running, a monitor will no longer be needed.

Alright, Let's Install Ubuntu!
<p>Hi got to part 10 and when i went to localserver/apache its says unable to connect where as before with localserver/videos which is where i saved my movies it said not found PLEASE HELP!!!!!!</p>
<p>Hi, I followed the tutorial to part 6 but the thins is that when I do alt + F2 and type gksudo nautilus nothing appends it does not run the command, can you please help me. thank you</p>
<p>I got to the end of step 8, then my wifi broke down and after a reboot I got a black screen of death...</p>
<p>Cloud storage is safe is debatable. Before you become the next victim of cloud data breach, you should try encrypted cloud storage. I personally use Data Protecto for encrypted cloud storage. Try it.</p>
&quot;Error: Unable to make Database Connection&quot; <br>That's the message that I get after completing the following steps: <br> <br>&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <br>6. On the next page change: <br>MySQL hostname to: localhost:8080 <br>Type the MySQL password you used when you installed MySQL <br>Check the box where it says 'Create Database User for New Database <br>Type a password where it says 'Ampache Database User Password' <br> <br>7. Click 'insert database' <br>&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt; <br>
On this one, are you running the Ampache configuration on the computer the server is on? If not, try that.
<p>Hey buddy, I'm stuck here as well. It won't accept localhost:8080 </p><p>Get Error:</p><p>Error: Unable to make database connection:SQLSTATE[HY000] [2005] Unknown MySQL server host 'localhost:8080' (74)</p><p>Any advise?</p>
<p>I've got the same issue. Still no luck</p>
<p>Are you trying to do this on 12.04 or 14.04?</p>
<p>so i was able to to do exactly as instructed but when i get to step 10 where it says type in localhost/ampache it doesn't work it says unable to connect but when i go back and change the port to 80 on both the ports.conf and 000-default it works and i get all green oks. </p>
Change the port back to 8080, and then try using this command:<br>localhost:8080/ampache
<p>if i do that i get</p><p>The requested URL /ampache was not found on this server.</p><p>So i added both the following to ports.conf</p><p>Listen 80</p><p>Listen 8080</p><p>But now when trying to setup ampache with localhost:8080 i get this error:</p><p>Error: Unable to make database connection: SQLSTATE[HY000] [2005] Unknown MySQL server host 'localhost:8080' (74)</p>
<p>I'm not sure if you can have ports.conf listen on two different ports. You might just want to pick one and go from there.</p>
<p>I followed your tutorial however in the end i didn't get Ampache to work and after working around and some tweaks it is on the wed serving@badassmachine.strangled.net. I am still working on it and don't really have my media on it but thanks to you and linux and all the others from the open source community i have learned a great deal about computers and end up with a web server that I built pretty much from parts and advice. Much Thanks to All. roosterx813@gmail.com</p>
hello everyone can anyone guide me to setup a Ubuntu server os for the same purpose but for larger scale, the only problem I m having is that I m unable to connect internet after installation for apt-get update for lamp and other packages , ,,and please let me know if Ubuntu desktop version can be used for commercial purpose as it might crash with big load ,
I don't know if Ubuntu Desktop would be the best solution for large data projects like you say you have. I would try to use Ubuntu Server edition or possibly even FreeNAS. Both of those are somewhat built for larger applications.
<p>I have a question. It seems like you are doing this in the gnome desktop environment. Is there any way to do this in the terminal shell?</p>
<p>Yes you can use the terminal. When I initially wrote this guide, I was not familiar with terminal commands, so I used the graphical side of Ubuntu. This entire guide can be completed using the terminal.</p>
<p>So you downloaded the standard ubuntu OS with graphical interface, not the streamlined server edition?</p>
Correct. I believe you could successfully follow this guide using command line only.
great tut just what ive been looking for,<br> i am stuck on step 11,<br> how do you make &nbsp; &gt;etc&gt;apache2&gt;httpd.conf &nbsp; &nbsp;file writable? so i can paste &nbsp;<br> <br> <br> &lt;Directory /var/www/videos&gt;<br> AuthType Basic<br> AuthName &quot;Password Required&quot;<br> AuthUserFile /home/ubuntu/.htpasswd<br> Require valid-user<br> &lt;/Directory&gt;<br> <br> thanks gleebe
I am assuming that you cannot save the changes that you make to the file. If that is the case then you need to: <br> <br>alt+f2 <br>gksudo nautilus <br>then navigate to the file and make changes <br>
thank this worked, i tryed to edit httpd.conf from a window already open
I hate to be a pest, but have you had any luck?
Sorry, I meant to get back to you yesterday, but I ran out of time. Anyway, could you be more specific as to where exactly you are stuck on this project?
Here <br>&quot;Then double-click the folder that says home. Then there should be a folder that says ubuntu. Double click, and then you are presented with your home folder. This contains folders like music, videos, pictures, documents, etc.&quot; <br> <br>The only folder that is found here is one that says 'Desktop' <br>I changed all the folders' properties to enable sharing... <br>I am retracing my steps to see where I stumbled and I will reply again in a few minutes! <br>
Ok so I am assuming that you did gksudo nautilus before this. What you need to do is click on the right-hand taskbar and click File System. Then Click home, and then your username and you files will be there!
Wow, that would be A-M-A-Z-I-N-G!<br/>I was very close to throwing in the towel. This is probably the 6th or 7th tutorial that I have tried following without any luck.<br/>I thought I was just in over my head....I mean, I am, but at least there is still hope. I've been at this for a while now.
I must have misunderstood. I thought this instructable was going to have Ubuntu on both the server and host. So, I followed every detail and got to a point where I first read &quot;Windows&quot; and now I am stuck. Will this work using Ubuntu on both of my computers? <br>
Yes, this can work woth ubuntu as the host OS. In fact, you posted yhis as I was writing a revised version of this guide. Because you are using ubuntu, you will be able to do cool stuff like automatic backups to your cloud. Tomorrow I can send you more personal instructions on how to set it up properly.
If I were to set this up on a computer I use as a media pc, could I install XBMC alongside this to run as a frontend? If so would it be very difficult to set up with this running?
So you want to run your server and XBMC on the same computer? If that is what you are asking, then yes you can do that, but if you are going to watch movies on the media PC (which I think you will be), then I wouldn't do what I did in the XBMC step. I would just point XBMC towards the files that are stored on the computer instead of pointing it towards a website. You could still point XBMC towards your website, but that would slow things down... <br> <br>Do this answer your question?
This is great! I've been meaning to set up my computer as a server - but have never gotten around to it - hope this gets me to get by that barior! <br>

About This Instructable




More by jayredge:How to Host Your Own Cloud v2.0 Host Your Own Virtual Private Network (VPN) with OpenVPN How to Access your Media from Anywhere by Hosting your Own Cloud! 
Add instructable to: