1DRPMSYNC(8)                 System Manager's Manual                DRPMSYNC(8)
2
3
4
5drpmsync - sync a file tree with deltarpms
6
7

SYNOPSIS

9       drpmsync [-c config] [source] dir
10       drpmsync [-s|-S] serverconfig
11       cgi-bin/drpmsync
12
13

DESCRIPTION

15       Drpmsync keeps a local file system tree in sync with a remote one.  Its
16       intended use is to work with rpm trees;  the  deltarpm  technology  can
17       only  save bandwidth if rpms get transmitted. Please use the rsync pro‐
18       gram for normal file trees.
19
20       Drpmsync can run in two modes: as a client it  connects  to  a  server,
21       receives  a  file  list  and brings the tree up to date, as a server it
22       answers incoming requests and transmits files and rpms.
23
24

CLIENT MODE

26       In this mode drpmsync updates the tree in dir.  It opens the configura‐
27       tion  file dir/drpmsync/config to get information about which server to
28       use and other settings.  You can specify a different configuration file
29       with the -c option.  The following settings are understood (the default
30       for the boolean settings is false):
31
32       source: server1 server2...
33
34       This is a list of servers to connect to. Drpmsync advances through this
35       list  until  a working server is found. If a source is specified on the
36       command line it is used instead of the one from the configuration.  The
37       syntax for the server entries is "host[:port]/tree".
38
39       log: logfile
40
41       Specifies  the  name  of  a  logfile. If the name does not start with a
42       slash, dir/drpmsync/ is prepended to it.
43
44       generate_deltas: true|false
45
46       Controls whether drpmsync generates a delta if it receives a  new  ver‐
47       sion of a rpm and the server doesn't provide a delta. This is only use‐
48       ful if the local tree is also exported to other  clients  via  a  local
49       drpmsync server.
50
51       generate_delta_compression: comp
52
53       This  parameter  is forwarded to the makedeltarpm program when creating
54       deltas. An example would be gzip,gzip.
55
56       keep_deltas: true|false
57
58       Tell drpmsync to  save  received  or  freshly  created  deltas  to  the
59       dir/drpmsync/delta  directory. Automatically true if generate_deltas or
60       keep_uncombined is set to true.
61
62       keep_uncombined: true|false
63
64       This tells drpmsync  to  request  uncombined  deltas  from  the  server
65       instead  of  a  precombined  single  delta. This makes sense if you re-
66       export the tree and want  to  maximize  the  number  of  versions  your
67       clients can update from.
68
69       always_get_rpm: true|false
70
71       Configures  whether drpmsync should request that the full rpm is always
72       sent along with the delta. Only makes sense if you have a fast  network
73       connection so that applydeltarpm takes longer than transmitting the ful
74       rpm.
75
76       deltarpmpath: path
77
78       Sets the directory where drpmsync searches for the  deltarpm  programs.
79       The default is to search the $PATH variable.
80
81

SERVER MODE

83       Drpmsync  can wither work as CGI script or as a standalone server.  CGI
84       script mode is automatically selected if the REQUEST_METHOD environment
85       variable  is  set.  In  this  mode drpmsync expects the DRPMSYNC_CONFIG
86       environment variable to contain the path to a server config file.   For
87       apache you can set this with the SetEnv directive.
88
89       Standalone  mode is selected with the -s or -S option. In this mode the
90       server configuration must be specified as an argument to  the  drpmsync
91       program. The -s option makes the drpmsync program background itself and
92       exit right away, while -S keeps the server in the foreground.
93
94       The server configuration can contain the following settings:
95
96       allow: pattern1 pattern2...
97       deny: pattern1 pattern2...
98
99       This provides the access control for the server.  pattern can either be
100       a simple glob pattern (only * is supported) or it can be a full regular
101       expression if it is written as /RE/.  The regular expression  is  auto‐
102       matically  anchored  at the start and the end. Examples are 10.10.*  or
103       /10\.10\..*/ If either the numerical ip address or the domain  name  of
104       the  client  matches  any  entry of the deny list, access is forbidden.
105       Otherwise the allow list is searched for a match.  If  none  is  found,
106       access  is also denied. The default setting for both lists is empty, so
107       you have to provide an allow list to allow access for the clients.
108
109       log: logfile
110
111       Specifies the path of a logfile.
112
113       no_combine: true|false
114
115       If this setting is true the server does not  combine  deltarpms.   This
116       increases  to  amount of data that has to be transfered but reduces the
117       processor load on the server.
118
119       tree: external_path internal_path
120
121       This statements exports  the  tree  located  at  internal_path  to  the
122       clients  as  directory  external_path.   All  of the above settings are
123       saved as settings of this particular tree, so different trees  can  use
124       different configurations. This also means that the configuration direc‐
125       tives of a tree must be above the tree statement.
126
127
128       The following settings are global and only needed for standalone mode:
129
130       serverlog: logfile
131
132       Specifies the path of a logfile used for logging server events.
133
134       servername: hostname[:port]
135
136       The name of the server. If  hostname  is  empty,  the  fully  qualified
137       domain name is used instead. The port defaults to port 80.
138
139       serveraddr: addr
140
141       This address is used for binding the server's socket. If not specified,
142       connections can come from any interface.
143
144       serveruser: user
145       servergroup: group
146
147       Configures the user and group the servers swicthes to after binding the
148       socket to the desired port. Examples are nobody or wwwrun.
149
150       maxclients: num
151
152       This  settings  limits  the maximum number of concurrent connections to
153       num.  The default value is 10 connections.
154
155       deltarpmpath: path
156
157       Sets the directory where drpmsync searches for the  deltarpm  programs.
158       The default is to search the $PATH variable.
159
160

FILES

162       dir/drpmsync/deltas
163              directory used to store the deltas
164       dir/drpmsync/lock
165              lock used to serialize syncrpm calls
166       dir/drpmsync/wip
167              temporary storing space for the transmitted objects
168       dir/drpmsync/cache
169              md5sum cache to speed up the calculation of the tree state
170       dir/drpmsync/timstamp
171              contains  the  time  of the last finished sync and the last time
172              the remote tree state was requested.
173

SEE ALSO

175       makedeltarpm(8), combinedeltarpm(8), applydeltarpm(8),
176

AUTHOR

178       Michael Schroeder <mls@suse.de>
179
180
181
182                                   Jun 2005                        DRPMSYNC(8)
Impressum