NAME
davfs2.conf - Configuration file for mount.davfs
DESCRIPTION
There is a system wide configuration file /etc/davfs2/davfs2.conf and user configuration files ~/.davfs2/davfs2.conf. When mount.davfs is invoked by root, only the system wide configuration file is read. When invoked by an ordinary user, the user configuration file is read in addition. Settings from the user configuration file will take precedence over the system wide configuration.
The configuration file consists of lines where each line contains a keyword value pair. Keyword and value are separated by spaces and/or tabs.
The file may contain sections that are for one specific mount point only. Such a section starts with a line, that contains the full path of the mount point enclosed in square brackets. The section ends at the start of the next section or the end of file. Options that shall apply to all mounted file system must come before the first sections. Options given in a mount specific section will have precedence.
EXAMPLE
proxy |
foo.bar:8080 |
use_locks 0
[/media/dav]
use_locks 1
[/home/otto/mywebspace]
gui_optimize 1
All mounted davfs2 file systems will use the proxy foo.bar. All davfs2 file systems except /media/dav will disable the use of the locks. /home/otto/mywebspace will use the gui_optimize option.
GENERAL SYNTAX RULES
Lines that only contain spaces and tabs (empty lines) are ignored.
# indicates a comment. The rest of the line is ignored.
\ is the escape character.
"" is used for quotation.
If a value contains one of the special characters space, tab, #, \, or ", this character must be escaped by a preceding \. Use ’\ ’ instead of ’ ’, ’\#’ instead of ’#’, ’\\’ instead of ’\’ and ’\"’ instead of ’"’.
Values containing spaces, tabs or # may instead be enclosed in double quotes. But " and ’ must be escaped even within double quotes. If the starting line of a section is enclosed in double quotes, the square brakets must be within the quotes (like "[/home/otto/with space]").
Boolean option values (yes/no) must be given as numerical value. 0 for no, 1 for yes.
AVAILABLE CONFIGURATION OPTIONS
General Options
dav_user
When invoked by root the
mount.davfs daemon will run as this user. Value must
be given as name, not as numerical id.
Default: davfs2
Only allowed in the system wide configuration file.
dav_group
The group of the running
mount.davfs daemon. Ordinary users must be member of
this group in order to mount a davfs2 file system. Value
must be given as name, not as numerical id.
Default: davfs2
Only allowed in the system wide configuration file.
buf_size
Size in KiByte of the buffer
used to communicate with the kernel file system. Only useful
with fuse, where read and write operations may profit
from a larger buffer.
Default: 16
WebDAV Related Options
use_proxy
Whether to use a proxy to
connect to the WebDAV server. 0 = no, 1 = yes. If no proxy
is defined in the configration file or the environment
variables https_proxy, http_proxy and
all_proxy, this option has no effect.
Default: 1
Only allowed in the system wide configuration file.
proxy |
Name of the proxy. The name must be the fully qualified domain name (no scheme). If the proxy port differs from the default of 8080, it must be appended, separated by a colon. Examples: foo.bar:1704 or foo.bar |
Only allowed in the system wide configuration file.
trust_ca_cert
Name of a certificate file in
PEM format. The name of the file may be given as absolute
path or as file name only. In the latter case the
directories ~/.davfs2/certs and
/etc/davfs2/certs will be searched.
This option is useful when the certificate presented by the
server cannot be verified using the system’s data base
of trusted certificate authorities (CA). The certificate
file must contain the self-signed certificate of the top
level CA in the chain of trust. It may be a self-signed
server certificate (but see also trust_server_cert).
With this option the system’s CA data base is ignored.
Note: Even if the server’s certificate is trusted
that does not mean it is accepted. Additionally the
certificate’s date must be valid and either the
CommonName or the SubjectAltName must match the host name of
the server.
servercert
Same as trust_ca_cert
but badly named.
Deprecated
trust_server_cert
Name of a certificate file in
PEM format. The name of the file may be given as absolute
path or as file name only. In the latter case the
directories ~/.davfs2/certs and
/etc/davfs2/certs will be searched.
Useful when the server’s certificate can’t be
verified or is even invalid, but you know that you
can trust this certificate. When the server presents a
certificate that is exactly equal to this one and when the
server is able to authenticate against the public key
contained in this certificate the connection will be
established.
This is the preferred option for self signed server
certificates.
No other ways to verify the certificate will be tried and
the certificate will not be checked for validity.
clientcert
Name of a certificate in
PKCS#12 format that will be used to authenticate with the
server. The name of the file may be given as absolute path
or as file name only. In the latter case the directories
~/.davfs2/certs/private and
/etc/davfs2/certs/private will be searched.
Warning: If the client certificate is issued by an
intermediary CA and not by a top level CA then the
TLS-specification requires the client to send the complete
chain of certificates (without the top level
CA-certificate). davfs2 only sends the client certificate.
To work around this bug the server must store and trust the
complete chain of CA-certificates down to the one CA that
isssued the client certificate.
secrets
Name of a file that holds the
credentials for servers and the proxy, and passwords to
decrypt the client certificate. The name must be an absolute
path. The file must be read and writable by the owner only
(mode 600).
Default: ~/.davfs2/secrets
Only allowed in the user configuration file. The system
wide secrets file is always /etc/davfs2/secrets.
ask_auth
Ask the user interactively for
credentials and passwords if not found in the secretsfile.
Ask the user if a servercert cannot be verified. 0 = no, 1 =
yes.
Default: 1
use_locks
Whether to lock files on the
server when they are opened for writing. 0 = no, 1 = yes.
Default: 1
lock_owner
A string send to the server to
identify the owner of a lock. If a WebDAV resource is used
at the same time by different clients using the same
credentials, different values for lock_owner should be
chosen.
Default: the username from the credentials
lock_timeout
How long in seconds locks
should be valid, before the server removes them. The server
may ignore this and set its own timeout value.
Default: 1800
lock_refresh
That many seconds before the
lock times out, mount.davfs will try to refresh the
lock. The value should be substantially greater than
delay_upload.
Default: 60
use_expect100
To avoid uploading big files
that will be refused by the server, mount.davfs uses
the header expect: 100-continue to get the o.k. from
the server before uploading. Not all servers understand
this. 0 = no, 1 = yes.
Default: 0
if_match_bug
Some servers do not handle
If-Match and If-None-Match-headers correctly. This otion
tells mount.davfs to use HEAD instead of thes
headers. 0 = no, 1 = yes.
Default: 0
drop_weak_etags
Popular servers send a weak
etag whenever they are not able to calculate a strong one.
This weak etag will never be valid, but after one second it
is silently turned into a strong, valid etag. With this flag
set to 1, mount.davfs will never use this weak etags.
If the flag is 0, the weakness indicator will be removed and
the etag is assumed to be strong. There is some danger of
the Lost-Update-Problem with this. But it is minimized when
using locks.
You should turn this on, when you can’t use locks and
there is the danger of concurrent access to the same
resource. In this case the etag is not used at all and the
resource cannot be cached.
0 = no, 1 = yes.
Default: 0
n_cookies
Some servers will only work
when they are allowed to set a cookie and this cookie is
returned in subsequent requests. This option sets the number
of cookies you are willing to accept and include in
subsequent requests. davfs2 will only care for the name and
the value of the cookie and ignore all of the possible
attributes.
Default: 0
precheck
If option if_match_bug
is set: use HEAD-requests to check for existence or
modification of a file to avoid unintended overwriting what
somebody else changed. Has no effect if option
if_match_bug is 0. You should only set it 0, if there
is no concurrent access to the server. 0 = no, 1 = yes.
Default: 1
ignore_dav_header
Some servers send wrong
information about their capabilities in the DAV-header. In
this case the header should be ignored.
Default: 0
use_compression
Use gzip-compression for
downloading files, if supported by the server. Uploads will
still be uncompressed.
Default: 0
min_propset
Some servers are reported to
significantly slow down when the Etag and Last-Modified
properties are requested. This option will reduce the set of
WebDAV-properties requested from the server to the minimal
set. Don’t use it if your file system is used for
reading and writing. Without Etag or Last-Modified davfs2
will not be able to check for changes on the server which
may result in unnecessary downloads and lost updates. This
option will also effectively disable caching of files
because files in the cache can’t be reused.
Default: 0
follow_redirect
If the server redirects a
GET-request to a different resource (maybe on a different
server) then follow this redirection.
Currently there are some restrictions: all redirects are
treated as temporary redirects; if the new server requires
authentication then the same credentials are use as for the
original server; if the connection is over TLS the server
certificate will be checked against the trusted CAs known by
the system; user configured server certificates and client
certificates are not used for the new server.
Default: 0
sharepoint_href_bug
SharePoint does not properly
encode UTF8-characters within the href-element. Because of
this some files are invisible because the href-element
violates the rules. Neon 0.31 and newer has a workaround for
this SharePoint bug. This option will activate this
workaround.
Default: 0
server_charset
When extracting file names from
the path component of the URL, mount.davfs will
assume they are encoded using this character set and
translate file names to the local character set. This is
not about encoding of file contents and not
about HTTP escaping rules.
There is no means in HTTP to know the character encoding of
the path component. There may be even different encodings
within the same path, as the encoding of file names is often
defined by the clients that created them. Nowadays it is
best to use only UTF-8 encoding and to do no conversion. If
you are not sure that all clients understand UTF-8, restrict
file names to pure us-ascii. Never use characters in file
names, that may have a special function on some operating
systems (like /, : and \).
Default: no character set conversion
connect_timeout
When creating a TCP connection
to the server mount.davfs will wait that many seconds
for an answer before assuming an error. If a value of
’0’ is used then no explicit timeout handling is
set and the connect call will only timeout as dictated by
the TCP stack.
This parameter only takes effect if the version of neon in
use (neon version > 0.26) and the OS support non-blocking
I/O.
Default: 10
read_timeout
How long in seconds
mount.davfs will wait for an answer from the server
before assuming an error.
Default: 30
retry |
When mount.davfs can not reach the server it will try again after retry seconds. For subsequent retries the interval will be increased up to max_retry seconds. |
Default: 30
max_retry
Maximum value of the retry
interval.
Default: 300
max_upload_attempts
When uploading a changed file
fails temporarily mount.davfs will retry with
increasing intervals, but not more often than this.
With a bad connection this will cause additional traffic. To
reduce traffic caused by unsuccessful attempts option
use_expect100 can be set. But please test it. Most
proxies and some servers don’t support this header.
Default: 15
add_header
Your server might expect
special headers to do what you want. Different from other
options, this one takes two values: the name of the header
and its value. Some ASP-backends to IIS seem to require the
Microsoft specific header "Translate: F". You can
add it like this:
add_header Translate F
mount.davfs will add header "Translate: F" on
all requests.
This option is cumulative. You can enter more than one
add_header option and all of them will be added. Also
add_header options from /etc/davfs2/davfs2.conf and
~/.davfs2/davfs2.conf are merged.
Cache Related Options
backup_dir
Each mounted davfs2 file system
has a directory to store backups of files that could not be
stored back to the server. This sets the name of this
directory. You should regularly check this directory.
Default: lost+found
cache_dir
The directory where
mount.davfs will store cached files. For every mount
point a subdirectory will be created.
In the systemwide configuration file this will set the
system wide cache, used by root. In a users configuration
file it will set the cache used by this user.
Defaults: /var/cache/davfs2 and ~/.davfs2/cache
cache_size
The amount of disk space in
MiByte that may be used. mount.davfs will always take
enough space to cache open files, ignoring this value if
necessary.
Default: 50
table_size
mount.davfs maintains a
hash table with an entry for each known file or directory.
This gives the number of entries in this table. For large
file systems (more than some hundreds of files) increasing
this number may speed up file operations. The value should
be a power of 2.
Default: 1024
dir_refresh
After mount.davfs has
got information about files in a directory it considers it
valid for this time in seconds. Note: This does not affect
opening of files and reading a directory by an application.
Default: 60
file_refresh
When a file or directory is
opened by an application, mount.davfs will first
check the server for a newer version. But some applications
do open calls on the same file in short sequence. To avoid
unnecessary traffic mount.davfs will wait that many
seconds before it send a new request for the same
information.
Default: 1
delay_upload
When a file that has been
changed is closed, mount.davfs will wait that many
seconds before it will upload it to the server. This will
avoid uploading of temporary files that will be removed
immediately after closing. If you need the files to appear
on the server immediately after closing, set this option to
0.
Default: 10
gui_optimize
When a file is opened,
mount.davfs will have to check the server whether
there is a newer version. Graphical User Interfaces tend to
open just any file, slowing down things dramatically for
large directories. With this option mount.davfs will
try to get this information from all files in a directory
with one PROPFIND request. 0 = no, 1 = yes.
Default: 0
minimize_mem
davfs2 holds information about
files and directories in the working memory. It will stay
there as long as the file system is mounted and the file is
not deleted. By this memory usage by davfs2 will grow over
time and may slow down davfs2. With this option set to 1
davfs2 will regularly clean the memory from information that
has not be used for some time. 0 = no, 1 = yes.
Warning: Most file attributes are only maintained
locally because there is no corresponding WebDAV property.
So if users change attributes (owner, group, access bits)
locally this changes will be lost and attribute values will
be reset to the default values.
Default: 0
Debugging Options
debug |
Send debug messages to the syslog daemon. The value tells what kind of information shall be logged. The messages are send with facility LOG_DAEMON and priority LOG_DEBUG. It depends from the configuration of the syslog daemon where the messages will go (propably /var/log/messages, /var/log/syslog or /var/log/daemon.log). Whether HTTP related debug messages are available depends on your neon library. |
Unlike other options, this
option is cumulative. If there are several debug entries
with different values, all of them will be applied. Also
debug options from /etc/davfs2/davfs2.conf and
~/.davfs2/davfs2.conf are merged.
Note: Debug messages let the log-files grow quickly.
Never use this option in normal operation of mount.davfs.
Default: no debugging messages
Recognized values:
config |
Command line and configuration options. | ||
kernel |
Upcalls from the kernel file system. | ||
cache |
Cache operations like adding and removing nodes. | ||
http |
HTTP headers. | ||
xml |
Parsing of the XML-body of WebDAV-requests. |
httpauth
Negotiation of authentication.
locks |
Information about locks. |
|||
ssl |
TLS/SSL related stuff like certificates. |
httpbody
Complete body of HTTP-responses.
secrets
Also print confidential information, which is usually omitted or obscured.
most |
Includes config, kernel, cache and http. |
AUTHORS
This man page was written by by Werner Baumann <werner.baumann [AT] onlinehome.de>.
DAVFS2 HOME
http://savannah.nongnu.org/projects/davfs2
SEE ALSO
mount.davfs(8), umount.davfs(8), mount(8), umount(8), fstab(5)