The PirateBox is a device designed to facilitate sharing. There's one catch, it isn't connected to the Internet, so you need to be close enough to connect via Wi-Fi to this portable file server. This article outlines the project and shows how to build your own.
In days of yore (the early- to mid-1990s) those of us using the "Internet", as it was, delighted in our ability to communicate with others and share things: images, MIDI files, games and so on. These days, although file sharing still exists, that feeling of community has been leeched away from the same activities, and people are somewhat skeptical of sharing files on-line anymore for fear of a lawsuit or who's watching.
Enter David Darts, the Chair of the Art Department at NYU. Darts, aware of the Dead Drops (http://deaddrops.com) movement, was looking for a way for his students to be able to share files easily in the classroom. Finding nothing on the market, he designed the first iteration of the PirateBox.
"Protecting our privacy and our anonymity is closely related to the preservation of our freedoms."—David Darts
Dead Drops is an off-line peer-to-peer file-sharing network in public. In other words, it is a system of USB Flash drives embedded in walls, curbs and buildings. Observant passersby will notice the drop and, hopefully, connect a device to it. They then are encouraged to drop or collect any files they want on this drive. For more information, comments and a map of all Dead Drops worldwide, go to http://deaddrops.com.
What Does David Darts Keep on His PirateBox?
A collection of stories by Cory Doctorow.
Abbie Hoffman's Steal This Book.
DJ Danger Mouse's The Grey Album.
Girl Talk's Feed the Animals.
A collection of songs by Jonathan Coulton.
Some animations by Nina Paley.
(All freely available and released under some sort of copyleft protection.)
The PirateBox is a self-contained file-sharing device that is designed to be simple to build and use. At the same time, Darts wanted something that would be private and anonymous.
The PirateBox doesn't connect to the Internet for this reason. It is simply a local file-sharing device, so the only thing you can do when connected to it is chat with other people connected to the box or share files. This creates an interesting social dynamic, because you are forced to interact (directly or indirectly) with the people connected to the PirateBox.
The PirateBox doesn't log any information. "The PirateBox has no tool to track or identify users. If ill-intentioned people—or the police—came here and seized my box, they will never know who used it", explains Darts. This means the only information stored about any users by the PirateBox is any actual files uploaded by them.
The prototype of the PirateBox was a plug computer, a wireless router and a battery fit snugly into a metal lunchbox. After releasing the design on the Internet, the current iteration of the PirateBox (and the one used by Darts himself) is built onto a Buffalo AirStation wireless router (although it's possible to install it on anything running OpenWRT), bringing the components down to only the router and a battery. One branch of the project is working on porting it to the Android OS, and another is working on building a PirateBox using only open-source components.
How to Build a PirateBox
There are several tutorials on the PirateBox Web site (http://wiki.daviddarts.com/PirateBox_DIY) on how to set up a PirateBox based on what platform you are planning on using. The simplest (and recommended) way of setting it up is on an OpenWRT router. For the purpose of this article, I assume this is the route you are taking. The site suggests using a TP-Link MR3020 or a TP-Link TL-WR703N, but it should work on any router with OpenWRT installed that also has a USB port. You also need a USB Flash drive and a USB battery (should you want to be fully mobile).
Adding USB Support to OpenWRT
USB support can be added by running the following commands:
opkg update opkg install kmod-usb-uhci insmod usbcore insmod uhci opkg install kmod-usb-ohci insmod usb-ohci
Assuming you have gone through the initial OpenWRT installation (I don't go into this process in this article), you need to make some configuration changes to allow your router Internet access initially (the PirateBox software will ensure that this is locked down later).
- October 2014 Issue of Linux Journal: Embedded
- Encrypt Your Dog (Mutt and GPG)
- Give new life to old phones and tablets with these tips!
- Download "Build a Private Cloud for Less Than $10,000!"
- Practical Tiny Core in the Fire Service
- Tech Tip: Really Simple HTTP Server with Python
- DevOps for Dummies
- Cooking with Linux - Serious Cool, Sysadmin Style!
- Returning Values from Bash Functions
- New Products
Free DevOps eBooks, Videos, and more!
Regardless of where you are in your DevOps process, Linux Journal can help!
We offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, and advice & help from the expert sources like:
- Linux Journal