Monday 28 March 2011

Customising your Pogoplug

or, "How to turn your Pogoplug into a BitTorrent, file and web server!"

Please note: Follow the instructions below at your own risk.  Please do not blame me if your Pogoplug breaks :)
11/01/2012 - Please note that a number of users appear to be having issues completing the steps described below on the latest incarnation of the Pogoplug (v4).  Unfortunately I do not own v4 of this device, so I cannot experiment/resolve this issue.  If you have any information to help get users working with this version, please post in the comments section below.

Pogoplug is a small embedded Linux device sold to enable personal cloud computing.  If you have never heard of Pogoplug, check it out here.  

If you have one already and would like to add support for 100s of different applications, including a BitTorrent client, Samba, Apache Web Server, CUPS etc, then read on!

The great thing about the Pogoplug is that it allows root access via SSH, and also includes an unused internal flash drive, perfect for tinkering with. In this tutorial I am going to describe the steps I took to install a package management system which gives access to a whole host of useful applications that can run directly on your Pogoplug (and lots of other packages, a list of available ones can be seen here).  

1. PREPARING YOUR POGOPLUG

First, make sure you have setup your Pogoplug correctly and it is accessible from my.pogoplug.com.

  • Log in to my.pogoplug.com with your username and password
  • Go to “Settings” > “Security Settings" page and tick “Enable SSH access for this Pogoplug enabled device"
Now you need to find the IP address of your Pogoplug in your local network.  There are lots of different ways to do this, probably the most straightforward is to login to your router and look through the list of connected Ethernet devices.  Once you have found your Pogoplug's local IP address, you can SSH to it using a terminal application.

  • Open up a terminal (instructions for Windows, Linux and Mac)
  • Once you have your selected terminal open, type the following (replacing “123.456.789.100” with your Pogoplugs IP address:
    • ssh root@123.456.789.100
  • When prompted for a password, use “ceadmin” and hit enter
Congratulations!  You are now connected to your Pogoplug.


2. INSTALLING A PACKAGE MANAGEMENT SYSTEM

Now it’s time to install a lightweight package management system on the unused internal flash drive – this will enable us to install a whole host of useful packages that are not included on the Pogoplug as standard.  

  • Copy and paste the following into your connected SSH session to prepare your Pogoplug for installing applications (it may be worth copying and pasting a line at a time and checking for any errors before continuing with the next step):
mount -o remount,rw /
mkdir /opt
mount /dev/mtdblock3 /opt
cd /opt
wget http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable/ipkg-opt_0.99.163-10_arm.ipk
tar -xOvzf ipkg-opt_*_arm.ipk ./data.tar.gz | tar -C / -xzvf –
mkdir -p /opt/etc/ipkg
echo "src cross http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/unstable" > /opt/etc/ipkg/armel-feed.conf
echo "src native http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/native/unstable" >> /opt/etc/ipkg/armel-feed.conf
/opt/bin/ipkg update
Now you have the package manager installed, congratulations, there are a whole host of applications available at your disposal! You can see a list here, or by executing “/opt/bin/ipkg list” from the command line of your Pogoplug.

Future posts will cover installing a BitTorrent client, SAMBA and a webserver :)