일반적으로 Duplicity를 실행할 때 실행이 끝나면 다음과 같은 오류 메시지가 표시됩니다.
Cleanup of temporary file /home/user/.cache/duplicity/9a169830d41477b2dbc3c5b32edd4e8a/duplicity-MEXhMY-tempdir/mktemp-StAkzj-1 failed
위 디렉터리에는 약 10개의 파일이 포함되어 있으며 다음에 Duplicity를 실행할 때 삭제됩니다.
증분 백업 실행이 가끔 실패하는 이유를 아시나요? 나 자신에게는 어떤 패턴도 보이지 않으며 동일한 문제를 언급하는 다른 사람을 찾을 수도 없습니다. 이메일 목록에 있는 누군가가 자신의 지역이 이중성 문제를 일으킨다고 언급한 적이 있습니다. 일반 노르웨이어 Bokmål 로케일에서 en-US로 변경해 보았지만 여전히 문제가 발생합니다.
이것은 이중성의 정상적인 작동입니까?
세 가지 다른 시스템(Ubuntu 13.04 64비트 데스크톱 2개와 Ubuntu Server 13.04 64비트 데스크톱 1개)에서 확인했습니다.
답변1
이전에 루트로 실행한 경우 이런 일이 발생할 수 있습니다 duplicity
. 이러한 파일은 루트 사용자에게 속하므로 권한이 없는 사용자는 삭제할 수 없습니다. 이 경우 파일 소유자를 변경하면 문제가 해결됩니다.
$ sudo chown -R user /home/user/.cache/duplicity/
답변2
보다 구체적인 예외 처리기를 추가하기 위해 수정 /usr/lib/python2.7/dist-packages/duplicity/tempdir.py
(또는 해당 파일이 시스템에 있는 위치)을 시도할 수도 있습니다. 다음과 같은 작업을 수행하는 것 같습니다.
except Exception:
log.Info(_("Cleanup of temporary file %s failed") % util.ufn(file))
pass
보다 구체적인 오류 처리기를 앞에 추가하면 보다 구체적인 오류 번호를 표시할 수 있습니다.
except OSError as ex:
log.Info(_("Cleanup of temporary file %s failed with errno %d") % (util.ufn(file), ex.errno))
pass
아래에서 실행하면 strace
호출의 오류 번호가 표시되지만 unlink
속도가 느려지고 로그를 위한 많은 디스크 공간이 낭비될 수 있습니다. 이중성의 성격을 고려하십시오.