[CentOS] how do export a block device via eSATA?

Sun Feb 13 19:58:11 UTC 2011
Rudi Ahlers <Rudi at SoftDux.com>

On Sun, Feb 13, 2011 at 9:44 PM, Robert Heller <heller at deepsoft.com> wrote:
> At Sun, 13 Feb 2011 11:00:39 -0800 CentOS mailing list <centos at centos.org> wrote:
>> On 02/13/11 10:53 AM, Rudi Ahlers wrote:
>> > Does any one know how to, if at all possible currently, to export a
>> > block device via eSATA? i.e. how do I do something like iSCSI, but
>> > over eSATA?
>> >
>> > I have a cheat ($15 probably?)  media player at home (Egreat EG-M31B
>> > Network Media Tank - awesome little machine) that runs some flavor of
>> > Debian and can be connected to any PC via eSATA as an external HDD's.
>> > i.e. it exports the built-in HDD as a block device to the host (My
>> > laptop or PC).
>> >
>> > Now, the question is, how can I do this on Linux?
>> > Would I need a different eSATA card than the on-board eSATA port on
>> > most motherboards? Or would the on-board one work?
>> I suspect your media tank is doing something electrical, like idling its
>> processor, and re-routing the sata port directly to the internal storage
>> device, when its in this mode.   I'm unaware of any SATA target drivers
>> (as opposed to the normal initiator drivers in libata etc)
> More likely, it is running some custom software the connects to the
> exposed port (which is probably not a typical PC SATA port -- it would
> be wired like a Hard Drive's SATA connector (opposite gender, opposite
> signal directions, etc.).  The custom software presents itself on this
> port like it was a hard drive and implements some sort of logical hard
> drive based on the actual internal hard drive -- not really much
> different from a USB connected mp3 player or camera -- the USB
> connected mp3 players / camera are just using a different physical
> interface (USB), but the logic is the same. Again, the USB port on
> these devices is 'wired' the opposite from the USB port on a normal PC
> and the logic behind it is also opposite (you cannot really connect a
> USB port of one PC to the USB port of another -- there is no such thing
> as a USB 'cross over' (Ethernet) or null-modem (RS232) cable in the USB
> (or firewire) world). The processor in the little box is implementing
> much that same sort of processing that goes on inside the micro
> processor on the controller board of a hard drive -- modern hard drive
> controller boards are really a full fledged little computer running a
> very special program that implements the drive end of the mass storage
> interface (SCSI, SATA, PATA, etc.).  The media tank is just taking this
> to a different level.

Sure, I understand what you're saying, but the question is: If they
can do it with a cheap device like this, then surely one should be
able todo it with a normal / server motherboard? Obviously they won't
tell us their secrets, so I need to dig around to see how todo it
myself. This particular device has a eSATA slave + eSATA Master mode.
i.e. I can connect another device to this one and they both work
together, and then when I connect the first one to my PC, I have 2
HDD's - i.e. a cheap JBOD implementation.

I'm trying to see if I can setup  a Linux JBOD on a server chassis
with say 16 HDD's or something, and then connect it to another server
via eSATA - i.e. building a cheap scalable SAN.

P.S. You actually do get USB cross-over cables:
- they work quite well. They're not as fast a gigabit but works very
well for older PC's without LAN.

Kind Regards
Rudi Ahlers

Website: http://www.SoftDux.com
Technical Blog: http://Blog.SoftDux.com
Office: 087 805 9573
Cell: 082 554 7532