為什麼我的 USB 記憶棒上的相同檔案更大?

為什麼我的 USB 記憶棒上的相同檔案更大?

當我將檔案複製到 USB 裝置時,它們的大小似乎變大了。

我有一個名為 testdir 的目錄,其中包含一堆 ascii 文字檔。原目錄:

$ du -hs testdir
22M

我將目錄複製到我的 USB 設備

$ du -hs testdir
82M

我檢查了內容。它們是完全相同的。我能想到的唯一不同的是檔案系統:

$ lsblk -f
...
 sdb                                                        
└─sdb1 ext4           ce7a8f47-699d-450a-9391-932e75e6eb44 /
sdc                                                        
└─sdc1 vfat           F474B7AA74B76DCC                     /mnt/usbstick
...

為什麼是這樣?

答案1

簡短回答:塊大小

更長的答案:USB 驅動器的區塊大小很可能比硬碟的區塊大小更大。檔案系統本質上無法僅使用區塊的一部分,結果是即使資料量僅為區塊大小的一小部分,也會使用整個區塊。

正如您所說,由於您有“一堆 ascii 文字檔案”,這會放大問題,因為這些文件通常非常小。例如,如果您的區塊大小為 16Kb,則檔案將至少佔用那麼多空間,無論其實際大小如何。

您可以使用此命令查看分區塊大小(需要 root):

blockdev --getbsz /dev/XXXX

....其中 XXX 是分區的設備節點。

相關內容