该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

1)Trim的作用

原本在机械硬盘上,写入数据时,Windows会通知硬盘先将以前的擦除,

再将新的数据写入到磁盘中。而在删除数据时,Windows只会在此处做

个标记,说明这里应该是没有东西了,等到真正要写入数据时再来真正

删除,并且做标记这个动作会保留在磁盘缓存中,等到磁盘空闲时再执行。

这样一来,磁盘需要更多的时间来执行以上操作,速度当然会慢下来。

而当Windows识别到SSD并确认SSD支持Trim后,在删除数据时,会不

向硬盘通知删除指令,只使用Volume Bitmap来记住这里的数据已经删除。

Volume Bitmap只是一个磁盘快照,其建立速度比直接读写硬盘去标记删

除区域要快得多。这一步就已经省下一大笔时间了。然后再是写入数据的

时候,由于NAND 闪存保存数据是纯粹的数字形式,因此可以直接根据

Volume Bitmap的情况,向快照中已删除的区块写入新的数据,而不用花

时间去擦除原本的数据。

以上就是Trim的原理以及真正作用。

注意:如果SSD组RAID0后,将失去Trim功能

2)网上常见的方法是在挂载SSD分区时加(/etc/fstab)入discard参数,

但是有人的观点是这样做对大多数SSD来说并不是一个好方法,这里介绍

另一种方法——通过cron的daily任务来实现。下面介绍过程,非常简单

A)确定内核版本在2.6.33以上(archlinux保持更新的话无需关心这一点)

B)确保SSD支持TRIM,方法为终端运行:

sudo hdparm -I /dev/sda | grep "TRIM supported"

查看输出是否有TRIM supported字样(上面命令中sda根据实际情况进行替换)

C)确保分区是btrfs或者ext4

D)在/etc/cron.daily/下添加一个文本文件,这里就叫做trim,然后用编辑器

(sudo)打开,输入下面内容:

#!/bin/sh

LOG=/var/log/trim.log

echo "*** $(date -R) ***" >> $LOG

fstrim -v / >> $LOG

fstrim -v /home >> $LOG

保存退出。最后两行是核心命令,这里举的例子适用于“/”和“/home”独立分区

并挂载SSD的情形,实际情况因人而异,须做相应调整。

你可以先在终端运行

sudo fstrim -v /

来查看fstrim是否可以正常运行,输出应该类似于:

/: 8158715904 bytes were trimmed

E)给/etc/cron.daily/trim增加可执行权限:

sudo chmod +x /etc/cron.daily/trim

F)这样就可以保持trim始终在后台运行了(当然你需要crond的后台进程)

备注:我没有SSD,所以无法在这里做小白鼠,如果你希望提升SSD运行的性能,

可以参考本贴的内容。

Linux怎么对文件内容trim,【转载】在linux下开启TRIM对SSD性能优化相关推荐

  1. linux中搜索文件内容关键字--转载哈

    linux中搜索文件内容关键字 度娘了下,想找的答案就是这个,发现一堆xxxx的回答,在此记录下,方便以后查阅.谢谢 linux系统里的VI是编辑文本的命令,在vi里查找相应关键字的方法为: /关键字 ...

  2. linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)

    转自 http://blog.csdn.net/werm520/article/details/49334513 grep -rl '10.100.137.5' | xargs sed -i '10. ...

  3. linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)...

    1. sed grep -rl matchstring somedir/ | xargs sed -i 's/string1/string2/g' 例如: 对象:文件夹 grep -rl 'windo ...

  4. linux 批处理 exe文件内容,Linux_DOS批处理文件,DOS下的可执行文件有三种,分 - phpStudy...

    DOS批处理文件 DOS下的可执行文件有三种,分别是EXE,COM和BAT.其中,EXE和COM文件都是二进制形式的,只有BAT文件是文本形式的,可以直接阅读.因 此,BAT文件和以上二进制可执行文件 ...

  5. linux查看日志文件内容命令tail、cat、tac、head、echo、vi

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log 你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, --------- ...

  6. linux打开文件命令occ,Linux系统查看文件内容的命令有哪些?

    Linux文件内容查阅,可以使用命令来实现.cat, tac, more,包括nl等命令都可以用来查阅文件内容,本文就通过举例的方式来介绍一下,Linux系统查看文件内容的命令有哪些. /messag ...

  7. linux命令看文件内容,Linux文件内容查看相关命令

    1.more命令 在Linux中,more命令是一个基于vi编辑器的文本过滤器,它能以全屏的方式按页显示文本文件的内容,more里面内置了一些快捷键. (1)命令语法 more(选项)(参数) (2) ...

  8. linux view查看日志命令,linux查看日志文件内容命令tail、cat、tac、head、echo、vi

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log 你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, --------- ...

  9. java查看日志命令_[Java教程]【Linux】linux查看日志文件内容命令tail、cat、tac、head、echo...

    [Java教程][Linux]linux查看日志文件内容命令tail.cat.tac.head.echo 0 2017-11-14 12:00:29 linux查看日志文件内容命令tail.cat.t ...

  10. linux view查看日志命令,【Linux】linux查看日志文件内容命令tail、cat、tac、head、echo...

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log 你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, --------- ...

最新文章

  1. [原]执行存储过程后返回影响的行数
  2. sequoiadb sdbexprt 导入工具进阶使用
  3. 执着的力量——读《钢铁是怎样炼成的》有感
  4. 使用 Roslyn 编译器服务
  5. Jsp2.0自定义标签(第二天)——自定义循环标签
  6. zuul集成cloud_如何在具有持续集成的Google Cloud Run上运行Laravel-分步指南
  7. 配置Typescript+Node环境
  8. 在server 2008R2组策略所有域计算机防火墙都处于更关闭状态
  9. 100台电脑无盘服务器配置,100台网吧无盘系统配三星840PRO方案解读
  10. 2021-5-1电脑配置及组装教程
  11. 关于.length与.length()的问题
  12. jle汇编_x86汇编指令集大全(带注释)
  13. 北京师范大学网络教育计算机动画,北师大网络教育《计算机动画》在线作业.pdf...
  14. python正则表达式替换excel_在 Excel 中使用正则表达式进行查找与替换
  15. 数据结构与算法的学习——思维的学习与高屋建瓴
  16. 线性代数回顾——协方差与逆矩阵
  17. 计算机网络安全技术复习知识点总结
  18. 【MM小贴士】SAP工序外协初探
  19. 简单的企业电子传真解决方案
  20. java+jsp+servlet+sqlserver(mysql)出租车管理系统

热门文章

  1. 为什么特斯拉车钥匙电池,使用不到1年就需更换一次,而蒙迪欧致胜2.0T时尚版车钥匙电池可以使用10年。前期文章对特斯拉车钥匙功耗情况做了专题评测,用低功耗分析仪再来看看这款福特车钥匙的低功耗控制情况。
  2. 微信小程序怎么改变默认的打开页面?
  3. 【Python蓝桥杯】圆的面积 给定圆的半径r,求圆的面积。
  4. 阻止iCloud同步node_modules目录
  5. SpringBoot工程热部署
  6. 全面解析Android EditText以及软键盘的设置
  7. jquery实现滑动标尺
  8. HFSS学习笔记(一)基础篇 操作界面简介和使用前的准备工作
  9. findIndex的使用
  10. 利用MATLAB控制HFSS进行仿真