複数のサブボリュームがマウントされている場合、btrfsでSSD Trim fstrimを実行する方法は?

複数のサブボリュームがマウントされている場合、btrfsでSSD Trim fstrimを実行する方法は?

私はbtrfsを使用しており、いくつかのサブボリュームをマウントしました(しかしbtrfsルートではありません)。 SSDパーティションにあるので、使用したいですfstrimfstrim各マウントポイントを呼び出す必要があります(各マウントポイントは異なるサブボリュームに対応します)。それとも、btrfsルートをインストールしてfstrimこのマウントポイントで実行する必要がありますか?

ベストアンサー1

fstrim「マウントポイント」で実行する必要があるため、デバイスをマウントする必要があります。ただし、物理デバイスごとに一度だけ呼び出すだけです。したがって、2つのマウントポイントがbtrfsと同じデバイスにある場合は、1つfstrimのマウントポイントを呼び出すだけです。

次の答えが見つかりました。 https://forums.gentoo.org/viewtopic-t-1003980-view-previous.html?sid=a51dab49787e5b7b6c2fa4aa7c1a5e44

私はこうする:

#!/bin/sh
LOG=/var/log/fstrim.log
echo "===" $(date -R) "===" >> $LOG
for d in $(lsblk -o MOUNTPOINT,FSTYPE | grep -E 'btrfs' | awk '{print $1}'); do
    fstrim -v $d 2>&1 >> $LOG
done

スクリプトは/etc/cron.weekly/fstrim実行可能ファイルとして配置され設定されます。

sudo chmod +x /etc/cron.weekly/fstrim

このスクリプトは lsblk を使用してブロックデバイスを一覧表示します。 "btrfs"デバイスを検索して起動中ですfstrim

おすすめ記事