ストレージ
上級

Linux TRIM/fstrim timer(リナックストリム)

Linux SSD TRIM自動化。fstrim -av(手動)・fstrim.timer(systemd・weekly)・fstrim.service・/etc/fstab discard option(非推奨・性能低下)・LVM issue_discards 1・Btrfs autodiscard=async・ZFS autotrim=on・ext4/xfs支援・nvme-cli(NVMe管理)・udevadm で状態確認・2026年Proxmox/TrueNAS/Fedora Silverblue標準、SSDロングライフ必須メンテ。

0 回閲覧
0 いいね
2026/4/25 更新
関連タグ
fstrim.timer
autotrim
discard
nvme-cli

概要

Linux では SSD の性能を維持するために「TRIM」機能が不可欠です。TRIM は不要になったブロックを SSD に通知し、フラッシュメモリの書き込み寿命を延ばします。fstrim コマンドは手動で実行でき、fstrim.timer は systemd により週次で自動実行されます。fstrim.service はタイマーが起動した際に実行されるサービスです。/etc/fstab の discard オプションは非推奨で、頻繁に書き込みが発生するとパフォーマンス低下を招くため、推奨されません。LVM では issue_discards 1、Btrfs では autodiscard=async、ZFS では autotrim=on が自動 TRIM を有効化します。ext4 と XFS も TRIM をサポートしています。NVMe デバイスの詳細情報は nvme-cli で確認でき、udevadm で現在の TRIM 状態を確認できます。2026年には Proxmox、TrueNAS、Fedora Silverblue で標準装備され、SSD の長期使用に不可欠なメンテナンス項目となっています。

主な特徴・仕組み

  • fstrim -av で全マウント済みファイルシステムを一括 TRIM
  • fstrim.timer は systemd により毎週金曜 00:00 に起動
  • fstrim.service はタイマーが起動した際に fstrim -av を実行
  • /etc/fstab の discard は即時 TRIM だが I/O スロットリングを招く
  • LVM: issue_discards 1 で論理ボリュームに TRIM を転送
  • Btrfs: autodiscard=async で非同期 TRIM を有効化
  • ZFS: autotrim=on で自動 TRIM を有効化
  • ext4/XFS: discard オプションで手動 TRIM 可能
  • nvme-cli で nvme id-ctrl から TRIM サポート確認
  • udevadm info -q property -n /dev/nvme0n1 | grep TRIM で状態確認

スペック/製品比較表

製品名容量インターフェースTRIM 対応価格帯
Samsung 970 EVO Plus 1TB1TBPCIe 3.0 x4あり¥18,800
Crucial MX500 500GB500GBSATA 6Gb/sあり¥9,200
WD Blue SN570 500GB500GBPCIe 3.0 x4あり¥10,500
Intel 660p 1TB1TBPCIe 3.0 x4あり¥15,400
Kingston A2000 1TB1TBPCIe 3.0 x4あり¥12,300

※価格は 2025年時点の平均値です。

具体例・対応製品

  • Samsung 970 EVO Plus 1TB:PCIe 3.0 x4、最大 3,500MB/s の読み込み速度。
  • Crucial MX500 500GB:SATA 6Gb/s、最大 560MB/s の読み込み速度。
  • WD Blue SN570 500GB:PCIe 3.0 x4、最大 3,000MB/s の読み込み速度。
  • Intel 660p 1TB:PCIe 3.0 x4、最大 2,400MB/s の読み込み速度。
  • Kingston A2000 1TB:PCIe 3.0 x4、最大 2,200MB/s の読み込み速度。

自作PCでの選び方・注意点

  • インターフェースの選択:PCIe 3.0 x4 以上を推奨。SATA 6Gb/s はコスト重視。
  • TRIM サポート確認:nvme id-ctrl で TRIM フラグが立っているか確認。
  • ファームウェア更新:最新ファームウェアで TRIM の安定性が向上。
  • タイマー設定:systemctl enable --now fstrim.timer で週次実行を有効化。
  • LVM 使用時:lvm lvchange -o issue_discards=1 <lv> を実行。
  • Btrfs 使用時:btrfs filesystem defrag -r /mnt で TRIM を手動実行。
  • ZFS 使用時:zpool set autotrim=on <pool> で自動 TRIM を有効化。
  • SATA SSD:/etc/fstab の discard は避け、fstrim.timer を利用。
  • NVMe SSD:fstrim -av で全デバイスを一括 TRIM。
  • 長期使用:TRIM を週次で実行し、書き込み寿命を最大化。

関連用語との違い

  • discard:即時 TRIM を行うオプション。頻繁に書き込みがあると I/O スロットリングを招く。
  • autotrim:ZFS の設定で自動 TRIM を有効化。
  • autodiscard:Btrfs の設定で非同期 TRIM を有効化。
  • fstrim.timer:systemd により週次で fstrim を実行。
  • nvme-cli:NVMe デバイスの情報取得ツール。

よくある質問

Q1. fstrim.timer は毎日実行されますか?
A1. 週次(毎週金曜 00:00)に実行されます。頻繁に書き込みがある場合は手動で fstrim -av を実行してください。

Q2. /etc/fstab の discard オプションは使わない方が良いですか?
A2. はい。頻繁に書き込みがあるとパフォーマンス低下を招くため、週次 TRIM を推奨します。

Q3. NVMe SSD で fstrim を実行しても効果がない場合は?
A3. NVMe デバイスが TRIM をサポートしていないか、ファームウェアが古い可能性があります。nvme id-ctrl で確認し、必要なら更新してください。

まとめ

Linux で SSD の寿命を最大化するには、TRIM を定期的に実行することが不可欠です。fstrim.timer を有効化し、LVM、Btrfs、ZFS で自動 TRIM を設定すれば、手間なく長期的に安定した性能を維持できます。2026年に標準装備される主要ディストリビューションでは、TRIM の自動化がデフォルトで有効になるため、ユーザーは設定を最小限に抑えつつ SSD のメリットを享受できます。次世代のストレージ環境を構築する際は、TRIM の仕組みを理解し、適切に運用することが鍵となります。

この記事について
カテゴリーストレージ
難易度上級
作成日2026/4/23