Linux

如何判斷 Linux 塊設備是否可修剪?

  • November 19, 2021

fstrim需要掛載Linux塊設備,而且不是很冗長。blkdiscard可以告訴,但也需要寫操作。

我可以以某種方式判斷塊設備是否支持修剪/丟棄,而無需實際嘗試修剪/丟棄上面的東西嗎?

您可以檢查設備的最大丟棄大小,例如

$ cat /sys/block/X/queue/discard_max_bytes

(酌情更換X)。

如果顯示的值大於 0,則設備支持丟棄。嚴格來說,discard_max_hw_bytes表示硬體支持什麼;discard_max_bytes表示軟體支持什麼,後者通常是相關的:

discard_max_bytes 值為 0 表示設備不支持丟棄功能。

(這discard_max_hw_bytes節中,但對兩者都有效。參考將在 5.15 中修復。)

這適用於許多不同的塊設備,而不僅僅是磁碟:循環設備、設備映射器設備等。

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