Davfs2によるファイルの望ましくないキャッシングに問題があります。大きなバックアップ.tar.gzファイル(4052 Mb)が別のパーティションに作成され、アップロードされます。プロセス中、そのコピーは/var/cache/davfs2/
に作成され、メインパーティションのディスクスペースを不必要に占有します。
キャッシュ関連のオプションは無効にされて/etc/davfs2/davfs2.conf
、davfs2によって受け入れられましたが、プラスの効果はありませんでした。
cache_size 0
delay_upload 0
Syslogの関連部分は次のとおりです。
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キャッシュにスペースを浪費しないようにするにはどうすればよいですか?
マウントされたDAVFS2共有は、多くの/大きなファイルと組み合わせて、ストレージプロバイダーで使用できないことがわかりました。そこで、ファイルをリモートサーバーにストリーミングするために単純なcurlラッパーコマンドを使用しました。 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>
が含まれています