storeio
is a translator for devices and other stores. You can use
it for user-level access to disks via /dev/hd0s1
instead of kernel-based
device access.
$ settrans -ca foo /hurd/storeio myfile
Now, foo will look like a device, which gives you transparent
decompression, partition handling, etc. It is a little like Linux's
losetup
, and you don't have to be root to use it!
It relies heavily on libstore.
Examples
You can make a file's content available as some block device (where foo
is
the name of the file to map):
settrans -ca node /hurd/storeio -T file foo
You can even ungzip
files on the fly (bunzip2
is available as well):
settrans -ca node /hurd/storeio -T gunzip foo.gz
You can use the typed store, to create filter chains (of course this example
is kind of useless since you could use the gunzip
store directly):
settrans -ca node /hurd/storeio -T typed gunzip:file:foo.gz