libstore is used to provide a generic interface to access data (read/write) on backing stores.

It more than just a thin layer between GNU Mach devices (hd0 for example) and the device node below /dev/...

Available Stores

At http://www.kataplop.net/pub/info/projets you can find some effort to make some crypto store.

At http://www.trek.eu.org/devel/hurd/crypt-trans-0.0.3.tgz, another package can be found.

Examples

$ settrans --create --active ramdisk0 /hurd/storeio -T copy zero:32M
$ mkfs.ext2 -F -b 4096 ramdisk0
[...]
$ settrans --active --orphan ramdisk0 /hurd/ext2fs.static ramdisk0
$ df -h ramdisk0/
df: Warning: cannot read table of mounted file systems
Filesystem            Size  Used Avail Use% Mounted on
-                      32M  1.1M   30M   4% /media/data/home/tschwinge/ramdisk0

This uses settrans and ?storeio to create a ramdisk of 32 MiB by routing a thusly sized zero store through the copy store, connecting that to the ramdisk0 node, create a ext2 filesystem on it, and replace the translator running on the ramdisk0 node with a instance of the ext2fs translator running on the same node (?translator stacking).

It is a open issue hurd why this does only work with ext2fs.static, but not the dynamically linked ext2fs (settrans: /hurd/ext2fs: Translator died).

A (better) alternative would be using the tmpfs translator, but that one is broken at the moment.

Posted 2009-05-20 07:34:58 UTC Tags:
License:

GFDL 1.2+

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.