Mount.md5key
From BononWiki
Index
Mount.md5key is a software construction to provide browseable maps, offering access to various resources like local harddisks, usb sticks and cdroms, and remote resources like SMB shares and internet services like ownCloud, Amazon S3 and Google Docs.
It does that by using the automounter to do the mounting, and a FUSE fs which provides a userfriendly browseable map.
Additional tools used are: udisk for detecting local hardware, smbclient, nmblookup and nbtscan for detecting smb resources, at as general launch manager, other FUSE fs's to mount specific targets like fuse-cdfs to mount an audio cdrom, wdfs to mount webdav services like ownCloud and s3backer to mount Amazon S3 online storage.
The construction uses three setups:
1. at /media
At /media the following directories are present:
/media/ computer internet services mounts network
Complete unfolded it looks like:
/media/
computer
3-Audio CD
23-SAMSUNG_SP250C
161-SAMSUNG_HM500JI
internet services
Amazon S3 Online Storage
OwnCloud Online Storage
mounts
Pardus-2011-i686.iso
network
Windows Network
TESTGROUP
TESTSERVER
public
shared
Properties:
a. a browseable map, where resources are detected while browsing.
b. resources are mounted by the automounter somewhere else, but redirected by the FUSE fs to the right location in the browseable map above.
c. there are only public resources: all the mounts are done as guest or as a specific user which does not depend on the current user logged in.
d. other network/internet services are possible, as long there is a command to mount it, and ways to detect resources.
e. started at system startup, stopped at system shutdown
f. the iso file in mounts is an example. the mounts folder gives the user the ability to mount specific targets by running a command in the right-click menu. Supported at this moment are iso files and archives. It's of course possible to support more, as lomg there is mount command, and a way to browse to it, using the file manager. (browsing the network using SLP providers like Avahi??)
2. at $HOME/Workspace (or $HOME/Media)
At $HOME/Workspace (or $HOME/Media) a simular map:
$HOME/Workspace
Computer
Internet Services
Mounts
Network
Shared
Unfolded it looks the same as above. Properties, different from setup 1:
a. started when user logs in, aka a session starts, and removed when the session ends.
b. private mounts, mounts on behalf of the user are possible, like user defined credentials to mount SMB shares
This setup requires more administration, since it has to be started when a session begins, and removed when session ends. The use of a specific PAM module to execute scripts (pam_exec/pam_script) is required.
3. Chroot to create a new root (aka Gobo Linux setup)
When a usersession starts, a complete different environment is created:
(at /:)
Computer Home Internet Services Network Mounts Shared System
Specific properties:
a. every user get her/his own personal chrooted environment
b. system directories like /bin, /sbin, /usr and /lib are present, but hidden by the FUSE fs.
c. next to the pam module to run scripts is a pam module to chroot is required.
d. I'v been experimenting with namespace support. Needs more testing.
. Features
Technical issues
. Extension scripts of at: at as launchmanager
. Integration with environment
. Nor session nor system service
Project related