私の/etc/cron.daily/fstrim
は次のようになります:
#!/bin/sh
# call fstrim-all to trim all mounted file systems which support it
set -e
# This only runs on Intel and Samsung SSDs by default, as some SSDs with faulty
# firmware may encounter data loss problems when running fstrim under high I/O
# load (e. g. https://launchpad.net/bugs/1259829). You can append the
# --no-model-check option here to disable the vendor check and run fstrim on
# all SSD drives.
exec fstrim-all --no-model-check
それでも、トリミングは毎日発生しません。私はこれをトリミングしてテストし、次に〜30GBを書き込んで削除し、24時間以上(実際には〜48時間、コンピューターをほとんど使用しませんでした)待ってから、fstrim -v /
で再度トリミングしました。 45GBは64GBディスクでトリミングされました。
なにが問題ですか?手動トリミングは機能しているようですが、cronjobのみが機能しません。ドライブはSamsung830です。
fstrim
は、すでにトリミングされているかどうかに関係なく、すべての空き領域をトリミングする場合があります。これがファイルシステムの決定です。したがって、ファイルシステムの特性について確信が持てない限り、fstrim
によって報告された値が空き領域を超えない限り、エラーを示すものではありません。
何かがトリミングされているかどうかをテストすることに関しては、あなたは試すことができます: https://unix.stackexchange.com/a/85880/30851