1GENBACKUPDATA(1) General Commands Manual GENBACKUPDATA(1)
2
3
4
6 genbackupdata - generate backup test data
7
9 genbackupdata [--chunk-size=SIZE] [--config=FILE] [--dump-config]
10 [--dump-setting-names] [--generate-manpage=TEMPLATE] [-h] [--help]
11 [--help-all] [--list-config-files] [--version] [--no-default-configs]
12 [-cSIZE] [--create=SIZE] [--depth=DEPTH] [--dump-memory-profile=METHOD]
13 [--file-size=SIZE] [--log=FILE] [--log-keep=N] [--log-level=LEVEL]
14 [--log-max=SIZE] [--log-mode=MODE] [--max-files=MAX-FILES]
15 [--memory-dump-interval=SECONDS] [--output=FILE] [--quiet] [--no-quiet]
16 [--seed=SEED] [FILE]...
17
19 genbackupdata generates test data sets for performance testing of back‐
20 up software. It creates a directory tree filled with files of differ‐
21 ent sizes. The total size and the distribution of sizes between small
22 and big are configurable. The program can also modify an existing di‐
23 rectory tree by creating new files, and deleting, renaming, or modify‐
24 ing existing files. This can be used to generate test data for succes‐
25 sive generations of backups.
26
27 The program is deterministic: with a given set of parameters (and a
28 given pre-existing directory tree), it always creates the same output.
29 This way, it is possible to reproduce backup tests exactly, without
30 having to distribute the potentially very large test sets.
31
32 The data set consists of plain files and directories. Files are either
33 small text files or big binary files. Text files contain the "lorem
34 ipsum" stanza, binary files contain randomly generated byte streams.
35 The percentage of file data that is small text or big binary files can
36 be set, as can the sizes of the respective file types.
37
38 Files and directories are named "fileXXXX" or "dirXXXX", where "XXXX"
39 is a successive integer, separate successions for files and directo‐
40 ries. There is an upper limit to how many files a directory may con‐
41 tain. After the file limit is reached, a new sub-directory is created.
42 The first set of files go into the root directory of the test set.
43
44 You have to give one of the options --create, --delete, --rename, or
45 --modify for the program to do anything. You can, however, give more
46 than one of them, if DIR already exists. (Giving the same option more
47 than once means that only the last instance is counted.) (DIR) is cre‐
48 ated if it doesn't exist already.
49
51 --chunk-size=SIZE
52 generate data in chunks of this size
53
54 -c, --create=SIZE
55 how much data to create (default: 0)
56
57 --depth=DEPTH
58 depth of directory tree
59
60 --file-size=SIZE
61 size of one file
62
63 --generate-manpage=TEMPLATE
64 fill in manual page TEMPLATE
65
66 -h, --help
67 show this help message and exit
68
69 --max-files=MAX-FILES
70 max files/dirs per dir
71
72 --output=FILE
73 write output to FILE, instead of standard output
74
75 --quiet
76 do not report progress
77
78 --no-quiet
79 opposite of --quiet
80
81 --seed=SEED
82 seed for random number generator
83
84 --version
85 show program's version number and exit
86
87 Configuration files and settings
88 --config=FILE
89 add FILE to config files
90
91 --dump-config
92 write out the entire current configuration
93
94 --dump-setting-names
95 write out all names of settings and quit
96
97 --help-all
98 show all options
99
100 --list-config-files
101 list all possible config files
102
103 --no-default-configs
104 clear list of configuration files to read
105
106 Logging
107 --log=FILE
108 write log entries to FILE (default is to not write log files at
109 all); use "syslog" to log to system log, "stderr" to log to the
110 standard error output, or "none" to disable logging
111
112 --log-keep=N
113 keep last N logs (10)
114
115 --log-level=LEVEL
116 log at LEVEL, one of debug, info, warning, error, critical, fa‐
117 tal (default: debug)
118
119 --log-max=SIZE
120 rotate logs larger than SIZE, zero for never (default: 0)
121
122 --log-mode=MODE
123 set permissions of new log files to MODE (octal; default 0600)
124
125 Peformance
126 --dump-memory-profile=METHOD
127 make memory profiling dumps using METHOD, which is one of: none,
128 simple, or meliae (default: simple)
129
130 --memory-dump-interval=SECONDS
131 make memory profiling dumps at least SECONDS apart
132
134 Create data for the first generation of a backup:
135
136 genbackupdata --create=10G testdir
137
138 Modify an existing set of backup data to create a new generation:
139
140 genbackupdata -c 5% -d 2% -m 5% -r 0.5% testdir
141
142 The above command can be run for each new generation.
143
144
145
146 GENBACKUPDATA(1)