Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package dolly for openSUSE:Factory checked in at 2021-11-18 10:34:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dolly (Old) and /work/SRC/openSUSE:Factory/.dolly.new.1895 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dolly" Thu Nov 18 10:34:00 2021 rev:3 rq:931987 version:0.63.6 Changes: -------- --- /work/SRC/openSUSE:Factory/dolly/dolly.changes 2021-06-07 22:44:48.912618339 +0200 +++ /work/SRC/openSUSE:Factory/.dolly.new.1895/dolly.changes 2021-11-18 10:34:01.547918133 +0100 @@ -1,0 +2,24 @@ +Wed Nov 17 13:21:52 UTC 2021 - Antoine Ginies <[email protected]> + +- add dolly firewall config (JSC#SLE-22730) + +------------------------------------------------------------------- +Tue Nov 9 11:03:13 UTC 2021 - Dominique Leuenberger <[email protected]> + +- Minor grammar fix in description. + +------------------------------------------------------------------- +Wed Oct 13 13:27:56 UTC 2021 - Antoine Ginies <[email protected]> + +- fix hostname resolution is not done in case of usage + of an external configuration file (bsc#1191613) +- fix -Werror=format-security +- update to version 0.63.6 + +------------------------------------------------------------------- +Thu Oct 7 08:36:31 UTC 2021 - Antoine Ginies <[email protected]> + +- update to version 0.63.5 (improve help usage information) (JSC#SLE-22050) +- tarball is now bzip2 compressed + +------------------------------------------------------------------- Old: ---- dolly-0.63.4.tar.gz New: ---- dolly-0.63.6.tar.bz2 dolly_firewall.xml ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dolly.spec ++++++ --- /var/tmp/diff_new_pack.ze2ogV/_old 2021-11-18 10:34:01.919918479 +0100 +++ /var/tmp/diff_new_pack.ze2ogV/_new 2021-11-18 10:34:01.923918483 +0100 @@ -15,19 +15,20 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # - -%define vers 0.63.4 +%define _fwdefdir %{_prefix}/lib/firewalld/services +%define vers 0.63.6 Name: dolly -Summary: Tool for cloning the installation of one machine to other machines +Summary: Tool for cloning data of one machine to other machines License: GPL-2.0-only Group: Productivity/Networking/Other Version: %vers Release: 0 URL: http://www.cs.inf.ethz.ch/stricker/CoPs/patagonia/dolly.html -Source0: https://github.com/openSUSE/dolly/archive/%{version}.tar.gz#/dolly-%{version}.tar.gz +Source0: https://github.com/openSUSE/dolly/archive/%{version}.tar.gz#/dolly-%{version}.tar.bz2 Source1: dolly.conf Source2: dolly.md +Source3: dolly_firewall.xml #SLE15* does not contain pandoc packages %if 0%{?is_opensuse} @@ -38,17 +39,14 @@ %endif %description -Dolly is used to clone the installation of one machine to -(possibly many) other machines. It can distribute image files -(even gnu-zipped), partitions or whole hard disk drives to -other partitions or hard disk drives. As it forms a "virtual TCP -ring" to distribute data, it works best with fast switched -networks (a 2 GB Windows NT partition clone -to 15 machines over Gigabit Ethernet was originally measured -to be less than 4 minutes). +Dolly is used to clone data of one machine to (possibly many) +other machines. It can distribute image files (even gnu-zipped), +partitions or whole hard disk drives to other partitions or +hard disk drives. As it forms a "virtual TCP ring" to distribute +data, it works best with fast switched networks. -As dolly clones whole partitions block-wise, it works for most -filesystems, including the types for Linux, Windows NT, Oberon, +As dolly can clone whole partitions block-wise, it works for +most filesystems, including the types for Linux, Windows, Oberon, Solaris. %prep @@ -68,6 +66,10 @@ %install install -D -m 755 $RPM_BUILD_DIR/%{name}-%{version}/dolly %{buildroot}%{_sbindir}/dolly install -D -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}.conf +# install firewall conf +mkdir -p %{buildroot}/%{_fwdefdir} +install -m 644 %{S:3} %{buildroot}/%{_fwdefdir}/dolly.xml + %if 0%{?is_opensuse} %ifnarch i586 install -D -m 644 dolly.1.gz %{buildroot}%{_mandir}/man1/dolly.1.gz @@ -76,8 +78,12 @@ %files %doc README.md dolly.example +%defattr(-,root,root,-) +%dir %{_prefix}/lib/firewalld +%dir %{_fwdefdir} %attr(755,root,root) %{_sbindir}/dolly %attr(644,root,root) %config(noreplace) %{_sysconfdir}/%{name}.conf +%attr(644,root,root) %config(noreplace) %{_fwdefdir}/dolly.xml %if 0%{?is_opensuse} %ifnarch i586 %{_mandir}/man1/dolly.1.gz ++++++ dolly-0.63.4.tar.gz -> dolly-0.63.6.tar.bz2 ++++++ ++++ 3197 lines of diff (skipped) ++++++ dolly.md ++++++ --- /var/tmp/diff_new_pack.ze2ogV/_old 2021-11-18 10:34:02.015918569 +0100 +++ /var/tmp/diff_new_pack.ze2ogV/_new 2021-11-18 10:34:02.015918569 +0100 @@ -1,17 +1,16 @@ -%DOLLY(1) Version 0.59 | Dolly file transfer - DOLLY ===== -A program to clone disks / partitions +A program to clone disks / partitions / data. +Take same amount of time to copy data to one node or to X nodes. SYNOPSIS ======== -|dolly | \[**-f** config\] - +dolly \[**-f** config\] -24 March 2005 +dolly \[**-I** infile\] \[**-O** outfile\|-\] \[**-H** hostlist\] +dolly **-v** **-r** 40 **-S** SERVERIP **-H** IPNODE1,IPNODE2,IPNODE3 **-I** /dev/vdd **-O** /dev/vdd DESCRIPTION =========== @@ -20,26 +19,124 @@ many) other machines. It can distribute image-files (even gnu-zipped), partitions or whole hard disk drives to other partitions or hard disk drives. As it forms a "virtual TCP ring" to distribute data, it works -best with fast switched networks (we were able to clone a 2 GB Windows -NT partition to 15 machines in our cluster over Gigabit Ethernet in -less than 4 minutes). - -As dolly clones whole partitions block-wise it works for most -filesystems. We used it to clone partitions of the following type: -Linux, Windows NT, Oberon, Solaris (most of our machines have multi -boot setups). We have a small (additional) Linux installation on all -of our machines or use a small one-floppy-disk-linux (e.g. muLinux) to -do the cloning. On newer machines we use PXE to boot a small system in -a RAM disk. From that system we then clone the hard disks in the -machines. +best with fast switched networks. + +As dolly clones whole partitions block-wise. + +OPTIONS +======= +If used without a configuration file following three commanline options must be +set: + +**-I** FILE : FILE is used as input file. + +**-O** FILE\|- : FILE will be used as output file, if '-' is used as FILE, the +output will printed to stdout. + +**-H** HOSTLIST: A comma seperated hostlist, where then the first host of the list +is used as firstclient and the last host as lastclient, like in the +configuration file. + +Following other options are: + + **-h** + : Prints a short help and exits. + + **-V** + : Prints the version number as well as the date of that version and exits. + + **-v** + : This switches to verbose mode in which dolly prints out a little + bit more information. This option is recommended if you want to + know what's going on during cloning and it might be helpful during + debugging. + + **-s** + : This option specifies the server machine and should only be used + on the master. Dolly will warn you if the config file specifies + another master than the machine on which this option is set. + This option must be secified before the "-f" option! + + **-S** + : Same as "-s", but dolly will not warn you if the server's hostname + and the name specified in the config file do not match. + + **-R** + : resolve the hostnames to ipv4 addresses + + **-6** + : resolve the hostnames to ipv6 addresses + + **-q** + : Usually dolly will print a warning when the select() system call + is interrupted by a signal. This option suppresses these warnings. + + **-c** + : With this option it is possible to specify the uncompressed size + of a compressed file. It's only needed for performance statistics + at the end of a cloning process and not important if you are not + interested in the statistics. + + **-d** + : The "Dummy" option disables all disk accesses. It can be used to + benchmark the throughput of your system (computers, network, + switches). This option must be specified before the "-f" option! + + **-t** <seconds> + : When in dummy mode, this option allows to specify how long the + testrun should approximately take. Since the dummy mode is mostly + used for benchmarking purposes and single runs might result in + different speeds (especially with many machines and bad switches + or with small TCP segment sizes), it's more convenient to specify + the run-lenght in seconds, as the benchmark-time becomes more + predictable. + + **-f** <config file> + : This option is used to select the config file for this cloning + process. This option makes only sense on the master machine and + the configuration file must exist on the master. + + **-o** <logfile> + : This option specifies the logfile. Dolly will write some + statistical information into the logfile. it is mostly + used when benchmarking switches. The format of the lines in the + logfile is as follows: + Trans. data Segsize Clients Time Dataflow Agg. dataflow + [MB] [Byte] [#] [s] [MB/s] [MB/s] + + **-a** <timeout> + : Sometimes it might be useful if Dolly would terminate instead of + waiting indefinitely in case something goes wrong. This option + lets you specify this timeout. If dolly could not transfer any + data after <timeout> seconds, then it will simply print an error + message and terminate. This feature might be especially useful for + scripted and automatic installations (such as "CloneSys"), where + you don't want to have dolly-processes hang around if a machine + hangs. + + **-n** + : Do not sync() before exit. Thus, dolly will exit sooner, but data + may not make it to disk if power fails soon after dolly exits. + + **-u** <size> + : Specify the size of buffers for TCP sockets. Should be a Multiple + of 4K. + + **-b** <size> + : Option to specify the TRANSFER_BLOCK_SIZE. Should be a multiple of + the size of buffers for TCP sockets. + + **-r** <n> + : Retry to connect to mode <n> times + Configuration file ------------------ -You need a configuration file for the cloning process. Its format is -strict, but easy. It contains the following entries (note that the -order of the entries is fix): -(The text after "Syntax:" explains the syntax of the entry, the lines +One can use either us the appropriate commandline options (-i,-o and -H) or a +configuration file for the cloning process is needed. Its format is strict, but +easy. It contains the following entries (note that the order of the entries is +fix): (The text after "Syntax:" explains the syntax of the entry, the lines following "EG:" are example lines) 1. The file/partition you want to clone, preceeded by the keywords @@ -185,7 +282,7 @@ EG: endconfig -Note on nodes' hostnames +Note on nodes hostnames ------------------------ On some machines (e.g. with very small maintenance installations), @@ -196,94 +293,6 @@ gethostbyname(). This feature was introduced in dolly version 0.58. -OPTIONS -============= - -Dolly has a few options which are explained here: - - -h - : Prints a short help and exits. - - -V - : Prints the version number as well as the date of that version and exits. - - -v - : This switches to verbose mode in which dolly prints out a little - bit more information. This option is recommended if you want to - know what's going on during cloning and it might be helpful during - debugging. - - -s - : This option specifies the server machine and should only be used - on the master. Dolly will warn you if the config file specifies - another master than the machine on which this option is set. - This option must be secified before the "-f" option! - - -S - : Same as "-s", but dolly will not warn you if the server's hostname - and the name specified in the config file do not match. - - -q - : Usually dolly will print a warning when the select() system call - is interrupted by a signal. This option suppresses these warnings. - - -c - : With this option it is possible to specify the uncompressed size - of a compressed file. It's only needed for performance statistics - at the end of a cloning process and not important if you are not - interested in the statistics. - - -d - : The "Dummy" option disables all disk accesses. It can be used to - benchmark the throughput of your system (computers, network, - switches). This option must be specified before the "-f" option! - - -t <seconds> - : When in dummy mode, this option allows to specify how long the - testrun should approximately take. Since the dummy mode is mostly - used for benchmarking purposes and single runs might result in - different speeds (especially with many machines and bad switches - or with small TCP segment sizes), it's more convenient to specify - the run-lenght in seconds, as the benchmark-time becomes more - predictable. - - -f <config file> - : This option is used to select the config file for this cloning - process. This option makes only sense on the master machine and - the configuration file must exist on the master. - - -o <logfile> - : This option specifies the logfile. Dolly will write some - statistical information into the logfile. it is mostly - used when benchmarking switches. The format of the lines in the - logfile is as follows: - Trans. data Segsize Clients Time Dataflow Agg. dataflow - [MB] [Byte] [#] [s] [MB/s] [MB/s] - - -a <timeout> - : Sometimes it might be useful if Dolly would terminate instead of - waiting indefinitely in case something goes wrong. This option - lets you specify this timeout. If dolly could not transfer any - data after <timeout> seconds, then it will simply print an error - message and terminate. This feature might be especially useful for - scripted and automatic installations (such as "CloneSys"), where - you don't want to have dolly-processes hang around if a machine - hangs. - - -n - : Do not sync() before exit. Thus, dolly will exit sooner, but data - may not make it to disk if power fails soon after dolly exits. - - -u <size> - : Specify the size of buffers for TCP sockets. Should be a Multiple - of 4K. - - -b <size> - : option to specify the TRANSFER_BLOCK_SIZE. Should be a multiple of - the size of buffers for TCP sockets. - - - How it works ============ @@ -378,95 +387,8 @@ CHANGES ======= -version 0.2 ------------------- - -We applied some changes to Dolly since version 0.2. Most of them are -not very important. - -- Dolly as a benchmarking tool. - Dolly can now be used to benchmark your network. In the dummy mode, - Dolly will not access the hard disk, neither for reading nor for - writing. It just transfers data between your machines. This might be - useful for testing the throughput of your switch. The running time - for such a run can be specified with the "-t" option on the command - line. With the "-o" option you can specify a logfile where Dolly - will write some statistical information. - -- Using extra network interfaces. - It's now possible to use multiple network interfaces for the data - transfer. This is mostly useful if you have multiple network - interfaces with similar speeds, e.g. two fast ethernet networks (one - for administration/logins and the other for your applications - communication). For example: If your machines are connected with two - fast ethernet links, then you should be able to increase the - thourghput of the cloning process from 10 to 20 MB/s, therefore - cutting the cloning-time by half. - You need the "add" option in the config file to use this feature. - WARNING: This feature has only been tested with the linear network - topology (no fanout option or "fanout 1" option in the config file). - -- Different networking topologies. - We tried different topologies (binary trees, ternary trees, ...) to - get somre more results in a paper, but the initial multi-drop chain - (virtual TCP ring) is still the best. You will most likely not need - this feature. - - -version 0.57 ------------- - -Besides some bug-files and smaller improvements, it's now possible to -split an image in multiple files for archival and send the -multiple-file image to the clients. This allows to story arbitrary -long partitions on file systems with a file size limit. For details -and examples, see the section about the configuration file below -(parameters infile and outfile). - - -version 0.58 ------------- - -Thanks to David Mathog, dolly is now able to read or write data from -its standard input or to its standard output. That means that you can -e.g. pipe a tar stream through dolly. Whether that feature is useful -or not depends on your situation. By using tar (instead of cloning the -whole partition) your disks' reads and writes will be slower, but you -only transfer the data that is actually needed. This feature might be -most useful in situations where e.g. your disks/partitions are mostly -empty or have different sizes/geometries. - -Please note that version 0.58 has not yet been thoroughly tested (I'm -no longer working with clusters). E.g. it is not yet clear what -happens when somebody tries to reach you with the "write", "talk" or -"wall" commands while dolly is running (which might potentially -interfere with with your stdin/stdout, see below). - -Note also, that since all of dolly's output is now written to stderr -(instead of stdout as before), some third-party scripts might no -longer work. - -To use the feature, you should specify /dev/stdin as your infile -and/or /dev/stdout as your outfile. - - -version 0.58C -------------- - -Again, thanks to David Mathog, dolly can now be run without explicit -sync() at the end of the cloning process (option "-n"). This can speed -up dolly's runtime considerably when cloning smaller files, but there -is no garantuee that the data actually made it to the disk if there is -e.g. a power loss right after dolly finished. - -version 0.59 ------------- - -Some output improvments and add some options to deal with socket and -buffer size to experiment some parameter on the fly. Done some cleanup -in the C code to get less warning in building with recent GCC7. - +See CHANGELOG file EXAMPLE ======= @@ -475,28 +397,31 @@ node0..node15. We want to clone the partition sda5 from node0 to all other nodes. The configuration file (let's name it dollytab.cfg) should then look as follows: - infile /dev/sda5 - outfile /dev/sda5 - server node0 - firstclient node1 - lastclient node15 - clients 15 - node1 - node2 - node3 - node4 - node5 - node6 - node7 - node8 - node9 - node10 - node11 - node12 - node13 - node14 - node15 - endconfig +``` +infile /dev/sda5 +outfile /dev/sda5 +server node0 +firstclient node1 +lastclient node15 +clients 15 +node1 +node2 +node3 +node4 +node5 +node6 +node7 +node8 +node9 +node10 +node11 +node12 +node13 +node14 +node15 +endconfig +``` + Next, we start Dolly on all the clients. No options are required for the clients (but you might want to add the "-v" option for verbose progress reports). Finally, Dolly is started on the server as follows: @@ -516,7 +441,8 @@ http://www.cs.inf.ethz.ch/~rauch/ Felix Rauch <[email protected]> -AUTHORS -======= -Antoine Aginies <[email protected]> +AUTHORS / CONTRIBUTORS +======================= +Felix Rauch <[email protected]> +Antoine Ginies <[email protected]> Christian Goll <[email protected]> ++++++ dolly_firewall.xml ++++++ <?xml version="1.0" encoding="utf-8"?> <service> <short>Dolly</short> <description>Enables TCP ports for Dolly</description> <port protocol="tcp" port="9997-9998"/> </service>
