[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Partial file, .part, not present during failed large upload due to negative funds

Good afternoon.  I have added a new machine to my Tarsnap account and I started its first backup this week.  It was a big backup for me, because it was my entire NAS minus virtual machines and easily downloadable public files. My plan is to centralized backups to my NAS, then backup the NAS.

I ran into a problem after I ran out of funds in my account, and the backup stopped.  I find no .part file with which a backup can resume.  As it had been baking up for 3-4 days at the time, I’d like to avoid starting over, and of course I’d like for the bandwidth charges not to be a loss.  No one has physical access to the machine, and I find no evidence of tampering.

Did I lose my backup in progress, or can I continue the backup and know that the first archive will appear without having to re-upload all the files?

On 8/28/2018, going by the times from the Accounts -> Manage Account -> Recent Activity Summary at https://www.tarsnap.com, I started backing up my NAS using a FreeBSD BHYVE machine on a FreeBSD host.  The FreeBSD BHYVE, let’s call it the "backup server” is pulling archives from /mnt/DiskStation under which there are folders, one per remote share mounted by CIFS.  

I have lost my command history, but the command was probably something like the following running as a non privileged user.  The machine is dedicated to only backing up the NAS in various ways, so having an unprivileged user for this task seems reasonable.  The non-priv user is ‘justin'

tarsnap -c -f 20180828-mnt-DiskStation /mnt/DiskStation

Here is my .tarsnaprc with all lines included and only comments corresponding to uncommitted lines stripped out:

# Tarsnap cache directory
cachedir /home/justin/tarsnap-cache

# Tarsnap key file
keyfile /home/justin/tarsnap.DiskStation.key

# Don't archive files which have the nodump flag set.

# Print statistics when creating or deleting archives.

# Create a checkpoint once per GB of uploaded data.
checkpoint-bytes 1G

### Commonly useful options

# Use SI prefixes to make numbers printed by --print-stats more readable.

# Include only files and directories matching specified patterns.
# Only one file or directory per command; multiple "include"
# commands may be given.
include /mnt/DiskStation

Tarsnap was installed from pkg:

$ echo $PATH
$ pkg which /usr/local/bin/tarsnap                                                                                                                                                                         
/usr/local/bin/tarsnap was installed by package tarsnap-1.0.39
$ uname -a
FreeBSD fluffy 11.1-RELEASE FreeBSD 11.1-RELEASE #0 r321309: Fri Jul 21 02:08:28 UTC 2017     root@releng2.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64
$ df -h 
Filesystem                        Size    Used   Avail Capacity  Mounted on
/dev/vtbd0p2                      9.0G    3.5G    4.8G    42%    /
devfs                             1.0K    1.0K      0B   100%    /dev
//ADMIN@DISKSTATION/TESTFOLDER     11T    2.3T    8.5T    21%    /mnt/DiskStation/testfolder
//ADMIN@DISKSTATION/MUSIC          11T    2.3T    8.5T    21%    /mnt/DiskStation/music
//ADMIN@DISKSTATION/SCANNERS       11T    2.3T    8.5T    21%    /mnt/DiskStation/scanners

The folders mounted do not consume 2.3T.  It is closer to 300GB.

The backup continued for 3-4 days, at which time, having exhausted my funds in the account and then some.  The Tarsnap client stopped adding to the first archive for this NAS as documented in https://www.tarsnap.com/faq.html#out-of-money .

The account had just under -7 dollars.  

Today, I added 100 to the account so that the balance would be over 92 dollars.  The last daily storage charge was for 184245293378 bytes (just under 184 GB) of storage.  Based on my .tarsnaprc file which has "checkpoint-bytes 1G defined, I would expect to find a .part file totaling 183GB.  However, I don’t find anything when I run the following command:

$ pwd
$ id
uid=1001(justin) gid=1001(justin) groups=1001(justin),0(wheel)
$ tarsnap -vv --list-archives