Added manpage for dolcon.
[doldaconnect.git] / doc / man / doldacond.8
CommitLineData
9b522300 1.\"
302a2600 2.\" Copyright (C) 2007 Fredrik Tolf <fredrik@dolda2000.com>
9b522300 3.\"
4.\" This is free documentation; you can redistribute it and/or
5.\" modify it under the terms of the GNU General Public License as
6.\" published by the Free Software Foundation; either version 2 of
7.\" the License, or (at your option) any later version.
8.\"
9.\" The GNU General Public License's references to "object code"
10.\" and "executables" are to be interpreted as the output of any
11.\" document formatting or typesetting system, including
12.\" intermediate and printed output.
13.\"
14.\" This manual is distributed in the hope that it will be useful,
15.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
16.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17.\" GNU General Public License for more details.
18.\"
19.\" You should have received a copy of the GNU General Public
20.\" License along with this manual; if not, write to the Free
21.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
22.\" USA.
23.\"
4e38a36e 24.TH DOLDACOND 8 "2007-09-30" "" "Dolda Connect manual"
9b522300 25.SH NAME
26doldacond \- Dolda Connect daemon
27.SH SYNOPSIS
28.B doldacond
29[ \fB-hns\fP ] [ \fB-C\fP \fIconfigfile\fP ]
4d06a8a5 30[ \fB-p\fP \fIpidfile\fP ] [ \fB-f\fP \fIfacility\fP ]
9b522300 31.SH DESCRIPTION
32The \fBdoldacond\fP program is the primary part of the collection of
33software that makes up Dolda Connect. It runs in the background and
4e38a36e
FT
34carries out all the actual work of filesharing. Other programs, such
35as \fBdolcon\fP(1), connect to \fBdoldacond\fP over a socket in order
36to command it and/or display its status to a user.
9b522300 37.P
38The configuration of \fBdoldacond\fP is controlled via the
39\fBdoldacond.conf\fP(5) file, which is described in detail in its own
40manual page.
41.SH OPTIONS
42.TP
43.B -h
44Displays a brief usage message on stdout and exits.
45.TP
46.B -s
47Normally, \fBdoldacond\fP will print log messages to stderr before it
48has daemonized, and switch to syslog output after daemonization. With
49the -s option, however, it will log to syslog directly, and never to
50stderr. It is probably only useful when starting \fBdoldacond\fP from
51an init script.
52.TP
53.B -n
54Causes \fBdoldacond\fP to not daemonize. As a side-effect of avoiding
55daemonization, log messages will be printed to stderr rather than to
56syslog even after the point where the daemon would normally have
57daemonized (unless the -s option is also specified).
58.TP
59.BI -C " configfile"
60Use \fIconfigfile\fP instead of the normal search list for
61configuration files. See \fBdoldacond.conf\fP(5) for the normal
62behavior.
63.TP
64.BI -p " pidfile"
65Write the daemon's PID to \fIpidfile\fP after daemonization. Works
66even if the -n option has been specified.
67.TP
68.BI -f " facility"
69Use \fIfacility\fP when logging to syslog. The facility can be any of
70\fBauth\fP, \fBauthpriv\fP, \fBcron\fP, \fBdaemon\fP, \fBftp\fP,
71\fBkern\fP, \fBlpr\fP, \fBmail\fP, \fBnews\fP, \fBsyslog\fP,
72\fBuser\fP, \fBuucp\fP or \fBlocal0\fP...\fB7\fP, although only a
73subset probably make sense for \fBdoldacond\fP. The default is
74\fBdaemon\fP. Also see the BUGS section.
75.SH FILES
76The configuration file will normally be called
77/usr/local/etc/doldacond.conf, /etc/doldacond.conf or
78~/.doldacond.conf, but a multitude of others are possible. See the
79\fBdoldacond.conf\fP(5) manual page for details.
80.SH SIGNALS
81.TP
82.B SIGHUP
83Causes the daemon to reread its configuration file and update its
84operation accordingly, and to rescan all shared directories. SIGHUP
85can safely be sent at any time \- no connected clients or hubs will be
86affected.
87.TP
88.B SIGINT, SIGTERM
89Shut down the daemon cleanly, unlinking temporary files and sockets.
90.TP
91.B SIGUSR1, SIGUSR2
92Used for debugging. USR1 will cause the daemon to fork and dump a core
93file, and USR2 will dump some memory usage information to /tmp.
94.SH SECURITY
95Dolda Connect, including \fBdoldacond\fP and its assorted clients, are
96capable of a number of different authentication methods. The default
97configuration will cause the daemon to only listen for client
98connections on a Unix socket, over which authentication will be made
0bb98f50 99using Unix credentials passing.
100.P
101When running clients over a network, authentication can be done using
102either PAM, Kerberos 5 (requires the MIT libraries) or client trust
103(no authentication). Unix credentials passing and Kerberos
104authentication should be perfectly secure. PAM authentication should
105be secure in itself, but the client protocol is not encrypted, and
106therefore causes passwords to be sent over the network in the
107clear. Authentication-less operation is, obviously, not secure at all
108and is disabled by default. It may be useful on a trusted network,
109however.
9b522300 110.SH BUGS
111\fBdoldacond\fP has proved to be surprisingly stable. I have had it
112running for far longer than a month without any sign of instability or
113memory leaks, which is probably a lot longer than a program of this
114kind really needs to be able to stay running.
115.P
116That said, it is not without bugs. Here follows a list of the more
117prominent ones.
118.P
119Most importantly, \fBdoldacond\fP will fail miserably at sharing files
120from filesystems that do not have persistent i-numbers, since hashes
121are indexed by the i-number of the file. This is done so because
122indexing by i-numbers rather than file names allows the daemon to not
123rehash files that have merely been renamed. However, among the
124filesystems that do not have persistent i-numbers is the Linux
125implementation of FAT, which means that it is impossible to share
6bf74586 126files that are shared with Microsoft Windows. All the standard Unix
127filesystems, including at least ufs, ext2/3, reiserfs, xfs or any of
128them shared over nfs are known to be safe.
9b522300 129.P
130From time to time, the hash controller can get stuck, and stop
131processing more files. The obvious work-around is to restart
132\fBdoldacond\fP, at which point it will continue where it left off. If
133you feel adventurous and/or really need to not restart it, you can
134attach \fBgdb\fP(1) (or your debugger of choice) to the running
135\fBdoldacond\fP process and set the hashjob variable to -1, which will
136force \fBdoldacond\fP to resume hashing. Don't do that while a hash
137job is actually running, though.
9b522300 138.SH AUTHOR
139Fredrik Tolf <fredrik@dolda2000.com>
140.SH SEE ALSO
4e38a36e 141\fBdoldacond.conf\fP(5), \fBdolcon\fP(1)