HLFSD(8)
π HLFSD π
okay bestie, pull up a chair, we're doing hlfsd β that's section 8 of the System Manager's Manual, the home-link file system daemon. yes it's giving "ancient Unix lore" but it's actually so iconic once you get it, i promise π«Ά
β¨ NAME β¨
hlfsd β home-link file system daemon πΈ
β¨ SYNOPSIS β¨
hlfsd [ -fhnpvC ] [ -a alt_dir ] [ -c cache-interval ] [ -g group ] [ -i
reload-interval ] [ -l logfile ] [ -o mount-options ] [ -x log-options ]
[ -D debug-options ] [ -P password-file ] [ linkname [ subdir ] ]
β¨ DESCRIPTION β¨
so hlfsd is a daemon that implements a filesystem containing a symbolic link to a subdirectory within a user's home directory β and which subdirectory depends on which user accessed that link. it was primarily designed to redirect incoming mail to users' home directories, so that it can read from anywhere. mail girlies stay winning π
how does it do this, you ask? okay so hlfsd operates by mounting itself as an NFS server for the directory containing linkname, which defaults to /hlfs/home. lookups within that directory are handled by hlfsd, which uses the password map to determine how to resolve the lookup. the directory will be created if it doesn't already exist (it's self-sufficient like that π
). the symbolic link will be to the accessing user's home directory, with subdir appended to it. if not specified, subdir defaults to .hlfsdir. this directory will also be created if it does not already exist.
now, signals, because this is the part where it gets dramatic π:
- a
SIGTERMsent tohlfsdwill cause it to shutdown. - a
SIGHUPwill flush the internal caches, and reload the password map. it will also close and reopen the log file, to enable the original log file to be removed or rotated. so polite of it honestly. - a
SIGUSR1will cause it to dump its internal table of user IDs and home directories to the file/usr/tmp/hlfsd.dump.XXXXXX.
β¨ OPTIONS β¨
-aalt_dir β Alternate directory. the name of the directory to which the symbolic link returned byhlfsdwill point, if it cannot access the home directory of the user. this defaults to/var/hlfs. this directory will be created if it doesn't exist. it is expected that either users will read these files, or the system administrators will run a script to resend this "lost mail" to its owner. π-ccache-interval β Caching interval.hlfsdwill cache the validity of home directories for this interval, in seconds. entries which have been verified within the last cache-interval seconds will not be verified again, since the operation could be expensive, and the entries are most likely still valid. after the interval has expired,hlfsdwill re-verify the validity of the user's home directory, and reset the cache time-counter. the default value for cache-interval is 300 seconds (5 minutes). β³-fβ Force fast startup. this option tellshlfsdto skip startup-time consistency checks such as existence of mount directory, alternate spool directory, symlink to be hidden under the mount directory, their permissions and validity. no vibe check, we go straight to the function. πββοΈ-ggroup β Set the special groupHLFS_GIDto group. programs such asfromorcomsat, which access the mailboxes of other users, must be setgidHLFS_GIDto work properly. the default group is"hlfs". if no group is provided, and there is no group"hlfs", this feature is disabled. π-hβ Help. print a brief help message, and exit. we love a queen who knows when to leave. π-ireload-interval β Map-reloading interval. each reload-interval seconds,hlfsdwill reload the password map.hlfsdneeds the password map for the UIDs and home directory pathnames.hlfsdschedules aSIGALRMto reload the password maps. aSIGHUPsent tohlfsdwill force it to reload the maps immediately. the default value for reload-interval is 900 seconds (15 minutes.) π-llogfile β Specify a log file to whichhlfsdwill record events. if logfile is the stringsyslogthen the log messages will be sent to the system log daemon bysyslog(3), using theLOG_DAEMONfacility. this is also the default. π-nβ No verify.hlfsdwill not verify the validity of the symbolic link it will be returning, or that the user's home directory contains sufficient disk-space for spooling. this can speed uphlfsdat the cost of possibly returning symbolic links to home directories which are not currently accessible or are full. by default,hlfsdvalidates the symbolic-link in the background. the-noption overrides the meaning of the-coption, since no caching is necessary. yolo mode fr fr π-omount-options β Mount options. mount options whichhlfsdwill use to mount itself on top of dirname. by default, mount-options is set to"ro". if the system supports symbolic-link caching, default options are set to"ro,nocache". π§-pβ Print PID. outputs the process-id ofhlfsdto standard output where it can be saved into a file. π-vβ Version. displays version information to standard error. β-xlog-options β Specify run-time logging options. the options are a comma separated list chosen from:fatal,error,user,warn,info,map,stats,all. π-Cβ Forcehlfsdto run on systems that cannot turn off the NFS attribute-cache.
use of this option on those systems is discouraged, as it may result in loss or mis-delivery of mail. π the option is ignored on systems that can turn off the attribute-cache.
-Dlog-options β Select from a variety of debugging options. prefixing an option with the stringnoreverses the effect of that option. options are cumulative. the most useful option isall. since this option is only used for debugging, other options are not documented here. a fuller description is available in the program source. aSIGUSR1sent tohlfsdwill cause it to dump its internal password map to the file/usr/tmp/hlfsd.dump.XXXXXX. π-Ppassword-file β Read the user-name, user-id, and home directory information from the file password-file. normally,hlfsdwill usegetpwent(3)to read the password database. this option allows you to override the default database, and is useful if you want to map users' mail files to a directory other than their home directory. only the username, uid, and home-directory fields of the file password-file are read and checked. all other fields are ignored. the file password-file must otherwise be compliant with Unix System 7 colon-delimited formatpasswd(4). ποΈ
β¨ FILES β¨
/hlfsβ directory under whichhlfsdmounts itself and manages the symbolic linkhome..hlfsdirβ default sub-directory in the user's home directory, to which thehomesymbolic link returned byhlfsdpoints./var/hlfsβ directory to whichhomesymbolic link returned byhlfsdpoints if it is unable to verify the that user's home directory is accessible.
β¨ SEE ALSO β¨
mail(1), getgrent(3), getpwent(3), mnttab(4), passwd(4), mtab(5), amd(8), automount(8), cron(8), mount(8), sendmail(8), umount(8).
HLFSD: Delivering Email to Your $HOME, in Proc. LISA-VII, The 7th Usenix System Administration Conference, November 1993.
``am-utils'' info(1) entry.
Linux NFS and Automounter Administration by Erez Zadok, ISBN 0-7821-2739-8, (Sybex, 2001).
β¨ AUTHORS β¨
Erez Zadok <ezk@cs.sunysb.edu>, Computer Science Department, Stony Brook University, Stony Brook, New York, USA. and Alexander Dupuy <dupuy@smarts.com>, System Management ARTS, White Plains, New York, USA.
other authors and contributors to am-utils are listed in the AUTHORS file distributed with am-utils. π«Ά
okay that's the whole thing, bestie, you're officially fluent in hlfsd π this page is from 14 September 1993, and it lives in the System Manager's Manual β it's giving vintage but make it useful, and honestly? ate. periodt. πβ¨π
π¦ where this page comes from
- fedora 43: am-utils 5:6.2.0-61.fc43 Β· LicenseRef-Callaway-BSD
- fedora 43: am-utils 5:6.2.0-61.fc43 Β· LicenseRef-Callaway-BSD
- fedora 44: am-utils 5:6.2.0-63.fc44 Β· LicenseRef-Callaway-BSD
- fedora 44: am-utils 5:6.2.0-63.fc44 Β· LicenseRef-Callaway-BSD
- Copyright (c) 1997-2014 Erez Zadok
- Copyright (c) 1989 Jan-Simon Pendry
- Copyright (c) 1989 Imperial College of Science, Technology & Medicine
- Copyright (c) 1989 The Regents of the University of California
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms