forked from backuppc/backuppc
-
Notifications
You must be signed in to change notification settings - Fork 7
/
ChangeLog
2532 lines (1804 loc) · 102 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#========================================================================
#
# ChangeLog - change log for BackupPC.
#
# DESCRIPTION
# Revision history for BackupPC, detailing significant changes between
# versions, most recent first.
#
# AUTHOR
# Craig Barratt <[email protected]>
#
#========================================================================
#
# Version __VERSION__, released __RELEASEDATE__.
#
# See http://backuppc.sourceforge.net.
#
#========================================================================
#------------------------------------------------------------------------
# Version __VERSION__, __RELEASEDATE__
#------------------------------------------------------------------------
#------------------------------------------------------------------------
# Version 4.4.0, 20 Jun 2020
#------------------------------------------------------------------------
Merged pull requests #325, #326, #329, #330, #334, #336, #337, #338, #342,
#343, #344, #345, #347, #348, #349
* Filled/Full backups can now be marked as "keep", which excludes them
from any expiry/deletion. Also, a backup-specific comment can be added
to any backup to capture any important information about that backup
(eg, "pre-upgrade of xyz").
* Added metrics CGI, which adds Prometheus support and replaces RSS,
by @joola (#344, #347)
* Tar XferMethod now supports xattrs and acls; xattrs should be
compatible with rsync XferMethod, but acls are not
* Sort open directories to top when browsing backup tree
* Format code using perltidy, and included in pre-commit flow, by @joola
(#334, #337, #342, #343, #345). Thanks to @joola and @shancock9
(perltidy author) for significant effort and support, plus improvements
in perltidy, to make this happen.
* Added $Conf{PoolNightlyDigestCheckPercent}, which checks the md5
digest of this fraction of the pool files each night.
* $Conf{ClientShareName2Path} is saved in backups file and the share
to client path mapping is now displayed when you browse a backup so
you know the actual client backup path for each share, if different
from the share name
* configure.pl now checks the per-host config.pl in a V3 upgrade to
warn the user if $Conf{RsyncClientCmd} or $Conf{RsyncClientRestoreCmd}
are used for that host, so that the new settings $Conf{RsyncSshArgs}
and $Conf{RsyncClientPath} can be manually updated.
* Fixed host mutex handling for dhcp hosts; shifted initial mutex requests
to client programs
* Updated webui icon, logo and favicon, by @moisseev (#325,
#326, #329, #330)
* Added $Conf{RsyncRestoreArgsExtra} for host-specific restore
settings
* Language files now all use utf8 charsets
* Bumped required version of BackupPC::XS to 0.62 and rsync-bpc
to 3.0.9.15.
* Ping failure message only written to stdout only if verbose
* BackupPC_backupDelete removes partial v3 backup in HOST/new;
fixes #324 reported by @thalueng
* BackupPC_backupDelete adds -f option to over keep, if set
* BackupPC_nightly: change -f to -F when running BackupPC_refCountUpdate
during fsck
* Better formatting of eval cmd result in cmdSystemOrEvalLong()
* Remove zero count entries in per-backup and per-host poolCnt
files
* Add a fake version parameter to the CSS URL to overcome caching
* Fixed ALRM typo in BackupPC_dump, by @rhansen (#348)
* Fixed command name in error message in BackupPC_archive,
by @rhansen (#349)
* lib/BackupPC/Xfer/Rsync.pm skips adding --iconv option when
$Conf{ClientCharset} is utf8 or empty, to avoid a long-standing
rsync bug
* lib/BackupPC/Xfer/Rsync.pm provides a more informative warning
when the client rsync exits with an IO error, and also includes
the IO error in the xferErr count
* lib/BackupPC/Xfer/Smb.pm recognizes NT_STATUS_LOGON_FAILURE error
* Increase text length in config editor fields, by @moisseev (#336)
* Typo fix in config.pl, by @cure (#338)
* Minor documentation updates, removing old SourceForge links
#------------------------------------------------------------------------
# Version 4.3.2, 17 Feb 2020
#------------------------------------------------------------------------
Merged pull requests #278, #281, #289, #295, #297, #307, #308, #311,
#312, #313, #314.
* Added per-host read/write exclusivity to worker programs, so
command-line programs don't collide with backups or other
operations; reported by @hamster65 (issue #299)
* Added $Conf{RsyncIncrArgsExtra} (issue #284)
* Added $Conf{ClientShareName2Path}, which allows mapping of share
names/path to real paths on the client (eg, to backup a snapshot
that's in a different directory to the share name path)
* Fixed v3 digest calculation in bin/BackupPC_backupDuplicate and
bin/BackupPC_migrateV3toV4; reported by @palmtop (issue #291)
* Improved handling of BackupPC_nightly running for more than 24 hours:
drop next queued run, and provide better log messages; reported
by @guestisp (issue #303)
* Improved error checking on $Conf{BackupPCNightlyPeriod}, and update
$Info->{NightlyPhase} if it's larger than $Conf{BackupPCNightlyPeriod};
reported by @guestisp (issue #304)
* Fixed warnings in bin/BackupPC, submitted by @moisseev (#278)
* Avoid rrd updates using the same time stamp, submitted by @moisseev
(#311, issue #305)
* Removed unused counting of renamed files, submitted by @moisseev (#281)
* Make tar xfer output parsing compatible with FreeBSD tar, submitted
by @haarp (#289)
* Fix daemon stdin open to read mode, submitted by @moisseev (#308)
* Hosts config editor table layout CGI fix, submitted by @steven-de-wit
(#297)
* Fixes to French translation, submitted by @pjoubert- (#295)
* Fixes to Italian translation, submitted by @guestisp (#314)
* Updated comments for Apache 2.4 config in httpd/src/BackupPC.conf,
submitted by @NotAProfessionalDeveloper (#307)
* Documentation update for SCGI prerequisite, submitted by @guestisp (#312)
* Documentation update for nginx config, submitted by @guestisp (#313)
#------------------------------------------------------------------------
# Version 4.3.1, 14 Jul 2019
#------------------------------------------------------------------------
Merged pull request #240.
* Fixed CGI host summary columns for new Comment value; reported by
@karlis-irmejs (#245).
* Added support to BackupPC_tarCreate for PAX headers to allow large
metadata values to be correctly encoded; reported by @seblu (#254).
* Fixed regexp in BackupPC so that versions like rsync-bpc 3.1.2beta0
are matched. PR submitted by Adrien Ferrand (#240).
* Added more details to error messages when failing to connect to
BackupPC server; reported by @dmak (#261).
* bin/BackupPC Main_Initialize() checks if a BackupPC server is running
by trying to connect to it, in addition to existing check that PID
exists; reported by @toggoboge (#264).
* Fixed utf8 encoded share names in deletion of orphan RsyncShareNames,
reported by @Yann79 (#266).
* Fixed %Conf passing to perl code version of $bpc->cmdSystemOrEval;
reported by Jeff Kosowsky.
* BackupPC_backupDelete removes files with BPC_FTYPE_DELETED from filled
merged backup; reported by Jeff Kosowsky.
* added Data::Dumper SortKeys(1) to lib/BackupPC/Storage/Text.pm so that
config hash writes have repeatable order; suggested by @kr4ut (#275).
* bin/BackupPC_archive: use $bpc->openPCLogFile() instead of manual LOG
file rotation
* lib/BackupPC/CGI/Archive.pm: create client directory if it doesn't
exist
#------------------------------------------------------------------------
# Version 4.3.0, 25 Nov 2018
#------------------------------------------------------------------------
Merged pull requests #200, #208, #216, #217, #229, #230, #231, #232,
#233, #235.
* Added checking of file system inode usage, with new configuration
settings $Conf{DfInodeUsageCmd} and $Conf{DfMaxInodeUsagePct}.
* bin/BackupPC_tarExtract: fixes to hardlink handling on incrementals,
plus cleanup
* bin/BackupPC_backupDuplicate: fixed directory creation for copying v3
backups.
* bin/BackupPC_backupDelete: couple of inode-related bug fixes; also do
fsck if $Conf{RefCntFsck} != 0.
* bin/BackupPC: fixed handling of dhcp hosts, reported by Jean-Marc.
* bin/BackupPC: improved version check of rsync_bpc to allow period
before "beta", reported by @ktenney in issue #214.
* Added $Conf{EMailAdminSubject} to allow the admin email subject to
be set.
* Changed default $Conf{CgiDateFormatMMDD} to 2 (YYYY-MM-DD), submitted
by @moisseev (#231).
* Allow multiple groups in $Conf{CgiAdminUserGroup}, submitted by
@moisseev (#235).
* Improvements to html table sorting, and made more tables sortable,
submitted by @brenard and @moisseev (issue #199, PRs #200, #229, #230,
#232).
* Add action type column to queue status page (#208), submitted by
@brenard.
* lib/BackupPC/CGI/Summary.pm: host summary only reports age of completed
backups (not partial or active), suggested by Michael Selway.
* lib/BackupPC/CGI/HostInfo.pm: show active backup as partial if there
is no job running (to handle case of abnormal exit of BackupPC),
reported by @8666 in issue #220.
* systemd/src/backuppc.service: added ExecReload, submitted by
@opoplawski (#233).
* lib/BackupPC/Xfer/Rsync.pm: empty $Conf{RsyncdPasswd} is no longer fatal;
removed remaining mentions of RsyncdAuthRequired from conf/config.pl
and lib/BackupPC/Config/Meta.pm; reported by @jooola in issue #224.
* bin/BackupPC_dump: moved alarm($Conf{ClientTimeout}) to after all the
pre-backup code (including expiry, duplication etc of backups, which
could be slow) reprted by Michael Selway.
* bin/BackupPC_refCntUpdate: added a couple of __bpc_progress_state__ prints
to improve status reporting during nightly (-m), reprted by Michael Selway.
* lib/BackupPC/CGI/RSS.pm: added Disabled value to host info (copied from
$Conf{BackupsDisable}); suggested by @danielmotaleite (issue #222).
* lib/BackupPC/Xfer/Rsync.pm: added checks for a couple of common rsync
file error and error exit messages that now increment the xferErrs count.
* bin/BackupPC_tarExtract: errors related to a particular file are counted
as Xfer errors, rather than considered fatal.
* bin/BackupPC_dump: added check that $LogFd is defined before using it.
* lib/BackupPC/Lib.pm: replaced exit() with POSIX::_exit() so that object
destruction is skipped in the child process. This fixes corruption of
the compressed XferLOG file if the exec of $Conf{DumpPostUserCmd} fails.
* conf/config.pl: updated project home page to https://backuppc.github.io/backuppc
in email message footers.
#------------------------------------------------------------------------
# Version 4.2.1, 7 May 2018
#------------------------------------------------------------------------
Merged pull request #195.
* Added new config variable $Conf{CgiUserDeleteBackupEnable} that
sets whether users and admins can delete backups via the CGI
interface. The default value is 0, which means it's disabled
for regular users but available for admins.
* Fixed delete backup bug in bin/BackupPC_Admin_SCGI reported by
Julian Zielke in issue #193.
* Added check to dirCacheFlush() in bin/BackupPC_tarExtract to skip files
that don't have attributes; reported by Tarak Patel.
* Removed extraneous duplicate variable assignment in lib/BackupPC/CGI/GeneralInfo.pm,
from @moisseev (#195).
#------------------------------------------------------------------------
# Version 4.2.0, 8 Apr 2018
#------------------------------------------------------------------------
Merged pull requests #160, #190.
* Backups can now be deleted via the CGI interface, written by @moisseev
(#160).
* bin/BackupPC_backupDelete: added -L option that puts output into client
LOG file, to support CGI backup deletion.
* Added support for a user-editable comment per host, via a new ClientComment
config parameter, requested by @andrewmaksymowsky.
* bin/BackupPC_tarExtract: Added support for pax headers, which smbclient
uses for long file names
* bin/BackupPC_backupDelete: make sure directory exists when renaming tree
from deleted backup.
* lib/BackupPC/Xfer/Smb.pm: ignore empty output lines from smbclient;
fixes issue #159.
* bin/BackupPC: improved several of the exit error messages.
* lib/BackupPC/Xfer/Rsync.pm: added shareName to RsyncArgs* argument
substitutions; suggested by Alex Kobel.
* conf/BackupPC_stnd.css: removed import url('https://fonts.googleapis.com/css....'
suggested by @MartijnRas in issue #174.
#------------------------------------------------------------------------
# Version 4.1.5, 3 Dec 2017
#------------------------------------------------------------------------
* Changed required BackupPC::XS version from 0.56 to 0.57.
* bin/BackupPC_dump now updates inodeLast for share being backed up.
* bin/BackupPC_refCountUpdate: inodeLast is checked and updated during fsck;
needs BackupPC::XS 0.57.
#------------------------------------------------------------------------
# Version 4.1.4, 25 Nov 2017
#------------------------------------------------------------------------
Merged pull requests #99, #121, #125, #131, #133, #134, #137, #148, #149, #150
#151, #152, #153, #155, #157, #167
* lib/BackupPC/Xfer/Smb.pm: made pipeSMB non-blocking to avoid a
reported deadlock when BackupPC's select() returns ok for reading,
but there are no bytes to read from the client tar's log/stdout
output. Parallel change to lib/BackupPC/Xfer/Tar.pm in 4.1.3.
* bin/BackupPC_tarCreate and bin/BackupPC_zipCreate: untaint the host name
so they work with setuid under CGI; fixes empty tar or zip files
downloaded via CGI interface (fixes issue #156)
* bin/BackupPC: fixed BackupPC::XS min version checking and error message,
from @moisseev (#152)
* bin/BackupPC: added more detailed startup information (perl and BackupPC
version) to log, from @moisseev (#157)
* bin/BackupPC_rrdUpdate: fixed empty pools hiding from @moisseev (#167)
* lib/BackupPC/Xfer/Smb.pm: now ignores additional debug messages from
smbclient, and flags lines in the XferLOG it doesn't recognize.
* lib/BackupPC/CGI/Browse.pm: default display now has the last, rather
than first, share opened.
* Replaced submit with button so that Enter doesn't activate the Delete
button. Fixes issue #161, reported by Philippe-M.
* removed commented-out settings for some ftp args (eg, port#) in
lib/BackupPC/Xfer/Ftp.pm; reported by Adam W.
* bin/BackupPC_backupDelete: only print delta counts if LogLevel is >= 5
* bin/BackupPC_tarExtract: fix existing file size count and size
* lib/BackupPC/CGI/EditConfig.pm: fixed masking of subheadings in
config editor.
* config/config.pl: added -mSMB3 to $Conf{SmbClientIncrCmd} and
$Conf{SmbClientRestoreCmd}, from @SvenBunge (#99)
* lib/BackupPC/Xfer/Rsync.pm: improved cleanup of orphan rsyncTmp files
* In bin/BackupPC_dump, added "share" to __bpc_progress_state__ message so
it is 'backup share "$shareName"'. Patch #150 by @guestisp (issue #143)
* added share name to log message in lib/BackupPC/CGI/Restore.pm for tar
and zip restore.
* makeDist: fixed exit code from @moisseev (#153)
* Added Travis CI configuration from @moisseev (#155) and enabled travis
* Replaced "Homepage" with "Github" in config.pl and configure.pl from
@moisseev (#121)
* Spelling fixes, mainly in comments from @ka7 (#125).
* Fixed comment in config.pl (zh_CH -> zh_CN) from @patch (#131)
* Fixed German translations from @mainboarder (#133, #134)
* Fixed minor comment typo in config.pl from @pbe-axelor (#137)
* Fixed comments in systemd/README from @schuetzm (#138)
* Fixed Italian translations from @guestisp (#148, #149; issue #142)
* Fixed incorrect hash key in German translations from @moisseev (#151)
#------------------------------------------------------------------------
# Version Version 4.1.3, 3 Jun 2017
#------------------------------------------------------------------------
Merged pull requests: #109, #114
* Fixed editing of compound menu variables (eg: BackupFilesOnly).
* Made tarPipe in lib/BackupPC/Xfer/Tar.pm non-blocking to avoid a
reported deadlock when BackupPC's select() returns ok for reading,
but there are no bytes to read from the client tar's log/stdout
output. Thanks to Matt Bedynek for running various tests and
providing debugging insights to track this down.
* Better error checking when using $f->read() on pool files.
Thanks to Cody Jackson for tracking down this issue, related to
reading corrupted compressed pool files. There's also an
additional fix in backuppc-xs (version 0.54).
* Cleans up any orphan temporary pool writing files.
* Fixed utf-8 output in SCGI.
* Fixed a reference counting bug in BackupPC_tarExtract.
* Fixed rsync restore transfer byte total, reported by Alexander
Moisseev
* Replaced logo href with https://backuppc.github.io/backuppc.
* On a v3->v4 upgrade, remove the new --one-file-system flag from the new
RsyncArgs if it wasn't there before.
* Added /usr/local/bin to search path in configure.pl from Alexander
Moisseev (#109).
* Avoid missing or extra quotes when replacing misused undef or
empty string values in configure.pl from Alexander Moisseev
(#114).
* Chasing down a still unsolved bug with help from Lano and Dieter Fauth
where newly added pool files in uncompressed backups get removed
by BackupPC_refCountUpdate during a long-running backup, or if
BackupPC_migrateV3toV4 is running. Two workarounds added in this
release: BackupPC_migrateV3toV4 will now exit if BackupPC is running,
and BackupPC_refCountUpdate only removes pool files that are more than
a week old.
#------------------------------------------------------------------------
# Version 4.1.2, 30 Apr 2017
#------------------------------------------------------------------------
Merged pull requests: #93, #94, #97, #102
* Fixed NetBios lookup of hosts, reported by Doug Lytle.
* Fixed bin/BackupPC_tarExtract and lib/BackupPC/Xfer/Ftp.pm in case where
a directory tree is no longer present in a new backup. Reported by
Jens Potthast and Matt Bedynek, who helped debug it.
* Fixed SCGI when BackupPC is run in non-daemon mode (which is the systemd
default starting in 4.1.1).
* $Conf{ClientNameAlias} can now be an array of hostnames; the first one
that succeeds ping is used for the backup or restore. From martintamare
(#94).
* Fixed status link in SCGI server, improved the navigation tab (now
it doesn't scroll) and some css/html cleanup; from Nicholas Hall (#97).
* Fixed logic in bin/BackupPC_dump for $Conf{FixedIPNetBiosNameCheck} to
prevent netbios name check; from Nicholas Hall (#102).
* Fixed config editor bug in sub-entries of hash config variables, related
to SCGI.
* Fixed rsync restore of a top-level directory when the share is "/",
reported by Ray Frush.
* Increased $Conf{FullKeepCnt}[0] by 1 in expiry calculations, so the most
recent filled backup effectively isn't counted for expiry. This improves
the behavior, particularly when $Conf{FullKeepCnt} = 1.
* Rsync transfers now use --timeout=$Conf{ClientTimeout} instead of
using an alarm based on rsync log output, suggested by ACR.
* added --delete-excluded and --one-file-system to $Conf{RsyncArgs}.
* Removed extra quotes from $Conf{CgiURL} in configure.pl from Alexander
Moisseev (#93). Also added $DestDir to some print messages in configure.pl.
* BackupPC_dump and BackupPC_restore now support the -p option to turn off
progress reports. The old -p (inplace) option to BackupPC_tarExtract
is now -P.
* Backup directory mtime is now set to the backup endTime.
* Updated FSF address in cgi-bin/BackupPC_Admin, reported by TomCat42 (#91).
#------------------------------------------------------------------------
# Version 4.1.1, 29 Mar 2017
#------------------------------------------------------------------------
* Merged pull requests: #77, #78, #79, #82
* Added missing BackupPC_migrateV3toV4 to makeDist (issue #75) reported
by spikebike.
* Fixed divide-by-zero in progress % report in BackupPC_migrateV3toV4
(issue #75) reported by spikebike.
* In lib/BackupPC/Lib.pm, if Socket::getaddrinfo() doesn't exist (ie,
an old version of Socket.pm), then default to ipv4 ping.
* Updates to configure.pl to make config-path default be based on
config-dir (#79), prepended config-path with dest-dir, fixing a
config.pl merge bug affecting $Conf{PingPath} reported by Richard Shaw,
and a few other fixes.
* Updated required version of BackupPC::XS to 0.53 and rsync_bpc to
3.0.9.6.
* Minor changes to systemd/src/init.d/gentoo-backuppc from sigmoidal (#82).
* Added RuntimeDirectory to systemd/src/backuppc.service.
* Use the scalar form of getpwnam() in lib/BackupPC/CGI/Lib.pm and
lib/BackupPC/Lib.pm
#------------------------------------------------------------------------
# Version 4.1.0, 23 Mar 2017
#------------------------------------------------------------------------
* Merged pull requests: #17, #44, #59, #60, #61, #62,#68, #69, #73, #74
* Fixed certain rsync restores, based on patch from Stephen Joyce.
* Improvements to Gentoo init.d script (#69) from sigmoidal.
* Fixed exponential backup expiry algorithm, submitted by Alexander
Moisseev (#17).
* Added --config-only option to configure.pl, from Alexander Moisseev (#62).
* Ensure $? is 0 in bin/BackupPC_dump UserCommandRun() if no command is run,
reported and proposed fix by stirab (issue #67).
* configure.pl replaces SourceForge links in $Conf{CgiNavBarLinks} with
new Github links.
* Added BackupPC_migrateV3toV4 that migrates old V3 backup storage to
V4, eliminating hardlinks. The forward merging of V3 incrementals is
not changed; just the backup tree is updated to use V4 attrib files, and
the linked V3 files are removed. Thanks to Michael Huntley for testing.
* Renamed init.d to systemd, added systemd/src/backuppc.service template
* Replaced CSS file with new BackupPC_stnd.css from Ernesto Carrea (#59,#73).
Renamed old ones to conf/BackupPC_retro_v2.css and conf/BackupPC_retro_v3.css.
* Updated lib/BackupPC/DirOps.pm with more robust checking that IO::Dirent
works. Matches similar changes to 3.x that didn't make it into 4.x.
Fixes issue #56.
* BackupPC_refCountUpdate handles case of empty backups better. It creates
a noPoolCntOk file if there are legitimately no poolCnt files after
running. Reported by Alexander Kobel.
* Fixed umask() in child processes (issue #58) reported by Alexander
Moisseev.
#------------------------------------------------------------------------
# Version 4.0.0, 3 Mar 2017
#------------------------------------------------------------------------
* Closed pull requests include: #6, #7, #9, #11, #13, #22, #23, #29, #30,
#34, #36, #37, #50, #53
* Remove orphan share names if they are removed from the host's
configuration.
* Improvements to various utilities.
* Reference counting is now per-backup.
* Attribute files are now zero-length with the md5 digest encoded in the
file name.
* Various fixes for zero-length file digest, recovering from missing pool
files or inodes.
* README now in markdown format, from ehannes (#53)
* Fix result for restore using Samba4 from Alexander Moisseev (#50)
* Initial rewrite of lib/BackupPC/Xfer/Ftp.pm for 4.x, but not yet working.
* Sort hash of config editor tabs in lib/BackupPC/CGI/EditConfig.pm from
polo (#23)
* Updates to bin/BackupPC_dump and lib/BackupPC/Xfer/Smb.pm from maksyms to fix
incompatabilities with Samba 4.3 (#22)
* Applied IPv6 support (ping6) from felfert (#29).
* Fixes to bin/BackupPC_sendEmail to avoid per-host overwrite of EMailAdminUserName
from Derrick Dominic (#30)
* Remove full fsck at the end of every backup, from ngharo (#34)
* Added more helpful text (instead of "New Key") for BackupFilesOnly and
BackupFilesExclude in the CGI editor.
* Added =encoding ISO8859-1 to top of BackupPC.pod; from Alexander Moisseev
* Fixed minor typos in several language files; from Alexander Moisseev
* Applied a couple of patches to bin/BackupPC_rrdUpdate from Alexander
Moisseev (#13)
* Updated Spanish language file lib/BackupPC/Lang/es.pm from Luis Bustamante.
* Updated deprecated syntax (defined(@array) and "{" in regexps) from
Alexander Moisseev (#36)
* Documentation updates from Alexander Moisseev (#37)
#------------------------------------------------------------------------
# Version 4.0.0alpha3, 1 Dec 2013
#------------------------------------------------------------------------
* Added rrdtool support, based on code from Alexander Moisseev.
* Fixed BackupPC_attribPrint to auto-detect the compression status of the
attrib file. Reported by Chris Adamson.
* Fixed bin/BackupPC_tarExtract for case where no subdirectories are in
the archive, which caused the top-level attrib file to not be written.
Reported by Alexander Moisseev.
* Added recovery/cleanup to bin/BackupPC_dump in case last V4 backup is
not filled.
* Tweaked RmTreeQuietInner() in lib/BackupPC/DirOps.pm to improve error
messages, and continue on error.
* When FHS is enabled, moved BackupPC.pid and BackupPC.sock files to
/var/run/BackupPC (or $Conf{RunDir}), and the documentation to
$InstallDir/share/doc/BackupPC.
#------------------------------------------------------------------------
# Version 4.0.0alpha2, 15 Sep 2013
#------------------------------------------------------------------------
* Added SCGI support, allowing the Apache to run as any user, with requests
handled by BackupPC_Admin_SCGI, which is run by the BackupPC server. This
provides an alternative to running Apache as the BackupPC user, or needing
to use a setuid BackupPC_Admin script.
* Parallelized bin/BackupPC_refCountUpdate, so that $Conf{MaxBackupPCNightlyJobs}
instances run.
* Fixed pool size counting.
#------------------------------------------------------------------------
# Version 4.0.0alpha1, 30 Jun 2013
#------------------------------------------------------------------------
* A few minor bug fixes.
* Some improvements to bin/BackupPC_fsck
#------------------------------------------------------------------------
# Version 4.0.0alpha0, 23 Jun 2013
#------------------------------------------------------------------------
* Major changes.
* Updated init.d/debian-backuppc from Eduardo Díaz Rodríguez.
#------------------------------------------------------------------------
# Version 3.3.0, 14 Apr 2013
#------------------------------------------------------------------------
* Changed restore file name from restore.{zip|tar} to restore_$host_YYYY-MM-DD.{zip|tar},
where the date is the start date of the backup. Originally suggested by Brad Alexander,
with a healthy debate among Les, Holger, Jeffrey, Adam, Carl and others.
* Changed the timeStamp2 function in lib/BackupPC/CGI/Lib.pm so that times more than 330
days ago also include the year. More recent times continue to use just the day of month
and month.
* Made the directory path display (when browsing backups or history) a sequence of links,
allowing any parent directory to be quickly selected.
* Added Japanese language file lib/BackupPC/Lang/ja.pm submitted by Rikiya
Yamamoto.
* Added Ukrainian language file lib/BackupPC/Lang/uk.pm submitted by Serhiy Yakimchuck.
* Added Russian language file lib/BackupPC/Lang/ru.pm submitted by Sergei Butakov.
* Patch from Alexander Moisseev that fixed file name encodings in zip files.
The default charset is now utf8. Added a menu option to override the codepage.
* Removed -N option from smbclient command in conf/config.pl to remain compatible
with more recent versions (3.2.3 and later) of smbclient. Reported and discussed
by various people on the mail list, most recently by Jeff Boyce, Les Mikesell and
Holger Parplies. Alexander Moisseev also submitted a patch.
Using smbclient >= 3.2.3 with the -N option will give a "tree connect failed:
NT_STATUS_ACCESS_DENIED" error.
* Reapplied a patch from Tyler Wagner for lib/BackupPC/CGI/HostInfo.pl so that
empty email status info doesn't appear. Somehow this missed 3.2.1.
* Fixed check on $parfile in bin/BackupPC_archiveHost since it is numeric.
Fix submitted by Tim Massey.
* Ensure $num is numeric in lib/BackupPC/CGI/View.pm error message
to avoid XSS attack. Report and patch by Jamie Strandboge.
* Ensure $num and $share in lib/BackupPC/CGI/RestoreFile.pm error messages
are escaped, to avoid XSS vulnerability. Report and patch by Jamie Strandboge.
Also added some additional error checking and tweaked the handling of the
invalid number error message.
* Fixed qw(...) deprecated syntax warnings in lib/BackupPC/Storage/Text.pm
and lib/BackupPC/Lib.pm. Patch supplied by Juergen Harms. Also got a
patch from Alexander Moisseev and report from Richard Shaw.
* Fixed error in bin/BackupPC_sendEmail that caused accumulation of
per-host errors in the admin email to be skipped if a host's user
is not defined. Reported by Marco Dalla Via.
* Fixed lib/BackupPC/CGI/RSS.pm so that the base_url is correct for https.
Report and fix by Samuel Monsarrat.
* Added more careful checking that IO::Dirent returns valid inodes and file types.
Suggested by Daniel Harvey.
* Removed redundant setting of $Lang{CfgEdit_Title_Other} from all the Lang files.
* Applied couple of fixes to Lib.pm suggested by Jeffrey Kosowsky for special case of where
configuration commands are fragments of perl code.
#------------------------------------------------------------------------
# Version 3.2.1, 24 Apr 2011
#------------------------------------------------------------------------
* Ensure $num is numeric in lib/BackupPC/CGI/Browse.pm to avoid XSS
attack. Report and patch by Adam E.
* Fixed application of "*" in $Conf{BackupFilesOnly} and
$Conf{BackupFilesExclud} for 2nd and later shares. Reported
by Alessandro and Alexander Maringer.
* Fixed email status check in lib/BackupPC/CGI/HostInfo.pl so that
empty email info doesn't appear; reported by Wayne Trevena,
and based on patch from Tyler Wagner.
* Several fixes to FTP xfer mode related to file excludes, from
Dave Pearce.
* Wrapped eval() around unpack() in lib/BackupPC/Attrib.pm to avoid
failures on corrupted attrib files; patch from Tim Connors.
* Applied documention patch from Alexander Moisseev.
#------------------------------------------------------------------------
# Version 3.2.0, 31 Jul 2010
#------------------------------------------------------------------------
* Fixed code that detects duplicate shares in bin/BackupPC_dump
* Added fix to lib/BackupPC/Zip/FileMember.pm to avoid bug in
Archive::Zip 1.30 when creating compressed archives.
* Added Czech translation from Petr Pokorny.
#------------------------------------------------------------------------
# Version 3.2.0beta1, 24 Jan 2010
#------------------------------------------------------------------------
* Fixed FTP xfer method, with help from Holger Parplies and
Mirco Piccin. FTP restores are still not supported.
* Fixed bug in BackupPC_sendEmail where a user only receives
email about one host.
* Fixed bug where top-level attrib file was linked into the pool with
the wrong digest, caused by it being updated multiple times with
multiple shares. Reported by Jeff Kosowsky who also supplied a
patch.
* Fixed bug in blackout calculation when multiple periods span midnight.
Report and patch from Joachim Falk.
* Wrapped eval {} around attribute unpacking to make it more robust
to data corruption. Path submitted by Tim Connors.
* Ignore fileType 8 and 9 in BackupPC_tarCreate rather than consider then
errors. These are sockets and unknown (eg: solaris door) files that
are created dynamicaly by applications - there is no meaningful restore
for these file types.
* Changed lib/BackupPC/Lib.pm and lib/BackupPC/Storage/Text.pm based on
patches from Davide Brini and Holger Parplies so that main config
%Conf values are available in the host config file, allowing more
flexibility in perl expressions in the config files. Users beware,
since the CGI editor won't work correctly if the config file have
perl expressions.
* Obscure password values in LOG file when CGI editor is used to change
values. Proposed by Steve Ling.
* Added favicon.ico from Axel Beckert. Thanks to Tyler Wagner for submitting
another version and reminding me about the first.
* Replace "sort(HostSortCompare keys(%$Hosts))" with "sort HostSortCompare keys(%$Hosts)"
in bin/BackupPC to avoid an error with certain versions of perl.
* Fixed $Conf{XX} links in the BackupPC.html and the CGI editor so they
correctly reference the definition.
* Support ${VAR} style variable substitution in commands, in addition to
existing $VAR style. Suggested by Jeffrey Kosowsky.
* Clarified usage of -b and -w options to BackupPC_tarCreate. Submitted by
Michael Selway.
* Repaired Unable_to_connect_to_BackupPC_server Lang string and added new
string Unable_to_connect_to_BackupPC_server_error_message. Proposed and
explained by Holger Parplies.
* Added 'use utf8' to lib/BackupPC/Lang/pl.pm. Reported by Michal Sawicz.
* Minor updates to lib/BackupPC/Lang/fr.pm from Hubert Tournier.
* Minor update to lib/BackupPC/Lang/en.pm from David Relson.
#------------------------------------------------------------------------
# Version 3.2.0beta0, 5 April 2009
#------------------------------------------------------------------------
* Added BackupPC::Xfer::Protocol as a common class for each Xfer
method. This simplifies some of the xfer specific code.
Implemented by Paul Mantz.
* Added FTP xfer method, implemented by Paul Mantz.
* Added BackupPC::Xfer module to provide a common interface to the
different xfer methods. Implemented by Paul Mantz.
* Moved setting of $bpc->{PoolDir} and $bpc->{CPoolDir} after the
config file is read in BackupPC::Lib. Fix proposed by Tim Taylor
and Joe Krahn, and rediscovered by several others including
Holger Parplies.
* Create $TopDir and related data directories in BackupPC_dump
prior to hardlink test. Requested by Les Stott.
* Fixed encoding of email subject header in bin/BackupPC_sendEmail as
suggested by Jean-Claude Repetto. Also changed $Conf{EMailHeaders}
charset to utf-8. Also changed bin/BackupPC_sendEmail to not send
any per-client email if $Conf{BackupsDisable} is set.
* Modified bin/BackupPC_dump to fix the case of a single partial
backup followed by a successful incremental resulting in a full
backup of level 1, rather than level 0. Reported by Jeff
Kosowsky.
* Fixed BackupPC::PoolWrite to always create the parent directory.
This fixed a case with rsync/rsyncd where a file like "-i" in the
top-level directory sorts before ".", which meant the directory
creation is after the file creation. Also PoolWrite errors now
increment xferError count. Reported by Jeff Kosowsky.
* BackupPC now gives a more useful error message if BackupPC_nightly
takes more than 24 hours (ie: when the next one is meant to
start). Reported by Tony Schreiner.
* Fixed IO::Dirent run-time check. Reported by Bernhard Ott and Tino Schwarze
debugged it.
* Added more options to server backup command: rather than just forcing
an incremental or full backup, a regular (auto) backup can be queued
(ie: do nothing/incr/full based on schedule), as well as doing just
an incremental or full or nothing based on the client schedule.
Based on patches submitted by Joe Digilio.
* Modified lib/BackupPC/CGI/RSS.pm to replace \n with \r\n in the RSS
http response headers. Patch submitted by Thomas Eckhardt.
* Modified bin/BackupPC_archive to allow the archive request file
name to contain spaces and dashes, requested by Tim Massey.
* Fix to configure.pl for --no-fhs case to initialize ConfigDir
from Dan Pritts. Also changed perl path to #!/usr/bin/env perl.
* Modified bin/BackupPC_archiveHost to shell escape the output file
name. That allows it to contain spaces and other special characters.
Requested by Toni Van Remortel. Also updated bin/BackupPC_archiveHost
to shell escape and check other arguments.
* Added $Conf{CmdQueueNice} to specify nice level for command queue
commands (eg: BackupPC_link and BackupPC_nightly). Suggested by
Carl Soderstrom.
* Added --config-override to configure.pl, allow config settings to be
set on the command line. Proposed by Les Stott and Holger Parplies.
* Moved call to NmbLookupFindHostCmd in BackupPC_dump to after the
check of whether a backup needs to be done. This makes wakeonlan
work correctly, rather than waking up the client every WakeupSchedule.
Reported by David Lasker.
* Improved settings for compression and compext in BackupPC_archiveStart
based on compression type, as proposed by Paul Dugas. compext is now
empty, .gz or .bz2 based on ArchiveComp.
* Changed bin/BackupPC_dump to not ping or lookup the host if
$Conf{BackupsDisable} is set. Requested by John Rouillard.
* Changed BackupPC_tarCreate to disable output of final nulls in
tar archive when -l or -L option is used. Reported by John
Rouillard.
* Added error check in BackupPC::Xfer::RsyncFileIO after call to
BackupPC::Xfer::RsyncDigest->digestStart(), reported by Jeff
Kosowsky.
* Added variable substitution for host, confDir, client in
RsyncArgs, and also added option RsyncArgsExtra to allow
more easy customization of RsyncArgs on a per-client basis.
Proposed (with patch) by Raman Gupta.
* Added Xfer error column to the host summary table in the CGI
interface. Based on patch submitted by Jan Kratochvíl.
* Minor fix to sprintf arguments in BackupPC::Attrib, reported by
Jonathan Kamens.
* Fixed sort compareLOGName syntax in bin/BackupPC for perl 5.10.x,
reported by Jeff Kosowsky and Holger Parplies.
* Fixed bin/BackupPC_archiveStart to set compression correctly,
and also set the file extension to .gz when compression is on.
Reported by Stephen Vaughan.
* Fixed netbios name comparison in bin/BackupPC_dump and
bin/BackupPC_restore to just use the first 15 characters
of the host name. Patch from Dan MacNeil.
* Fixed nmblookup parsing in BackupPC::Lib::NetBiosInfoGet to ignore
entries with the <GROUP> tag. Based on patch from Dan MacNeil.
* Fixed BackupPC_dump so that the XferLOG file is saved when
DumpPreUserCmd fails. Reported by John Rouillard.
* Updated BackupPC.pod for $Conf{BackupsDisable}, reported by
Nils Breunese.
* Added alternate freebsd-backuppc2 init.d script that is
more compact. Submitted by Dan Niles.
* Minor updates to lib/BackupPC/Lang/fr.pm from Nicolas STRANSKY
applied by GFK, and also from Vincent Fleuranceau.
* Minor updates to lib/BackupPC/Lang/de.pm from Klaus Weidenbach.
* Updates to makeDist for command-line setting of version and
release date from Paul Mantz.
* Add output from Pre/Post commands to per-client LOG file, in addition
to existing output in the XferLOG file. Patch from Stuart Teasdale.