Tar

tar –checkpoint 以哪些單位測量?

  • December 29, 2020

GNUtar提供了在每次到達時--checkpoint都應該列印一條消息的選項。checkpoint

**問題::**在什麼--checkpoint測量?

我最好的猜測是字節。

我無法在manGNU.infotar

作業系統是 Linux,我使用 Bash,我使用tar (GNU tar) 1.26

來自info tar

使用以下選項啟用檢查點設施:

--checkpoint[=N]:在寫入或讀取每個第 N 條記錄之前安排檢查點。N 的預設值為 10。

所以預設值為N10條記錄。但到底什麼是唱片

事實上,上述記錄的含義並不容易辨別。checkpoint手冊部分沒有提示或指示info tar。不過,如果您繼續往下看,您最終會來到 和blocks部分blocking-factor

存檔中的數據被分組為 512 字節的塊。塊以整數倍數讀取和寫入,稱為記錄一條記錄 中的塊數*(即一條記錄的大小,以512字節為單位)稱為阻塞因子*。( --blocking-factor=512-SIZE)-b 512-SIZE選項指定歸檔的 阻塞因子預設阻塞因子通常為 20即 10240 字節),但可以在安裝時指定。

要找出現有檔案的阻塞因素,請使用tar --list --file=ARCHIVE-NAME. 這可能不適用於某些設備。

所以每個checkpoint record都是這麼多blocks。這可以通過 GNUtar-bor--blocking-factor=[recordsize]選項來定義。如果你這樣做:

tar --show-defaults

你應該得到如下輸出:

--format=gnu -f- -b20 --quoting-style=escape --rmt-command=/usr/lib/tar/rmt

這表明一條記錄是 20 個塊。

您還可以直接以字節為單位指定記錄大小,例如:

--record-size=SIZE[SUF] 指示在訪問檔案時對每條記錄tar使用SIZE字節。該參數可以後綴為大小後綴,例如--record-size=10K10 千字節。

引用自:https://unix.stackexchange.com/questions/153242