droboshare alternatives – tonidoplug + gigabit switch? [Updated w/ solution]

I have a 2nd generation Drobo with 4TB worth of drives and 2.6TB of usable space. I loved the drobo’s ability to use drives with different sizes, however it is quite useless without any NAS capability.

The droboshare adds NAS capability to the drobo for $199 USD, which is an insane price tag for what it is. I looked around the web and found two worthy alternatives – pogoplug and tonidoplug. Both are based on the same architecture – the Sheevaplug from Marvell.  (1GZ ARM cpu with 512MB RAM and 512MB Flash).

The Pogoplug is a widely popular product with their own backend service that will allows user to share data on the Internet directly from the NAS. However, I’m not a big fan of pogoplug’s closed platform, and the fact that all my data are routed by the pogoplug server. Eventually I ordered the tonidoplug which is cheaper and did exactly what I needed it to do.

The guys over at Tonido really tried to simply the setup process for the average user. There are still flaws and bugs, but the community is growing quickly and your questions do get answered.

The only problem with the Tonidoplug is that it cannot detect multiple LUNs on a single device. This means if you have multiple partition on your drive, the 2nd partition will not be recognized. Secondly, the maximum supported volume size is only 2TB.  These problems eventually killed the dream of using it as a droboshare…

However, these should be easy things to fix as long as the Linux kernel on the plug are recompiled to support these features… I have already made contact with one of the users on the forum who is looking into writing a system module to address these limitation temporarily.  I hope tonidoplug will come up with an official update soon.

They have huge potential to capture the droboshare’s marketshare.

Update: With help from the guys over the Tonido support forum we found  a temp solution. It’s not pretty but It sure does work! Read on…

Basically the idea is to load a more updated kernel with a USB stick.

You will need:

  • TonidoPlug
  • USB flash drive 512MB or larger
  • Powered USB hub to connect drives

Install TonidoPlug firmware to a USB drive

1. Connect the USB drive to TonidoPlug. The USB drive will be automounted on /media/usb0. Stop samba server and unmount the USB drive before proceeding. To do this SSH to the TonidoPlug and run the following commands.

# /etc/init.d/samba stop
# umount  /media/usb0

2. Make sure the external USB drive is not mounted anywhere else. Check the output of the following command.

# mount
rootfs  on / type rootfs (rw)
tmpfs on /lib/init/rw type tmpfs  (rw,nosuid,mode=0755)
/proc on /proc type proc  (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs  (rw,noexec,nosuid,nodev)
varrun on /var/run type tmpfs  (rw,nosuid,mode=0755)
varlock on /var/lock type tmpfs  (rw,noexec,nosuid,nodev,mode=1777)
udev on /dev type tmpfs  (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts  on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
tmpfs on  /var/cache/apt type tmpfs (rw,noatime)

As you can see the USB harddrive (usually /dev/sdaX) is not mounted anywhere else

3. Format the USB drive partition. You are about to create EXT3 filesystem on the USB drive partition. Warning: This command will wipe all the data on the partition.

# mkfs.ext3 /dev/sda1

Note: If you have multiple partitions in your USB drive, you have to always use the first partition, because the TonidoPlug will boot only from the first partition of the external drive.

4. Once the formatting is completed, mount the partition on a temporary directory

# mount  /dev/sda1 /media/usb0

5. Download the root and modules tar ball from TonidoPlug site and place in the newly created ext3 partition.

# cd /media/usb0
# wget  http://www.tonido.com/downloads/plug/rootfs.tar.gz
# wget  http://www.tonido.com/downloads/plug/modules.tar.gz

Please make sure the checksum of the files match the following values

# md5sum   rootfs.tar.gz
958a32161e1daf1c79d88b1c6f6e85bf  rootfs.tar.gz
#  md5sum modules.tar.gz
c2b89c8dd681656427b27a2fc1db725f   modules.tar.gz

6. Untar the downloaded tar file onto the ext3 partition.

# tar zxvf rootfs.tar.gz
# tar zxvf  modules.tar.gz

7. Now stop tonido and copy the tonido directory from your existing internal flash disk.

# initctl  emit tstop
# cp -dpr /root/app/ /media/usb0/root/

Install a New Kernel

cd /media/usb0/
wget http://sheeva.with-linux.com/sheeva/2.6.32.8/sheeva-2.6.32.8-Modules.tar.gz
tar xzvf sheeva-2.6.32.8-Modules.tar.gz
rm sheeva-2.6.32.8-Modules.tar.gz
cd boot
rm uImage
wget http://sheeva.with-linux.com/sheeva/2.6.32.8/sheeva-2.6.32.8-uImage
mv sheeva-2.6.32.8-uImage uImage

Now reboot the plug and SSH into it. You should see the new kernel version in the SSH greeting.

Note that this method requires you to have a POWERED USB hub. Simply plug in the Drobo after the plug boots up with the new kernel and it will be auto-mounted to /media/usb0

A Big Thank You goes to mikestaszel for the help to accomplish this.

  • zhuanyi

    Metioned in this blog that it seems to work with Tonido:
    http://www.marriedgeeks.com/2010/01/crashplandr
    so who's right then?

  • frankleng

    It will work as long as your drobo is configured to 2TB or less. any larger… the TonidoPlug won't be able to detect it.

    Furthermore, once your actual capacity exceeds 2TB on the drobo. the drobo will automatically create another volume. The way the Tonido kernel is compiled right now… it won't be able to see the 2nd volume. :(

    The only solution is to replace the kernel with a newer version. You may boot the plug from a USB stick through a USB hub. That way you have a more up to date kernel to detect the drobo. I will post some steps tonight if you want to try it out.
    So the bottom line is… the Tonidoplug can work with the drobo. but the software isn't allowing it to do that right now. No word from Tonido if the kernel on the internal flash will be updated any time soon… if at all.

    If you read my discussion (from “webbernet”) with the folks at Marriedgeeks.com, their drobo is set to 2TB NTFS volume.

  • zhuanyi

    So you could essentially replace the entire kernel by booting through another USB stick? Does that mean you could run your own version of ubuntu stored in another USB stick (configured with apache and php and stuff)? That is sooooo cool if we could do that lol :)
    By the way, I replied your Twitter as well, did not realise it was the same person haha…

  • frankleng

    Ha. I just saw your tweet. lol
    the tonido plug is based on the Marvell's sheevaplug. Marvell regularly releases newly compiled kernels to the community. I believe the releases are based on ubuntu 9.04 but customized for the ARM cpu.

    You should be able to run a LAMP stack on it… but not sure if performance is up to par for production use. =p

  • zhuanyi

    I just got the plug today and tried this method, seems everything is working perfect. Thanks!

  • frankleng

    awesome. good to hear. What setup do you have? and whats your average R/W throughput?

  • http://www.telephonefaxswitch.net Telephone Fax Switch

    I'm not finished read this yet, but it's so fabulous 'n I'll back again when I was finished my job :D

  • http://www.frankleng.me Frank Leng

    thanx! glad u find it useful. =p

  • http://www.frankleng.me Frank Leng

    thanx! glad u find it useful. =p

  • Chad Doty

    I love this. Just got a drobo and was horrofied by the issues with droboshare AND I wanted simple external access to folders on it. Thank you thank you. Tonidoplug ordered!

  • http://www.frankleng.me Frank Leng

    Glad this could be helpful to you. I also heard from tonidoplug that the new version of the plug has an updated kernel which can support 2TB drives out of the box. this will save you a lot of hassle with connecting with the Drobo. Let me how it goes. =p

  • http://twitter.com/bbpmkoert Michael Koert

    Has there been any new updates to this? fixed for up to 8tbs and running the drobo dashboard with it?

  • http://www.frankleng.me Frank Leng

    You cannot run drobo dashboard unless you get a droboshare. which is now discontinued since they released the drobo FS.

    The new tonidoplugs have all been updated with a newer kernel. but I cannot confirm if the 2TB limit still exists or not. I’ll have to get back to you on that one.

  • Ddwrt Supafrieke

    Anyone revisited using Drobo through a USB enabled router with DD-WRT? I’m looking at an asus wl-500gp v2 as NAS + printer server so I can decommission a PC that currently does the job.

  • http://www.frankleng.me Frank Leng

    I bought the Asus RT-N16 for the same purpose. but ddwrt is really not a NAS ready firmware yet. You gotta do a lot of hacking to get SMB running on it. tho ASUS’s factory firmware supports it out of the box. performance sux.

    furthermore, SMB performance depends greatly on RAM to cache the transfer. The router has 128MB, but even that is nowhere close to being enough. You will also hit the 2TB drive limit due to kernel limitations.

    bottom line, it is possible to get the router to be a NAS. but if you want decent performance. it’s not worth it.

  • http://www.pornpra.com/ พระเครื่อง

    It’s fine to check out web sites with info and many thanks for the discuss that you’ve gave. Commonly, I’m really stunned, but etc…

  • Anonymous

    This post/discussion is exactly what I’ve been looking for.

    Let me share my experiences and see what you think.

    First I tried using the USB Port of the D-Link 655, but I quickly discovered that the drive was only accessible when both the computer and the Shareport software were on.

    Then I actually was trying the Seasgate Dockstar featuring Pogoplug software (only $25 on Newegg) with OpenPogo. Here’s what I found:
    - Together they do support up to the total formatted 16TB
    - Attempting to stream a library over 40GB is almost impossible and their web player is horrible.
    - If you enable the MultiDrive support, the drive letters can change, resulting in chaos with my local backupsoftware.
    - To resolve this, I turned MultiDrive Support off, and followed the instructions on pogoplugged.com to map a specific drive letter. Only later did I find that now I cannot mount the Drobo through OpenPogo.

    OpenPogo is no longer being supported and replaced PlugBox, but it requires a complete reflash of the entire OS, something I’m refusing to do.

    In an effort to get help to run DroboShare Apps on OpenPogo, I turned to the Hak5 Forums:

    http://www.hak5.org/forums/index.php?showtopic=16963

    They recommended:
    “The DroboShare runs a customized version of BusyBox, if you got hold of the DroboShare image, you might be able to Jerry rig it on to another version of BusyBox”

    I would consider doing this with a Tonaido, but I’d like to know if anyone else has tried it, or had any luck/success, and if so, what did they do, before I do.

    Do you guys think I’m living in a dream world and should just bite the bullet to get a $150 Droboshare off eBay instead??

    OR, do you think there might be a way to get a mini-linux working virtually on the D-Link 655 without the Shareport software and skip the PlugDrive altogether?

  • http://www.frankleng.me Frank Leng

    I would bet that you cannot run droboshare apps on anything else other than a droboshare itself. I’m not stating it as a technical fact but I think it’s not worth the effort.

    So far you have a Seagate Dockstar running openpogo and you connected it to the D-link router? why couldn’t the drobo be mounted on as an external drive? I would advise setting it up by connecting it directly to your computer then format it to a FS the Seagate can support.

    I wouldn’t eBay a droboshare right now since datarobotics had discontinued it permanently.
    A plugbox like Tonidoplug is a better bet. it’s cheaper and you can mount the drobo on it as a NTFS drive. just don’t expect to stream anything over 1GB. It will be slow because these plugboxes’ processor and I/O just can’t deliver. A sad fact that these manufacturers don’t tell people.
    Mounting an external drive on a router is also a lost cause. Its even slower than the plugboxes.
    That’s why I ended up making my own Atom based NAS.

    hope that helps a little.

  • http://www.usbswitches.net USB Switch

    Oh!…that’s great helpful, it’s so right to me! Million thanks for the article,

  • Anonymous

    Yep! I was agreed, I’ll keep in touch to your blog. This blog is so usefully, Thanks for
    the posted.

See also: