filed - serve files over HTTP  


filed [{-h|--help}] [{-d|--daemon}] [{-v|--version}] [{-V|--vhost}] [{-b|--bind} address] [{-p|--port} port] [{-t|--threads} count] [{-c|--cache} entries] [{-l|--log} file] [{-u|--user} user] [{-r|--root} directory]



FILED serves files over HTTP as minimally as possible. Only static files (i.e., files that never change or are replaced) are supported.



-h (or --help)
Prints detailed usage information.

-d (or --daemon)
Instructs filed to become a daemon after initializing the listening TCP socket and log files.

-v (or --version)
Instructs filed to print out its version number and then exit.

-V (or --vhost)
instructs filed to prepend all requests with their HTTP Host header.

-b (or --bind)
Specifies the address to listen for incoming HTTP requests on.

-p (or --port)
Specifies the TCP port number to listen for incoming HTTP requests on.

-t (or --threads)
Specifies the number of worker threads to create. Each worker thread can service one concurrent HTTP session. Thus the number of threads created will determine how many simultaneous transfers will be possible.

-c (or --cache)
Specifies the number of file information cache entries to allocate. Each cache entry holds file information as well as an open file descriptor to the file, so resource limits (i.e., ulimit) should be considered. This should be a prime number for ideal use with the lookup method.

-l (or --log)
Specifies a filename to open for writing log entries. Log entries are made for various stages in transfering files. The log file is opened before switching users (see "-u") and root directories (see "-r"). The log file is never closed so log rotation without stopping the daemon is will not work. The value of "-" indicates that standard output should be used for logging. If the filename begins with a pipe ("|") then a process is started and used for logging instead of a file.

-u (or --user)
Specifies the user to switch user IDs to before servicing requests. The default is not change user IDs.

-r (or --root)
Specifies the directory to act as the root directory for the file server. If this option is specified, chroot(2) is called. The default is not change root directories, that is, the "/" directory is shared out. This will likely be a security issue, so this option should always be used.



Roy Keene <>