Seagull's Bane - Linux automounter

Automounting is handled by a kernel filesystem (autofs) talking to a userspace daemon (e.g. bane). The filesystem must be mounted by the daemon and in the filesystem options a file descriptor number is passed. Generally this is the writable end of a pipe. The daemon can then read messages (defined in linux/auto_fs.h) from that pipe.

The messages are triggered whenever a processes (other than the daemon) touches a dentry in the root of the autofs mount point that isn't a mount point itself. In this case a missing packet is sent to the daemon and the daemon must mount the correct filesystem in place before telling the kernel to unblock processes that are disk waiting on access to that dentry. The daemon can, of course, fail and tell the kernel so that processes get an EEXIST.

Bane consists of three parts: the daemon, the slave and the janitor. The daemon is as described above. The slave is responsible for name->mount_information lookups and the janitor looks for slave NFS filesystems and gets rid of them.

Requires:

To build: make && make install. To run, something like bane -t 300 /homes bane_flatfile /etc/auto.homes

Change Log

0.56: Builds on 2.6 kernels

0.55: Addition of bane_state.py to query a running bane

0.50: More comments. Man pages added. Janitor now builds with 2.4 mount options on

Contrib

bane_autonet.pl: A slave for mounting by server name. Jonathan Hudson

Downloads
FileSizeSHA1Type
bane-0.01.tar.bz224Kce314a927a2380cbd9c60dedd71cec01ce1a2747bzip2 compressed data, block size = 900k
bane-0.02.tar.bz224K151d662453e3e6be8cca2fbdb79bfffee66607d8bzip2 compressed data, block size = 900k
bane-0.02.tar.bz2.asc8.0Kd528814bd7c9d6e6929d6c606f48b3b84f580b3bPGP armored data
bane-0.50.tar.bz224Kc6d19d30513840eaab2cd7e3bbc0d7512c5cd73dbzip2 compressed data, block size = 900k
bane-0.50.tar.bz2.asc8.0K6624e977d1c3b431ba5225c44bf835f7e7fb4473PGP armored data
bane-0.55.tar.bz224Kf6b4f57dc45a161d94f9ef79b0b43bef3d3b3a40bzip2 compressed data, block size = 900k
bane-0.55.tar.bz2.asc8.0Kcba7609272a4461be051ea987d51fd731078d347PGP armored data
bane-0.56.tar.bz220K6ff75f7ee202a0afc2e34cef8081cbe21decdc0ebzip2 compressed data, block size = 900k
bane-0.56.tar.bz2.asc8.0Kd3c0c6705b4a281a57f4cf7f3d17e7593eaebc3fPGP armored data
bane_autonet.pl8.0K3c99c53391b670e7d96644c60329bee299c204beperl script text executable

Site Map
/Root
     AlternateThe Weird and Wonderful
          BacklinksWhat are backlinks
          John GilmoreWhat's Wrong with Copy Protection
     ArchivesBlog Archives
          OneArchive 1
          TwoArchive 2
          ThreeArchive 3
          FourArchive 4
          FiveArchive 5
          SixArchive 6
          SevenArchive 7
          EightArchive 8
          NineArchive 9
          TenArchive 10
          ElevenArchive 11
          TwelveArchive 12
          ThirteenArchive 13
          FourteenArchive 14
          FifteenArchive 15
          SixteenArchive 16
          SeventeenArchive 17
          EighteenArchive 18
          NineteenArchive 19
          Twenty Archive 20
          Twenty OneArchive 21
          Twenty TwoArchive 22
          Twenty ThreeArchive 23
          Twenty FourArchive 24
          Twenty FiveArchive 25
          Twenty SixArchive 26
          Twenty SevenArchive 27
          Twenty EightArchive 28
          Twenty NineArchive 29
          Thirty Archive 30
     PhotosPoor People Caught on Film
          Jack and the Beanstalk Jack and the Beanstalk
          RIP ScanResults of a Stage Scan Fire
          YosemiteYosemite National Park
     ProjectsIncomplete things from the lab
          Seagull's BaneLinux Automounter
          bttrackdBitTorrent Tracker
          CAPTCHACAPTCHA CGI script
          ConservConsole Serving
          DeerparkUsing Tor with Firefox/1.1 (Deerpark)
          DNSFixFixing DNS
          XoversXTA Crossover Control
          IAFSArchive Org Storage
          JBIG2JBIG2 Encoder
          VerifyPGP Key Verifier
          MaxFlowMaximal Flow in Python
          PyBloomBloom Filters in Python
          pyGnuTLSPython wrapping of GnuTLS
          SxmapApache SuEXEC Map
          HellardUnion Server Notes
     RecordingsFree recordings
          ICSM ChoirSt Paul's Church
     SchoolAncient School Stuff
     WritingsWho knows
          Cap SystemsCapability Systems
          IntroIntroduction to me
          SupremaJMC2 Group Project
          MP LettersLetters I've written to my MP
          SoundSound With Dramsoc
          SyncThreadingThe wonders of user-land threads