trim是操作系统通知ssd标记无效数据块以优化垃圾回收的关键机制,能显著提升写入性能、降低写放大并延长ssd寿命;windows用fsutil检测启用状态,linux需验证硬件支持、内核识别及挂载参数或fstrim定时任务。

你的固态硬盘正在 silently 损耗寿命——删除文件后系统没告诉SSD“这些数据作废了”,主控还在搬运幽灵数据,写入变慢、响应延迟、颗粒提前报废。现在就动手检查并开启TRIM,整个过程不到90秒。
先确认你的SSD到底支不支持TRIM
不是所有SSD都支持TRIM,老旧SATA SSD或某些OEM定制盘可能固件不兼容。别跳过这步,否则后续操作无效。
方法一:Windows下用PowerShell快速筛
按 Win+X → 选择“Windows PowerShell(管理员)”,输入:
Get-PhysicalDisk | Where-Object {$_.MediaType -eq "SSD"} | Select-Object FriendlyName, HealthStatus, CanPool
只要显示FriendlyName且HealthStatus为“Healthy”,基本支持TRIM;若连SSD都没列出来,说明系统没识别到固态介质,先查驱动或BIOS SATA模式(必须是AHCI)。
方法二:终端直查硬件能力(更准)
在管理员CMD中运行:
sudo hdparm -I /dev/sdX | grep -i trim
(Linux用户把sdX换成你的真实盘符,比如nvme0n1或sda)
【关键提醒】看到“DataSet Management TRIM supported”才真正支持;只写“TRIM supported”但没这句的,大概率是假标,别信。
Windows下检测TRIM是否已启用
Windows 10/11默认开启TRIM,但组策略、第三方优化工具或手动关闭过都可能让它失效。必须实测,不能靠猜。
第一步:Win+R → 输入cmd → 右键“命令提示符” → “以管理员身份运行”
第二步:输入命令并回车:
fsutil behavior query disabledeletenotify
第三步:看返回值——
DisableDeleteNotify = 0 → TRIM已启用
DisableDeleteNotify = 1 → TRIM被禁用,立即执行下一步
第四步(仅当返回1时执行):
fsutil behavior set disabledeletenotify 0
第五步:重启电脑。NTFS驱动栈需重载策略,不重启设置不生效。
Linux下验证与启用TRIM
Ubuntu/Debian系默认启用,但CentOS/RHEL 8+需手动配置定时服务;Arch系则依赖用户主动设置。三步到位,覆盖主流发行版。
方法一:快速验证支持性
终端输入:
lsblk --discard
看DISC-GRAN列:数值非零(如4096、512)即表示硬件支持;若全为0,说明内核没加载discard功能或SSD固件拒绝TRIM。
方法二:确认内核是否放行TRIM
运行:
cat /sys/block/nvme0n1/queue/discard_granularity
(把nvme0n1换成你的NVMe盘名;SATA盘用sda)
输出数字 > 0 → 内核允许TRIM;输出0 → 需检查fstab挂载参数或更新内核。
方法三:强制启用(适用于ext4/xfs格式)
编辑fstab:
sudo nano /etc/fstab
找到你的SSD挂载行,在defaults后面加,discard(注意逗号前无空格):
/dev/nvme0n1p1 / ext4 defaults,discard 0 1
【重要警告】discard参数会实时发送TRIM,对高负载数据库服务器可能造成I/O抖动;生产环境建议改用fstrim定时任务,而非挂载时启用。
手动触发一次TRIM清理(Windows专属)
即使TRIM已启用,系统也可能因长期未重启或空闲不足而积压大量待清理块。开机后立刻执行一次,能立竿见影恢复随机写入性能。
打开“此电脑” → 右键C:盘 → “属性” → “工具”选项卡 → “优化”按钮
在列表中选中你的SSD → 确认“媒体类型”显示为“固态驱动器” → 点击右侧“优化”(不是“分析”)
进度条走完后,状态栏显示“上次优化:刚刚”,说明TRIM指令已真实下发至SSD主控芯片。











