Deja dup:尝试读取 davfs 上的清单时权限被拒绝

Deja dup:尝试读取 davfs 上的清单时权限被拒绝

我已经使用 Déjà Dup 创建备份好几年了。最近它开始出现故障,并显示以下消息

Permission denied when trying to read ‘/duplicity-inc.20161201T072516Z.to.20161202T074205Z.manifest.gpg’.

这似乎发生了程序已将备份文件写入同一目录。文件和包含目录的所有权似乎正确:

drwxr-xr-x 2 myuser myuser 68K Dec  2 08:47 dejadup-backup/

-rw-r--r-- 1 myuser myuser 13K Dec  2 08:47 dejadup-backup/duplicity-inc.20161201T072516Z.to.20161202T074205Z.manifest.gpg

目标目录位于通过 davfs2 挂载的远程服务器上。我的/etc/fstab看起来像这样:

$ cat /etc/fstab 
...
# mount the fileserver
https://fileserver.domain /mnt/fileserver davfs user,_netdev,auto,uid=myuser,gid=myuser 0 0

有什么想法可能导致这种情况发生以及如何解决它?

答案1

使用打开调试后DEJA_DUP_DEBUG=1 deja-dup --backup > dejadup.log 2>&1,您的卸载日志文件包含:

DUPLICITY: ERROR 30 EOFError
DUPLICITY: . Traceback (most recent call last):
DUPLICITY: .   File "/usr/bin/duplicity", line 1532, in <module>
DUPLICITY: .     with_tempdir(main)
DUPLICITY: .   File "/usr/bin/duplicity", line 1526, in with_tempdir
DUPLICITY: .     fn()
DUPLICITY: .   File "/usr/bin/duplicity", line 1380, in main
DUPLICITY: .     do_backup(action)
DUPLICITY: .   File "/usr/bin/duplicity", line 1454, in do_backup
DUPLICITY: .     globals.gpg_profile.passphrase = get_passphrase(1, action)
DUPLICITY: .   File "/usr/bin/duplicity", line 198, in get_passphrase
DUPLICITY: .     pass1 = getpass_safe(_("GnuPG passphrase for decryption:") + " ")
DUPLICITY: .   File "/usr/bin/duplicity", line 93, in getpass_safe
DUPLICITY: .     return getpass.getpass(message)
DUPLICITY: .   File "/usr/lib/python2.7/getpass.py", line 83, in unix_getpass
DUPLICITY: .     passwd = fallback_getpass(prompt, stream)
DUPLICITY: .   File "/usr/lib/python2.7/getpass.py", line 118, in fallback_getpass
DUPLICITY: .     return _raw_input(prompt, stream)
DUPLICITY: .   File "/usr/lib/python2.7/getpass.py", line 135, in _raw_input
DUPLICITY: .     raise EOFError
DUPLICITY: . EOFError
DUPLICITY: . 

再进一步:

DUPLICITY: DEBUG 1
DUPLICITY: . Backtrace of previous error: Traceback (innermost last):
DUPLICITY: .   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 365, in inner_retry
DUPLICITY: .     return fn(self, *args)
DUPLICITY: .   File "/usr/lib/python2.7/dist-packages/duplicity/backend.py", line 563, in get
DUPLICITY: .     self.backend._get(remote_filename, local_path)
DUPLICITY: .   File "/usr/lib/python2.7/dist-packages/duplicity/backends/giobackend.py", line 146, in _get
DUPLICITY: .     self.__copy_file(source_file, target_file)
DUPLICITY: .   File "/usr/lib/python2.7/dist-packages/duplicity/backends/giobackend.py", line 119, in __copy_file
DUPLICITY: .     None, self.__copy_progress, None)
DUPLICITY: .  Error: g-io-error-quark: Error opening file: Operation not permitted (14)
DUPLICITY: . 

DUPLICITY: WARNING 1
DUPLICITY: . Attempt 1 failed. Error: g-io-error-quark: Error opening file: Operation not permitted (14)

因此错误一定发生在 davfs 方面,您应该调查服务器,因为本地根本没有任何问题。

答案2

对于那些通过搜索来到这里的人来说,我遇到了类似的错误,问题是我在/备份文件夹名称之前和之后放置了...

相关内容