Bash
將目錄同步到備份 gzip 文件
目的:高效的備份和傳輸
~/dircontaininginnumeraltinyfiles/
到/mnt/server/backups/dir.tgz
. 我首先想到的當然是 rsync 和 gzip。但我也對其他路線持開放態度。(在所需的備份過程結束時,
/mnt/server/backups/dir.tgz
將是完整備份,即包含所有文件,而不僅僅是自上次備份以來更改的文件。簡而言之,我只是在尋找一種更有效的壓縮和傳輸解決方案步驟比tar -cvzf /mnt/server/backups/dir.tgz ~/localdir/
。)任何文件的本地創建都是不可取的(例如本地 .tgz 備份和隨後同步到伺服器),而是在記憶體中例如通過管道在本地創建任何文件。
澄清一下,我不想簡單地將目錄 rsync 到本地網路伺服器的原因是因為源目錄包含無數、高度可壓縮的小文件。因此,出於備份目的,一個整體非常小的 .tgz 文件非常有吸引力。
也就是說,大部分文件在每次備份時都沒有變化,因此簡單
tar -cvzf /destination/blah.tgz ~/sourcedir/
的效率相當低,因此需要一種智能的、僅增量類型的壓縮方面的過程。雖然 1Gb 本地網路的數據量並不龐大,但有些只有 100Mb 的連接,因此在傳輸方面也需要一種智能的、僅限增量的過程。
附帶說明一下,我現在正在做作業的一個方面是 tar 的 –listed-incremental 選項和 gzip 的 –rsyncable 選項。
暫時使用 tar -cvzf /mnt/server/backups/dir.tgz ~/localdir/ 。恭敬地離開這個執行緒。感謝您的輸入。向所有人致以最誠摯的問候。