我们正在研究在一组 SSD 磁盘上使用 BtrFS,我被要求验证 BtrFS 确实在删除文件时执行 TRIM 操作。到目前为止,我一直无法验证 TRIM 命令是否已发送到磁盘。
我知道 BtrFS 不被视为生产就绪,但我们喜欢最前沿的技术,因此我正在测试它。服务器是 Ubuntu 11.04 服务器 64 位版本(mkfs.btrfs 版本 0.19)。我已经安装了 Linux 3.0.0 内核,因为BtrFS 更改日志指出在 Ubuntu 11.04 (2.6.38) 附带的内核中批量 TRIM 不可用。
这是我的测试方法(最初采用http://andyduffell.com/techblog/?p=852,经过修改以与 BtrFS 一起使用):
for i in {0..10} ; do let A="$i * 65536" ; hdparm --trim-sector-ranges $A:65535 --please-destroy-my-drive /dev/sda ; done./sectors.pl |grep + | tee sectors-$(date +%s)fdisk /dev/sdamkfs.btrfs /dev/sda1sudo mount -t btrfs -o ssd /dev/sda1 /mnt