SSD | 高価 | 高速 |
HDD | 安価 | 低速 |
SSD | 512GB (/dev/nvme0n1p) |
SSD | 60GB (/dev/sdb) |
HDD | 1TB (/dev/sda) |
/dev/nvme0n1p1 | /boot/efi | efi | 537MB | 537MBの根拠は http://www.rodsbooks.com/efi-bootloaders/principles.html |
/dev/nvme0n1p2 | / | ext4 | 512GB | |
/dev/sda1 | swap | 128GB | hibernateのため、最低必要量(メモリ容量の2倍)の2倍を確保 | |
/dev/sda2 | 768GB | HDD | ||
/dev/sdb1 | 60GB | SSD |
書き込みキャッシュ | 読み込みキャッシュ | SSD故障時 | 備考 | |
writethrough | ✓ | 安全 | ||
writeback | ✓ | ✓ | 壊れる | |
writearound | ✓ | ✓ | 壊れる | Backendを複数設定する |
none | 安全 | (一時的に)キャッシュを使わないようにする |
$ cat /sys/block/bcache0/bcache/cache_mode [writethrough] writeback writearound none
# echo "writeback" > /sys/block/bcache0/bcache/cache_mode
w /sys/block/bcache0/bcache/cache_mode - - - - writebackcf. man tmpfiles.d
$ sudo apt install bcache-tools
$ sudo wipefs -a /dev/sda2 $ sudo wipefs -a /dev/sdb1
$ sudo make-bcache -B /dev/sda2 -C /dev/sdb1このコマンドで作られる /dev/bcache0 は、普通のディスクスライスとして使える
$ cat /sys/block/bcache0/bcache/cache_mode [writethrough] writeback writearound none
$ sudo mkfs -t ext4 /dev/bcache0
# init 1 # cd /mnt # mkdir var_new # mount /dev/bcache0 var_new/ # rsync -au /var/* var_new/
# mv /var /var_old # mkdir /var
UUID=d5817f98-b3a2-4db7-abfc-e5b8a1934138 /var ext4 nodev,nofail 0 0
$ sudo fdisk -l $ sudo ls -l /dev/disk/by-uuid/で調べる
$ sudo mount -aを実行する
$ sudo dd if=/dev/zero of=/var/bench bs=64k count=32K conv=fdatasync 32768+0 レコード入力 32768+0 レコード出力 2147483648 bytes (2.1 GB, 2.0 GiB) copied, 11.8105 s, 182 MB/s $ sudo dd if=/var/bench of=/dev/null 4194304+0 レコード入力 4194304+0 レコード出力 2147483648 bytes (2.1 GB, 2.0 GiB) copied, 3.94766 s, 544 MB/s