grke / burp Goto Github PK
View Code? Open in Web Editor NEWburp - backup and restore program
Home Page: http://burp.grke.net
License: Other
burp - backup and restore program
Home Page: http://burp.grke.net
License: Other
Quick start ----------- The following assumes that you are installing the burp server from source. You need to compile burp on a unix-based operating system first. Make sure that you have openssl, zlib, librsync, and uthash libraries and development packages installed. - Debian/Ubuntu: apt-get install make pkg-config check g++ \ librsync-dev libz-dev libssl-dev uthash-dev - RHEL or CentOS 7: yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm yum install make gcc gcc-c++ bzip2 pkgconfig \ librsync-devel libzip-devel openssl-devel uthash-devel \ libacl-devel ncurses-devel openssl-perl libcap-devel - RHEL or Centos 8: dnf install epel-release dnf --enablerepo=PowerTools list uthash-devel dnf install make gcc librsync-devel openssl-devel libacl-devel \ ncurses-devel zlib-devel After this point, make sure you are standing in the burp source directory. If you are taking the source directly from git: Install these extra packages with your distribution's package manager: autoconf automake libtool autoreconf -vif Now run the configure script, noting that if you are using automake >= 1.16.1, you may need to add '--disable-dependency-tracking': ./configure --prefix=/usr --sysconfdir=/etc/burp --localstatedir=/var Then run: make All being well, burp will compile successfully. Install it as root: make install Now install configuration files. Note that this will overwrite existing configuration files in /etc/burp, so you will probably not want to run this if you have an existing burp installation: make install-configs Start the burp server: burp -c /etc/burp/burp-server.conf By default, the server will fork into the background and run as a daemon. To stay in the foreground, add the '-F' option. The first time that the server runs, its startup will be a slower than usual because it needs to generate its SSL certificates. However, this will probably only be noticeable on old machines. The server is now ready for clients to connect to it. Unix client ----------- If you are going to run the client on the same machine on which you installed the server, the client will already be installed because the client is built into the same binary (the behaviour of the binary depends upon the configuration file that is given to it). Otherwise, you can either go through the 'configure/make/make install' sequence on the client machine, or get burp via your distribution's package manager. The example client configuration file is /etc/burp/burp.conf. It will backup /home by default. You can either force a backup by hand: burp -a b Or add a regular cron job like the following to /etc/cron.d/burp (or equivalent). This makes the client ask the server every twenty minutes whether it is yet time for a new backup. It is probably a good idea to change the numbers for each client, in order to spread the load a bit: MAILTO= 7,27,47 * * * * root /usr/sbin/burp -a t Whether or not an instance of the client results in an actual backup depends upon the timer settings in the server config files. Windows client -------------- Pick the 32-bit or 64-bit Burp installer as appropriate - visit http://burp.grke.org/ to find one of them. If you need to compile one yourself, instructions can be found at src/win32/README in the source package. The Windows installer will ask you for the address of your server, the client name, and the client password. Burp will then install its files to: C:/Program Files/Burp (Note that the "C:/Program Files/" part may differ, depending on Windows' language settings). If you need to change client configuration settings, the file can be found at: C:/Program Files/Burp/burp.conf It will be configured to backup "C:/Users", if it existed at installation time, or otherwise "C:/Documents and Settings". A Windows Scheduler task will have been installed and will be configured to run every 20 minutes from the time of the installation. Whether or not this results in an actual backup depends upon the timer settings in the server config files. To force a backup by hand, start the burp client from within its directory: cd "C:\Program Files\Burp\bin" burp.exe -a b If you are running Windows 7, you might need to start the command prompt with "Run as Administrator". Mac client ---------- The installation on a Mac is performed via Homebrew (http://brew.sh). After installing Homebrew, with an admin account you just have to open a Terminal and type the command: brew install burp Burp will be installed in the subdirectories of /usr/local (see Homebrew website for details on the subdirectories). You'll then have to edit the client configuration file: /usr/local/etc/burp/burp.conf At the minimum, you'll have to change the line: include = /home to something like: include = /Users Automated deploy with ansible ----------------------------- For ansible roles to manage burp, please see: https://github.com/grke/burp/wiki/automated-deploy-and-maintenance For more help, see the man page - type 'man burp'.
Add Bas van den Dikkenberg's patches for Debian.
As the title says.
I am thinking the syntax will be a dot, followed by the path of the extra file to read:
. path/to/extra/conf/file
ackage: burp
Version: 1.3.0+20120214git-1
Severity: normal
This is the line from burp's logrotate script:
invoke-rd.d burp reload >/dev/null
Should be invoke-rc.d.
regards
fEnIo
Investigate Windows 'bare metal restore'.
Failing reason for burp on hurd-i386:
attribs.c:249:40: error: 'chflags' was not declared in this scope
Tail of logs for burp on hurd-i386:
./run_test: line 35: kill: (13598) - No such process
make[2]: *** [test] Error 1
make[1]: *** [test] Error 2
dh_auto_test: make -j1 test returned exit code 2
make: *** [build] Error 29
dpkg-buildpackage: error: debian/rules build gave error exit status 2
Test 1
First backup/restore comparison
Starting test client backup
Test failed: client backup returned 127
Killing test server
make[2]: Leaving directory `/build/buildd-burp_1.3.0+20120214git-1-hurd-i386-xMBXuh/burp-1.3.0+20120214git/test'
Tail of logs for burp on kfreebsd-i386:
Test 9
Max file size, backup/restore comparison
Starting test client backup
Starting test client verify of backup all
Test failed: client backup returned 255
Killing test server
make[2]: *** [test] Error 1
make[2]: Leaving directory /build/buildd-burp_1.3.0+20120214git-1-kfreebsd-i386-oyIhI5/burp-1.3.0+20120214git/test' make[1]: *** [test] Error 2 make[1]: Leaving directory
/build/buildd-burp_1.3.0+20120214git-1-kfreebsd-i386-oyIhI5/burp-1.3.0+20120214git'
dh_auto_test: make -j1 test returned exit code 2
make: *** [build] Error 29
Tail of logs for burp on s390x:
Test 5 OK
Test 6
Turn compression off, encryption on, change files, backup/restore comparison
Starting test client backup
E: Caught signal 'Terminated': terminating immediately
make[1]: *** [test] Terminated
Terminated
make: *** [build] Terminated
./run_test: line 35: kill: (6209) - No such process
Killing test server
Test failed: client backup returned 143
make[2]: *** [test] Error 1
can you take look if this is a bug that can be fixed?
see also
https://buildd.debian.org/status/package.php?p=burp&suite=sid
Investigate HFS / resource forks and make support. I think this might need somebody to buy me a Mac.
Break the stupidly long find_files() function down into smaller pieces.
Have an option to let the client give the server the encryption password and hence do server-side encryption. This would mean that network deltas with encryption can be done.
As the title says.
- Estimates:
+ Should include the final jiggling around time.
+ Currently go a bit wonky during resume.
+ Don't show up on restore/verify.
- Client knows no counters when resuming, because it didn't do the
phase1 scan. Have the server send it the counters.
- Can something be done to make key presses more responsive?
- When lots of clients are backing up, the live status monitor
truncates information.
- Have a way of browsing backup contents.
- Have a way of viewing logs.
- Make a web interface.
Delete old backups by time
Think about having a 'friendly' way of doing restores, as I have known some people to complain about having to type things on the command line.
Add option to strip off leading path components on restore
Maybe look at the timer script regularly. If the time is now out of the defined range, interrupt the backup in such a way that it will pick up from where it left off the next time round.
Add localisation/gettext.
Package: burp
Version: 1.3.0+20120214git-1
Severity: minor
Hi!
It seems that burp is ignoring the "noopt" tag exported via DEB_BUILD_OPTIONS (it's still getting compiled with -O2 instead -O0).
nocheck and nostrip are fine.
Thank you!
Best regards,
Nelson
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable'), (100, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.2.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=pt_BR.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages burp depends on:
ii libacl1 2.2.51-5
ii libc6 2.13-26
ii libgcc1 1:4.6.2-15
ii libncurses5 5.9-4
ii librsync1 0.9.7-9
ii libssl1.0.0 1.0.0g-1
ii libstdc++6 4.6.2-15
ii libtinfo5 5.9-4
ii zlib1g 1:1.2.6.dfsg-2
burp recommends no packages.
burp suggests no packages.
Is probably a bit trickier than other tests, because it has to be different on different systems.
Make sure behaviour is sensible when a client runs out of storage directories. It is programmed to loop to the start, but it will currently overwrite existing files (see section that calls incr_dpth() in backup_phase2_server()).
Make SSL_shutdown() work properly.
Package: burp
Version: 1.3.0+20120214git-1
Severity: wishlist
Hi!
Today while starting burp I saw that it didn't run.
On dmesg I saw this:
[330733.343833] burp[4128]: segfault at fffffffffffffff7 ip 00007fb1dce1e799 sp 00007fff40e26650 error 4 in libc-2.13.so[7fb1dcda4000+17d000] [330733.344172] burp[4130]: segfault at fffffffffffffff7 ip 00007fb1dce1e799 sp 00007fff40e26650 error 4 in libc-2.13.so[7fb1dcda4000+17d000] =====
Providing a -dbg package would help us in debugging such problems (and won´t force the users to recompile the package to enable debug symbols).
Thank you!
Best regards,
Nelson
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable'), (100, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.2.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=pt_BR.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages burp depends on:
ii libacl1 2.2.51-5
ii libc6 2.13-26
ii libncurses5 5.9-4
ii librsync1 0.9.7-9
ii libssl1.0.0 1.0.0g-1
ii libstdc++6 4.6.2-15
ii libtinfo5 5.9-4
ii zlib1g 1:1.2.6.dfsg-2
burp recommends no packages.
burp suggests no packages.
Allow random backups to be deleted safely when hardlinked_archive is on.
Windows non-VSS backups.
Do not compress manifests and logs when compression is turned off
Add the option to turn an existing hardlinked_archive (not 'current') into a non-hardlinked_archive, and vice versa. This could be useful for deleting backups out of the middle of a chain instead of just the oldest.
Get EFS backup/restore working on Windows (FILE_ATTRIBUTE_ENCRYPTED, and special open/read/close functions).
autoconf/config.log must be removed from source files for next build
Because it didn't do the phase1 scan. Have the server send it the counters.
When lots of clients are backing up, the live status monitor truncates information.
Add option to take a list of paths for restore.
In the test script, check whether the backup has finished before going on to the next step (rather than waiting 10 seconds and then possibly failing).
Add include/exclude wildcards.
Add the ability to specify things like includes/excludes on the server side.
Will probably work by downloading chunks of config to the client.
Try to make backup_phase4_server more efficient. For example, a storage server using a CIFS mounted disk appears very low when I have a backup containing 1,500,000 small files with very few changes. (This may have been exacerbated by working dir recovery 'merge'. With 'resume', it may be fairly improved).
Package: burp
Version: 1.3.0+20120214git-1
Severity: normal
Hi again!
burp is wrongly installing /sbin/bedup and /sbin/burp
/sbin should contains only "binaries essential for booting, restoring,
recovering, and/or repairing the system in addition to the binaries in
/bin" (see the Filesystem Hierarchy Standard).
They should be installed under /usr/sbin
Thank you!
Best regards,
Nelson
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable'), (100, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.2.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=pt_BR.UTF-8, LC_CTYPE=pt_BR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages burp depends on:
ii libacl1 2.2.51-5
ii libc6 2.13-26
ii libgcc1 1:4.6.2-15
ii libncurses5 5.9-4
ii librsync1 0.9.7-9
ii libssl1.0.0 1.0.0g-1
ii libstdc++6 4.6.2-15
ii libtinfo5 5.9-4
ii zlib1g 1:1.2.6.dfsg-2
burp recommends no packages.
burp suggests no packages.
Add localisation/gettext specifically to work around the Polish Windows XP "schtasks.exe Co_minutÄ" problem.
Restore / verify email notifications.
Investigate how to make massive files work better with librsync.
Make transfer_gzfile_in() and send_whole_file_gz check checksums.
Add option to set up a restore on the server side.
Add acl/xattr support
Package: burp
Version: 1.3.0+20120214git-1
Severity: wishlist
Dear Maintainer,
Please upgrade to Standards-Version 3.9.3 instead of 3.9.2
-- System Information:
Debian Release: wheezy/sid
APT prefers testing-proposed-updates
APT policy: (500, 'testing-proposed-updates'), (500, 'unstable'), (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 3.1.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages burp depends on:
ii libacl1 2.2.51-5
ii libc6 2.13-26
ii libncurses5 5.9-4
ii librsync1 0.9.7-9
ii libssl1.0.0 1.0.0g-1
ii libstdc++6 4.6.2-15
ii libtinfo5 5.9-4
ii zlib1g 1:1.2.6.dfsg-1
burp recommends no packages.
burp suggests no packages.
-- no debconf information
Get metadata transfers to use librsync.
When you make clean logfiles en test files arn't being removed.
it is almost al files in test dir
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.