Backup

如何有效地維護最新的快照 tar 存檔?

  • November 18, 2013

我有一個很大的文件目錄,我想維護一個壓縮的 tar 存檔,我可以通過 http 提供伺服器,其中包含每天更新一次的所有文件。

許多文件不會每天更改,我希望避免每天花費數小時的處理器時間來壓縮相同的文件。

tar“無法更新壓縮檔案”,所以tar uj無濟於事。

有沒有聰明的方法來做到這一點?

因為這是通過 http 訪問的,所以使用 PHP 使用以下內容即時生成 tar 文件:

<?php
   set_time_limit(1);
   header("Pragma: public"); // required
   header("Expires: 0");
   header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
   header("Cache-Control: private",false); // required for certain browsers
   header("Content-Type: application/x-bzip2; charset=binary");
   header("Content-Disposition: attachment; filename=\"archive.tar.bz2\";" );
   passthru("tar cj --exclude-vcs /path/to/files",$err);
   if ($err) {
       error_log("exit value: $err");
   }
   exit;

顯然,這對於該文件將被大量下載的情況沒有幫助。

引用自:https://serverfault.com/questions/555673