![]() Registered Member ![]()
|
Hello,
I've been working for some time now on a project I've called mount.md5key. It basically offers very userfriendly access to all kinds of (local and remote) resources, like USB devices, harddisks, cdroms and SMB shares, FTP servers and SSH hosts (or directories). It based upon a few techniques I've combined: - an adminstration of resources in a set of records. It's just a set of records (typically something like 25), each decribing a resource, like type(USB, cdrom or SMB share) and filesystem, model, vendor (with hardware). - a setup of the automounter to mount a share, using the md5sum of the record, which is unique, as activating and identifying key. - a fuse module I've called fuse-workspace. This Fuse module is the bridge between the resource mounted by the automounter, and the user, providing the user userfriendly names (like Windows Network/MyWorkgroup/ServerA/myshare) - session support through some scripts lanched by ConsoleKit - hardware detection with udev through a special rules file, creating and removing records dynamically - at as general launch manager, extended with some script to launch a list of commands, to not bother udev and ConsoleKit launching various scripts. - smb tools like nbtscan and smbclient to detect remote smb resources. It's working already very good on my computers at home, but I do not have up to date sources anywhere on the net available. I will take care to make them available if someone is interested. (I'm thinking of git: gitorious). Futher you can look at: http://linux.bononline.nl/projects/mount.md5key.new/ I'm working on the wiki, to create more documentation (in detail) because there is a lot to know and to share. Futher, it's simular to Gnome VFS, but with some important differences: - my construction works on filesystem level, where Gnome VFS works on application level. This means for example that resources with construction are just offered as subirectories (of your homedirectory) , where with Gnome they are "virtual". - my construction is not bound to the environment, it works with KDE but does also work when logging in at the console. - real good integration with the desktop is difficult, but a challenging task. The construction already provides means for the enviroment to find out the resource a file is from like Extended attributes and a file which maps the various resources (identified by the md5key) to the directory. See the webpage for more info. This project is not only about the writing of the fusemodule, it's also about the setup of autofs, the making of this construction session aware, and the enhancements to at to have a general launch manager. Basically everything to setup a good working service to provide excellent access to all kinds of resources. Work to be done: - a really nasty one to begin with: FUSE and Inotify, does not work yet. This is really a difficult one, but I'm convinced it's doable. FUSE is an excellent project, but lacks support of dealing with the inotify systemcalls when an overlay fs. - full support of CDroms. There is basic support fro cdroms, but stil needs improvements. - a more clever setup of the automounter, to lookup the network resources directly instead of the use of a cache. - some C improvements of the fuse-module to support "circular lists" and the umask of the activating user. I'm really looking forward to any reaction, and like I've already mentioned, if you're interested in just trying it out first, which I understand, I will take care of making the resources available. Stef Bon Voorburg the Netherlands |
Registered users: Bing [Bot], Google [Bot], q.ignora, watchstar