python备份实用程序

backutil的Python项目详细描述


backutil

python备份实用程序

说明:

backutil是pythontarfile库的包装器。由于tarfile是一个标准的python库,因此使用backutil将提供一个跨平台的简单备份实用程序。

安装:

使用pip

安装

sudo pip3 install backutil

用法:

❯ backutil --help
usage: backutil [-h] [--path PATH [PATH ...]] [-o OUTFILE] [--webdav URL]
                [--remote REMOTE PATH] [--encrypt RECIPIENT] [-z] [--rm] [-v]
                [-q] [-i] [-V]

Python backup utility

optional arguments:
  -h, --help            show this help message and exit
  --path PATH [PATH ...]
                        path(s) to backup
  -o OUTFILE, --outfile OUTFILE
                        output file of backup
  --webdav URL          WebDav URL to upload to
  --remote REMOTE PATH  Remote WebDav path to upload to
  --encrypt RECIPIENT   Use gpg to encrypt file
  -z, --zip             use gzip to compress the backup file
  --rm                  remove local backup file
  -v, --verbose         enable verbose output
  -q, --quiet           suppress output
  -i, --insecure        ignore SSL certificate warnings
  -V, --version         print version of backutil

命令示例:

将两个文件备份到.tar存档: ❯ backutil --path tmp.txt tmp2.txt --outfile ~/Documents/file.tar

备份并压缩到.tar.gz存档: ❯ backutil --path tmp.txt tmp2.txt --outfile ~/Documents/file.tar.gz -z

备份到.tar存档: ❯ backutil --path tmp.txt tmp2.txt --outfile ~/Documents/file.tar -v

备份并压缩到.tar.gz存档,抑制输出: ❯ backutil --path tmp.txt tmp2.txt --outfile ~/Documents/file.tar.gz -z -q

备份文件,将其压缩并作为文件.tar.gz上载到nextcloud用户的根目录中的nextcloud webdav: ❯ backutil --path tmp.txt tmp2.txt --outfile ~/file.tar.gz --webdav 'https://cloud.example.com:8080/' --remote file.tar.gz -z

备份文件,压缩它们并将存档文件作为file.tar.gz文件上传到nextcloud用户的根目录下的nextcloud webdav,然后删除本地存档文件: ❯ backutil --path tmp.txt tmp2.txt --outfile ~/file.tar.gz --webdav 'https://cloud.example.com:8080/' --remote file.tar.gz -z --rm

配置:

backutil支持存储详细信息的配置文件,该文件支持备份的非交互使用(以防您希望将backutil作为cron作业或类似的东西运行)。

将文件作为.backutil.conf放在主目录中。目前,这是您可以使用的配置:

[WEBDAV]
Username = username
Password = mysupersecretpassword
#Command = command_to_print_password

我建议不要以明文形式存储密码,并使用gpgpass或其他安全方式从命令行打印密码,而不将其存储为未加密的。这就是配置中支持'command'指令的原因。

附加信息:

目前,webdav功能只在nextcloud的一个实例上测试过。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
spring boot在使用Java 9的SprnigBoot中找不到org/slf4j/LoggerFactory   java如何查找对象中非空属性的数量   javascript AngularJS和REST:执行删除操作,发送要删除的许多项的数组   java WAS7和Axis获得ClassCastException:IBM Crypto的TDCNP与javax不兼容。加密。密码   当从多个线程以相反顺序执行equals()时,Java的同步集合出现问题   依赖java的spring启动应用程序启动,而不是主模块sbt   java@Async阻止一个线程继续,直到其他线程完成   java按钮故障   java thymeleaf,将模型属性绑定到多个表单元素   使用泛型的java查询   java Hibernate JPA侦听器未收到调用   java如何让我的监听器工作,并用物品位置显示吐司?   java未能延迟初始化角色集合:无法初始化代理无会话   java JBPM持久性示例恢复工作流   JavaSpring以json的形式获取对对象转换的响应   java如何使用Proguard成功地用Dagger 2.0混淆项目?   Android中的java字符串拆分错误   如何使用DockerJavaLibrary启动docker容器?   C++在java中是否有条件编译?