How To Build A Linux Web Server With An Old Computer [Part 1]

Ads by Google

linux web server softwareInterested in learning about Linux or running a home web server? Installing Linux on a spare old computer is a pretty easy thing to do these days with many consumer friendly distributions such as Ubuntu and Mint Linux. After getting up and running you will have a platform for hosting your website in-house either for development or to self-host a website.

This how-to article is broken down into 4 major steps: 1. Acquire an old computer, 2. Install Operating system, 3. Set up the application web server software (Apache, PHP, MySQL), and 4. Reaching the computer from the internet.

Acquire an Old Computer

Linux is a versatile operating system in that it can be run on the slowest of PCs, at least in command line mode. For simplicity’s sake, we are going to be running Ubuntu 10.10 “Maverick Meercat” which was just released and reviewed by Justin.

System Requirements

The Ubuntu 10.10 lists 256MB of RAM as the minimum amount it will work on. The installation itself takes up 3.3GB and then you want to leave space for the additional software and any files you need to work with, so I would peg that minimum at 10GB.

Ubuntu supports a wide variety of video cards, hard drives and other hardware; if you want to check before downloading the install disk, look at the Linux hardware compatibility list for both complete systems and individual components in your system to see if it will work. Before getting too caught up in this though, it is pretty quick and simple to test things out with a Live CD to make sure everything will work on your system.

If you plan on running the server 24/7, make sure it is in a well-ventilated area. It is better to place it in an air-conditioned room during the summer as heat will be your system’s main enemy.

Ads by Google

Install Ubuntu

linux web server software

Installing Ubuntu is a cinch with the latest 10.10 installer. My favorite feature of the installer is that while you are still making choices about the installation, it is working to format and copy files over to your hard drive.

Head on over to the Ubuntu Desktop CD Download site to get the ISO file. These disk images have the latest versions of software so you should only have to do a minimum of upgrading after the install. Use the 64-bit version if your computer supports it or the 32-bit version otherwise. Burn the ISO to a CD or DVD, plug it into the drive of the computer and boot up.

If you need to change the BIOS settings to boot off of a CD then do so, or sometimes you need to press a key to select an alternative boot media. Boot off of the CD drive and select the “Install Ubuntu.” Generally speaking, we will be installing the least amount of software as possible for two reasons: the first is that the more software you install and services you run in the background, the slower your system will be. The second is that it also opens your system up to more potential security holes in the future.

Select “Download updates while installing” and “Install 3rd Party Software” and then “Erase and Use The Entire Disk”. Note that this will erase any other operating systems you have on this computer. Follow through the other options per your desired settings. I do not recommend encrypting your home folder. Reboot after the installation is complete.

linux server

Upon reboot, your install is essentially complete! The first thing you need to do after an install, similar to a Windows machine, is to apply any updates. Go to System->Administration->Update Manager and “Install Updates”. You may need to reboot after installing any updates it has found.

You now have a fully-functional Ubuntu install.

Set Up Application Services

You have a number of options here, but since most websites run on a combination of Apache, MySQL and PHP, we are going to install those. This is similar to what we recommended installing on Windows.

These applications are installed via the Ubuntu Software Center. Launch the software center via System->Administration->Synaptic Package Manager. This is where we install the software we need.

Search for and install the following package names, each of which will include a number of prerequisites: apache2, php5, php5-mysql, and mysql-server. Apply the changes to install the packages.

linux server

The packages will download and install shortly. The installer will prompt you for the MySQL “root” password. No reboot is necessary.

Test Your Web Server!

You can test your web server by opening the Firefox web browser on your server and heading to the URL http://127.0.0.1/.

linux web server software

You should see an “It works!” message meaning that your web server is running! Both Apache and MySQL will be running in the background and will start on bootup. Your web server is now essentially working and you can edit the files in /var/www and see the changes live on your website.

Part two of this series, to be published shortly, will go over how to upload files to your Linux web server; and how to access your web server both over your local network and via the internet. Check back to see how to complete your setup. The setup is pretty straight forward but there are always hiccups along the way.

Questions from new system administrators? Ask away in the comments and I’ll be sure to get back to you!

Join live MakeUseOf Groups on Grouvi App Join live Groups on Grouvi
Best Linux Apps
Best Linux Apps
19 Members
Linux for New Switchers
Linux for New Switchers
24 Members
Linux Distros Talk
Linux Distros Talk
11 Members
Master the Linux Command Line
Master the Linux Command Line
15 Members
Ads by Google
Comments (31)
  • fred

    It’s a nice thought….. but for the life of me I can’t get Ubuntu installed on an asus eeebox. been at it 3 days. Searched forums where others identified the same issue and symptoms, but never a reply on any forum. Used all linux tools from a ubuntu machine to make the iso image bootable, and installed on an identical eeebox. Is there any other linux based installs which do work other than Ubuntu?

    • Martin Dimmock

      Well, this is embarrassing but, I had the same problem, which took me 3 days to work out. I was trying to install a 64 bit version of Ubuntu on a 32 bit machine. A real face-palm moment that one! In my defence I had the .iso on a computer magazine coverdisk – they only offered the 64 bit and didn't really make it clear, PLUS I'm completely new to Linux. Still feel daft though.

  • Webmasterintexas

    I have Ubuntu already installed on this pc. Should I do a complete re-installation of whatever Linux version I want to use if I want to try that clear-OS? THank you for your comprehensible tutorial Dave, I am learning Linux after 10 years of Windows, and what a relief!

  • Dave Drager

    You can open a window in explorer and type in the url of the server, for example: “\\192.168.1.20″ or “\\servername”. This should list the shares on your server and let you access them from Windows.

  • Chrishill16

    Thanks for your help. I’ve got it all set up as the articles suggest and I’m able to connect to my server using dyndns.

    How do I access files on the server (music, movies) from my Windows pc on the same network? I tried to add a new network location but that didn’t work. Ideally I want to be able to store all my music and movies on the server and access them from my pc – is this something to do with the shared folder?

    Thanks again.

  • Chrishill16

    Dave, great article – currently following it to setup my server.

    Just wondering… if i set my system up as described in the article, will i also be able to use it as a file server and stream movies from it? I’d also like to be able to grab files from it when I’m away from home, which I guess I could do with ftp?

    • Dave Drager

      Yes, using the “share this folder” option in part 2 will allow you to enter your computer share on another computer, allowing you to stream movies from it using something like Boxee or another computer. FTP will work, but it is an insecure protocol, I would recommend using SSH or SCP to transfer files to/from the server remotely. Just make sure to forward the correct ports.

    • Chrishill16

      Thanks for your help. I’ve got it all set up as the articles suggest and I’m able to connect to my server using dyndns.

      How do I access files on the server (music, movies) from my Windows pc on the same network? I tried to add a new network location but that didn’t work. Ideally I want to be able to store all my music and movies on the server and access them from my pc – is this something to do with the shared folder?

      Thanks again.

    • Dave Drager

      You can open a window in explorer and type in the url of the server, for example: “\192.168.1.20″ or “\servername”. This should list the shares on your server and let you access them from Windows.

Load 10 more
Affiliate Disclamer

This review may contain affiliate links, which pays us a small compensation if you do decide to make a purchase based on our recommendation. Our judgement is in no way biased, and our recommendations are always based on the merits of the items.

For more details, please read our disclosure.
Affiliate Disclamer

This review may contain affiliate links, which pays us a small compensation if you do decide to make a purchase based on our recommendation. Our judgement is in no way biased, and our recommendations are always based on the merits of the items.

For more details, please read our disclosure.