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第三方库


热门话题
java测试访问令牌过滤器   close()上的java Apache POI运行时异常   java为什么Eclipse中的GWT总是显示错误404?   java从socket python服务器接收消息   java mediaRecorder:start()函数失败   不关闭DB连接可能是Tomcat上Java堆溢出的原因吗?   java JFrame无法关闭   java BigQuery加载本地文件不起作用,位置有问题   java可以在递归任务中使用吗?   servlets如何从JSESSIONID加载Java HttpSession?   java将JFileChooser与PDFBox一起使用时,文件不会另存为pdf,但保存时不带扩展名   java将处理结果存储在表中   java算法发现循环世界中重叠间隔的持续时间(24小时)   在windows 10上双击Eclipse安装程序可执行文件(eclipseinstjrewin64.exe)后,java不会发生任何事情   java编译和部署自定义Solr请求处理程序   Java/Android崩溃ApacheCommonsio2。4.jar   spring web应用程序中的java集成收件箱功能   java Grizzly、Jersey和Spring自动布线问题   java如何在pom中添加jar文件依赖项。xml   关于Android中大量GUI更新编码的java概念(GUI处理程序)