davfs2가 파일을 불필요하게 캐싱하는 데 문제가 있습니다. 다른 파티션에 대용량 백업 .tar.gz 파일(4052Mb)을 생성하고 업로드합니다. 이 프로세스 중에 복사본이 생성되어 /var/cache/davfs2/
기본 파티션에서 불필요한 디스크 공간을 소비하게 됩니다.
캐시 관련 옵션은 비활성화 /etc/davfs2/davfs2.conf
되어 긍정적인 효과 없이 davfs2에서 허용됩니다.
cache_size 0
delay_upload 0
시스템 로그의 관련 부분은 다음과 같습니다.
Mar 27 03:00:01 ubuntu mount.davfs: davfs2 1.4.7
Mar 27 03:00:01 ubuntu mount.davfs: /sbin/mount.davfs <...> -o rw
<...>
Mar 27 03:12:16 ubuntu mount.davfs: open files exceed max cache size by 4052 MiBytes
davfs2 캐시에 공간이 낭비되지 않도록 캐싱 동작을 완전히 비활성화하려면 어떻게 해야 합니까?
답변1
마운트된 DAVFS2 공유가 파일이 많거나 큰 파일이 있는 저장소 공급자와 작동하지 않는 것으로 나타났습니다. 그래서 저는 간단한 컬 래퍼 명령을 사용하여 파일을 원격 서버로 스트리밍합니다. TMP 파일이 필요하지 않습니다!
echo "Creating folder: $(curl -sK /etc/davfs2/curl -X MKCOL $backup_url/$tag)"
echo "Uploading zipped files: $($tarcmd | curl -T- -sK /etc/davfs2/curl $backup_url/$tag/$today.tar.xz)"
echo "Uploading zipped SQL dump: $(mysqldump db_$tag | xz | curl -T- -sK /etc/davfs2/curl $backup_url/$tag/$today.sql.xz)"
내 /etc/davfs2/curl
포함--user <USER>:<PASS>