Comments (3)
Hi @defuse,
Yes, it would be nice if we supported this case.
On a slightly related note, we updated our docs about running Tarsnap on multiple machines a few days ago, primarily to add the "copy cachedir around" idea. I suspect that you might already know all this info, but just in case, it might be worth giving it a quick skim: http://www.tarsnap.com/multiple-machines.html
from tarsnap.
Leaving breadcrumbs for myself when I come back to this issue later: The reason we need a fsck is because tarsnap -c
needs to know what bits are on the server already. If we have only the write keys, we can't issue a NETPACKET_DIRECTORY request, so we can't list what's on the server (and without the read keys, we can't figure out how many times each block is used).
But if we add a new NETPACKET_WRITE_ISEMPTY request to the client-server protocol, the tarsnap client would be able to detect that there is no data at all, and then initialize the chunks directory based on that.
from tarsnap.
This led to some mildly-frustrating usability problems for me.
I'm using Tarsnap on two computers. The less-likely-to-be-hacked of the two has the entire key for the "machine" and the other -- the one that's actually being backed up -- has a write-only key for the "machine." I accidentally backed up too much data and figured it'd be easiest to lower my monthly bill by --nuke
ing everything and starting fresh.
So I ran --nuke
from the entire-key computer, and when I tried to run a backup from the write-key computer, it told me I needed to run --fsck
. When I tried to run --fsck
on the write-key computer, it told me it needed the read key. I don't want the read key to ever touch the write-key computer. I tried running --fsck
on the entire-key computer but it didn't help.
For a second I thought I was going to have to go through the whole key-generation process again (which would be problematic since I have the key backed up in hard-to-reach places), but I resolved it by copying the entire-key computer's cache directory to the write-key computer.
Tarsnap would be better if this edge case was easier to deal with/recover from.
from tarsnap.
Related Issues (20)
- lseek (_llseek) issue introduced in 1f56dc7c35b, possibly only on Linux i686 HOT 11
- Workaround for Windows Subsystem for Linux bug with link() HOT 1
- Add support for .gitignore files HOT 2
- escaping bug/typo in tarsnap(1) manpage HOT 1
- Machine name doesn't work with accents ? HOT 5
- master fails to build on old gcc (below version 9) HOT 9
- apt-key is deprecated - update installation instructions HOT 5
- Tarsnap Website Screen Reader Compatibility HOT 3
- Look for tarsnap.conf in ~/.config/tarsnap/ HOT 1
- Optional support for CACHEDIR.TAG files HOT 2
- New release? HOT 2
- Build fails on NetBSD HOT 4
- build: The <sys/sysctl.h> header is deprecated
- False warnings from clang-scan
- tarsnap can be tricked into skipping file using "touch -r" HOT 5
- libressl 3.6 will add `OPENSSL_cleanup()` HOT 1
- Deleting of archives taking up a lot of server -> client bandwidth HOT 6
- workaround for libc/kernel disagreement about whether lchmod exists HOT 1
- --include option HOT 12
- Anchored excludes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tarsnap.