我正在尝试使用以下命令将目录备份到预先存在的 Amazon S3 存储桶:
duplicity --no-encryption system/ s3+http://MY_BUCKET_NAME/backup
Run Code Online (Sandbox Code Playgroud)
但是,我始终收到以下错误:
S3CreateError: S3CreateError: 409 Conflict
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>BucketAlreadyOwnedByYou</Code><Message>Your previous request to create the named bucket succeeded and you already own it.</Message><BucketName>vacationlabs</BucketName><RequestId>3C1B8C49469E3374</RequestId><HostId>4dU1TKf3Td6R0yvG9MaLKCYvQfwaCpdM8FUcv53aIOh0LeJ6wtVHHduPSTqjDwt0</HostId></Error>
Run Code Online (Sandbox Code Playgroud)
backup目录我创建了一个脚本,它运行重复性来备份我在 VPS 上的文件,并使用我作为用户生成的 GPG 密钥。
当我尝试以 SUDO 身份运行此脚本时,我得到:
GPGError: GPG Failed, see log below:
===== Begin GnuPG log =====
gpg: C7B2Y6DO: skipped: public key not found
gpg: [stdin]: encryption failed: public key not found ===== End GnuPG log =====
Run Code Online (Sandbox Code Playgroud)
现在我意识到这是为什么(因为它不是 SUDO 的密钥,而是用户密钥)但是在我去重新生成 SUDO 的密钥之前,是否可以让 sudo 使用用户密钥?
不是很重要,但脚本是根据这三个站点的组合建模的:http : //www.cenolan.com/2008/12/how-to-incremental-daily-backups-amazon-s3-duplicity/
http://www.randys.org/2007/11/16/how-to-automated-backups-to-amazon-s-s3-with-duplicity/
我的网络服务器上有一组由 duplicity 软件生成的文件:
已在未加密的情况下进行备份。
我目前的主机在他的服务器上没有口是心非,不想安装它。如何使用远程 SSH 访问解压这些文件?也许有一些 bash 脚本可以做到这一点?
我想用双重性来备份文件,我想用 GnuPG 加密它们。我想知道为什么重复性要求密码来加密文件。对于非对称加密,只有解密时才需要密码。
我正在使用以下命令:
duplicity full --encrypt-key="KEY-ID" --sign-key="KEY-ID" /path/to/source file://path/to/destination
Run Code Online (Sandbox Code Playgroud)
我希望重复使用给定“KEY-ID”的公共部分来加密备份。我有什么问题吗?
我们使用 DigitalOcean 作为我们的 VPS 提供商。他们有一个关于如何为加密备份设置 Duplicity的教程,但它不包括数据库备份或 Google Drive 端点。
我在网上找到了一些关于 Duplicity 和 Google Drive 的其他教程,但它们似乎都不完整或过时。
我有两个linode VPS 帐户,我想将一个备份到另一个(原因主要是为了好玩和练习服务器管理。)
Duplicity 甚至没有询问我的密码,而是立即说“无效的 SSH 密码”(但我可以通过 ssh 进入另一台服务器)。为什么?
当我跑步时,duplicity /home/me scp://root@x.x.x.x//root/backup我得到
Invalid SSH password
Running 'sftp root@x.x.x.x' failed (attempt #1)
Invalid SSH password
Running 'sftp root@x.x.x.x' failed (attempt #2)
Invalid SSH password
Running 'sftp root@x.x.x.x' failed (attempt #3)
Run Code Online (Sandbox Code Playgroud)
它Invalid SSH password立即说,我没有机会实际输入密码。
当我输入时,duplicity full -v9 --num-retries 4 /home/me scp://root@x.x.x.x//root/backup我得到
Main action: full
Running 'sftp root@97.107.129.67' (attempt #1)
State = sftp, Before = 'Connecting to 97.107.129.67...
root@97.107.129.67's'
State = sftp, Before = …Run Code Online (Sandbox Code Playgroud) 我已经尝试了许多明显的命令,如Duplicity Man page 中详述的那样,但它似乎不起作用。
设想
我通过 SSH 连接到一台机器,然后运行 Duplicity;以下是各种命令:-
ssh -i /keys/key.pem -o StrictHostKeyChecking=no user@ipAddress "sudo duplicity --s3-european-buckets --s3-use-new-style /local/dir/stuff s3+http://bucket/dir/"
Run Code Online (Sandbox Code Playgroud)
问题是,它总是要求输入密码,我想将其作为自动化过程运行,而无需 CLi 用户回复。手册页唯一精确的参考是环境变量PASSPHRASE,但很少提及(加密密钥或签名密钥似乎不同)如何设置。
注意:它要求GnuPG 密码
我正在考虑使用 S3 作为我的 Subversion 数据库的异地备份存储库。当我转储我的 SVN 数据库时,它大约有 10 GB。我想避免重复上传该数据的费用。
这个大文件的解剖结构使得对 Subversion 的新更改修改了文件的尾部,而其他所有内容都保持不变。因为 Amazon S3 不允许您用更改来“修补”文件,所以在向 Subversion 进行简单提交后,每次实例化备份时,我都必须上传十个演出。
以下是我看到的选项:
选项 1
我正在研究双重性,--volsize它在一定数量的 megs 上拆分数据。是否可以使用此方法拆分 Subversion 转储,以便以兆字节为单位测量进一步的增量备份?
选项 2 我可以只备份热颠覆存储库吗?如果它正在编写提交的过程中,这似乎是一个坏主意。但是,我可以选择在午夜和凌晨 4 点之间使 repo 离线。我的 Berkeley DB 中的每个修订版都使用一个文件作为其记录。
我需要使用千兆位连接将数百 GB 的现场备份从几个 Xen VM 备份到同一网络中专用服务器上的一些可用存储。数据主要是 MySQL 数据——我使用 Percona XtraDB Cluster——使用 Xtrabackup 在服务器上本地备份,所以我想这些数据应该是高度可压缩的。
目前我正在使用带有密码加密的 duplicity 0.6.08b(我没有使用密钥),因为我还将使用 duplicity 创建的备份卷同步到一些异地存储。当前压缩级别为 6,volsize 为 250。备份需要一天以上的时间,这就是我正在寻找推荐的重复设置的原因,该设置将导致快速备份到本地网络共享存储而不会占用太多空间。
任何的想法?
我花了几个小时尝试配置Duplicity以对 Google Drive 执行自动远程备份。在这一点上,可以肯定地说我正处于自己的私人依赖地狱中。
使用我的发行版 (0.6.x) 附带的 Duplicity 版本,我收到一个错误:
BackendException:Google Docs 后端需要 Google 数据 API Python 客户端库(请参阅http://code.google.com/p/gdata-python-client/)。
尽管我安装了 Google API Python 客户端。所以,我决定尝试升级双重性,但失败了:
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c duplicity/_librsyncmodule.c -o build/temp.linux-x86_64-2.7/duplicity/_librsyncmodule.o
duplicity/_librsyncmodule.c:26:22: fatal error: librsync.h: No such file or directory
#include <librsync.h>
^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)
因此,我决定也尝试升级librsync到最新的稳定版本 (2.0)。在为那个依赖而苦苦挣扎之后,我终于得到了两者librsync并duplicity更新到他们最新的稳定版本。
因此,当我使用 给我的 Duplicity 升级版本进行旋转时duplicity --version,我现在立即收到 …
我正在使用双重性通过 FTP 创建我的服务器的夜间备份。我编写了一个脚本,它执行本地和远程备份并记录输出结果。当我以 root 用户身份运行此脚本时,它执行得很好。但是,当我将其设置为 cron 作业并运行它时,脚本会执行但 ftp 部分失败。在我收到一条错误消息“ncftpls - 未找到命令,请安装 ncftp 3.1.9 或更高版本”后不久,但它已安装!是否有某种原因导致 cron 作业无法找到机器上存在的命令?它有自己的 PATH 或类似的东西吗?
任何帮助是极大的赞赏,
麦克风
duplicity ×11
backup ×7
gpg ×4
amazon-s3 ×2
ssh ×2
bash ×1
centos ×1
compression ×1
cron ×1
dependencies ×1
encryption ×1
ftp ×1
gnupg ×1
google-drive ×1
gzip ×1
installation ×1
linode ×1
mysql ×1
openpgp ×1
pgp ×1
python ×1
sudo ×1
tar ×1
ubuntu ×1