2021-07-28

bcache

這邊單純的列出所有 bcache 指令

假設 /dev/sda3 為 ssd,/dev/sdb1 為 hdd

重建:

sudo apt-get install bcache-tools

wipefs -a /dev/sda3

wipefs -a /dev/sdb1

make-bcache -C /dev/sda3 -B /dev/sdb1

sudo mkdir /media/bcache

sudo mount /dev/bcache0 /media/bcache

觀察狀況:

sudo bcache-super-show -f /dev/sda3

sudo bcache-super-show -f /dev/sdb1

取得 ssd 的 uuid 塞到 sdb1 內去做 cache,最終兩個 cset.uuid 必須相同

echo 86cd72eb-3b75-4a67-866a-cdfc48e498ac > /sys/block/bcache0/bcache/attach

# 86cd72eb-3b75-4a67-866a-cdfc48e498ac 為 /dev/sda3 的 cset.uuid

取得目前是何種模式:

cat /sys/block/bcache0/bcache/cache_mode

模式有三種:

    writeback:先寫入 ssd 再寫入 hdd,適用於 hdd 過慢狀況

    writethrough:兩者 ssd 和 hdd 同時寫入

    writearound:直接寫入 hdd

修改模式:

echo "writeback" > /sys/block/bcache0/bcache/cache_mode

cache 狀況:

cat /sys/block/bcache0/bcache/state

    如果回 dirty 反而正常,有 cache 尚未回寫的意思

強制回寫內容:

echo 0 > /sys/block/bcache0/bcache/writeback_percent

回復強制回寫(預設為 10):

echo 10 > /sys/block/bcache0/bcache/writeback_percent

最終 /dev/fstab 增加

/dev/bcache0 /media/bcache ext4 rw 0 0

    請使用 mount -a 做測試

沒有留言:

張貼留言