[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

building with storage on the network (follow-up)



On Tue, 1 May 2001, Wouter Verhelst wrote:

> I think I found the solution to the chroot-on-NFS problem: forget about
> NFS, use NBD instead.
> For those that've never heard of this: NBD, or the Network Block Device,
> is a block device driver that sends its reads and writes to a server on
> the network. Because this works on a lower level than NFS, it does not
> have the build-problems related to NFS (clock differences, lockd
> malfunctioning, ...)

<snip>

I've compiled Pine on this, yesterday. It works, I've got no problems
running it on the m68k-box. Everything works happily as if it ran on a
local disk.

This probably means we could use a mac with 80 MB and an NBD-device
mounted on a server to compile, say, OpenOffice (which, besides an
awful lot of time, will need an awful lot of diskspace too ;-)

If you want to try this, it's not that difficult. You need the supporting
tools from http://atrey.karlin.cff.cuni.cz/~pavel/nbd/nbd.html, compile
them, run the program "nbd-server" on a machine with lots of diskspace as
follows:

nbd-server 1234 huge_file_or_blockdevice

1234 is the portnumber; this can, of course, be something else. Then you
need to load the module on the client and create some device files on it:

modprobe nbd
mknod /dev/nd0 b 43 0
mknod /dev/nd1 b 43 1
...

No, "MAKEDEV /dev/nd" does not work (I'll have to file a bug report for
that). After that, you need to start the client process:

nbd-client server.host.name 1234 /dev/nd0

And Presto! You've got a new block device that you can do all usual things
on, like mkfs'ing it, or mount it. Works great!

Well, almost. Some tips: don't run the server on a system in New York and
the client in Moskow. If your link goes down, your client will go down
with it. Also, don't forget to umount the block device before you run
shutdown, because Debian's initscripts see this as a local block device,
and try to umount it after the network has been shut down, which,
naturally, is impossible at that time, causing the client to sit and wait
forever.

Besides that, it works flawlessly. It's not packaged in Debian yet, so I'm
thinking of doing this, but I found no explicit copyright statement yet,
so I'll have to clear that out before wasting my time (I sent the author a 
mail already, waiting for his reply)

<snip>

-- 
wouter dot verhelst at advalvas in belgium
#ifdef NOT_A_GODDAMN_YANK
	{ 0x10, "Minimise Delay" },
#else
	{ 0x10, "Minimize Delay" },
#endif
/* ipchains.c */



Reply to: