Ⅰ 固态硬盘在linux下怎么优化
1.使用Ext4 without journaling文件系统
传统的SSD+Linux组合一般推荐Ext2文件系统,主要是考虑到Ext3、Ext4需要额外的记录日志,会缩短SSD使用寿命,而且新出现的TRIM技术在Ext2中有两个缺点:
仅支持离线TRIM,换句话说文件系统必须只读挂载;
需要手动执行hdparm命令或wiper.sh脚本。
Ext4则没有这些限制,允许TRIM后台运行,并且日志记录功能可以手动关闭(没有日志的情况下,文件系统更容易损坏,如突然断电),如果你甘愿冒这样的风险,从而延长SSD使用寿命,值得一试。另外,许多测试中如:Testing EXT4 & Btrfs On A Serial ATA 3.0 SSD,像Btrfs这样为SSD准备的文件系统不如Ext4速度快(用SSD不就为了快么)。
所以,上面安装系统时,选择了Ext4系统,接下来需要关闭日志功能。
首先,系统挂载时无法停用日志功能,所以需要进入刚才的U盘系统,利用root权限执行:
tune2fs -O ^has_journal /dev/sda1
即关闭/dev/sda1上的日志功能。
然后,运行操作系统检测:
e2fsck -f /dev/sda1
不这样,文件系统可能会出错。
最后,重启,进入SSD中的系统,检查是否设置成功:
dmesg | grep EXT4
如果出现:
EXT4-fs (sda1): mounted filesystem without journal
说明设置成功。
原来是:mounted filesystem with ordered data mode
如果需要再次开启日志功能,只要运行tune2fs -O has_journal /dev/sda1即可。
2.开启TRIM功能
TRIM是一种操作系统调度SSD块写入的方式。主要是因为同一个SSD的闪存单元频繁操作会磨损,影响使用寿命,区别于传统的机械硬盘处理删除数据。Linux内核自2.6.33开始支持TRIM。
首先,检查内核版本是否支持TRIM:
uname -a
然后,检查SSD硬盘是否支持TRIM:
hdparm -I /dev/sda
如果显示比如(不同硬件可能不同提示):
* Data Set Management TRIM supported
说明支持。
这两个条件都满足,在/etc/fstab中将:
/dev/sda1 / ext4 defaults 改为:
/dev/sda1 / ext4 discard,defaults 分区、挂载点、已经存在的选项不一定一样。
测试新的fstab文件:
mount -oremount /dev/sda1
然后挂载:
mount
如果显示discard字样,说明成功,如:
/dev/sda1 on / type ext4 (rw,discard)
3.swap空间处理
对于大内存来说swap基本上都是空闲的,除非电脑进入休眠状态,系统会将内存内容转到swap中。有了SSD,开关机都在几秒中,对我来说swap没用,所以上面直接不分配swap空间。
如果分配了也行,空间要小,而且通过设置/proc/sys/vm/swappiness里面的值,来减少swap换出量:
echo 1 > /proc/sys/vm/swappiness
0到100之间,值越大换出量越大。
4.设置noatime
当访问文件时,系统会更新last-access这个文件/目录元数据,设置noatime后可以减少这种操作。
将2步中的:
/dev/sda1 / ext4 discard,defaults 改为:
/dev/sda1 / ext4 noatime,discard,defaults 测试设置成功方法与上面一样。
5.使用noop磁盘调度
通常操作系统调度机械硬盘时会提供一些数据的物理位置,这样有利于机械硬盘优化寻道,但是对SSD没意义,所以采用noop磁盘调度,即简单发送请求,可以提高效率。
可以通过以下命令查看调度方法:
cat /sys/block/sda/queue/scheler
比如显示:
[noop] deadline cfq
在/etc/rc.local中添加如下语句:
echo noop > /sys/block/sda/queue/scheler
6.内存分区加速
如果内存够大,可以用ramdisk的方式,将一些经常变化的位置如/tmp放入内存,加快速度,减少对SSD的访问。
依然是加在/etc/fstab中:
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=1777 0 0
更新方法与2相同,记得将浏览器等程序的缓存目录设置到/tmp下。
Ⅱ 双硬盘linux文件夹设置问题
刚添加的硬盘linux是认不出来的,重新启动后才会认出来硬盘。然后,你的硬盘没专有分区,也没有格式化,应该属挂载不上吧?再者说,你的根目录第一块硬盘已经挂载了,所以在根目录下面创建一个新的目录来挂载。下面来说说命令。重启电脑后,使用fdisk-l查看硬盘的信息,包括大小还有名称,如果是第二块硬盘的话,就是/dev/sdb了,然后使用fdisk/dev/sdb来进行硬盘的分区进入fdisk后可以输入h来看下帮助,n是新建分区,然后就是主分区和逻辑分区的划分了。然后就是保存分区表。接着使用mkfs工具来格式化硬盘。然后就可以挂载到目录上面了。df-h来查看硬盘容量。如果想要自动挂载就修改/etc/fstab。里面添加你要挂载的硬盘就ok。终于打完了,有什么问题可以追问。。纯手打。。
Ⅲ linux中如何查找ssd硬盘对应的文件目录在哪
其实主要就两条命令:
1./var/lib/argo/plugin/check-hd-disk |tr '&' '\n' | grep SSD
2.lsblk
第一条命令用于查找ssd硬盘所在的device name
第二条命令根据device name查找目录挂载点
Ⅳ linux下如何查询哪个磁盘是SSD
Linux
SSD是非转动磁盘, Linux可以通过读 sysfs:
cat /sys/block/sda/queue/rotational
返回 0, 就是 SSD。
Windows
据说可以用GetDriveType接口去读。
ATA命令
ATA命令里的Identify Device得到的回log中,word 217是Nominal media rotation rate,表示答RPM,转数。SSD没有转数,所以有一个标志位表示它是非转动磁盘。
Ⅳ 固态硬盘装linux,怎样分区挂载合理
无论是哪个版本来linux的分区都是源类似的。一般/boot,主分区-6以下就是200m,7就是500m,一般500mboot绝对够用了,然后就是swap分区,这个给一个内存的2倍就可以了,但是超过12g就领算了,剩下的就是 给根就好了。尽量用lvm分区吧,这个以后可以自己改变分区大小,就是这个样子了,/boot--500m,swap--2*内存,/给剩余。linux的分区更多操作建议参考《linux就该这样学》这本书,希望能够帮助到你
Ⅵ 买了块固态硬盘该怎么分区装linux
无论是哪个版本linux的分区都是类似的。一般/boot,主分区-6以下就是200m,7就是500m,一般500mboot绝对够用了回,然后就是swap分区,这个给一个答内存的2倍就可以了,但是超过12g就领算了,剩下的就是 给根就好了。尽量用lvm分区吧,这个以后可以自己改变分区大小,就是这个样子了,/boot--500m,swap--2*内存,/给剩余。linux的分区更多操作建议参考《linux就该这样学》这本书,希望能够帮助到你
Ⅶ linux读取ssd序列号
Linux查看硬盘序列号的命令是:hdparm -i /dev/sda,若该用户没有执行该命令的权限,可以加sudo 提升权限。-i参数用于显示驱动器的基本信息。/dev/sda为要查看的硬盘。可以使用fdisk -l命令查看硬盘名。
hdparm参数说明:
-a<快取分区> 设定读取文件时,预先存入块区的分区数,若不加上<快取分区>选项,则显示目前的设定。
-A<0或1> 启动或关闭读取文件时的快取功能。
-c<I/O模式> 设定IDE32位I/O模式。
-C 检测IDE硬盘的电源管理模式。
-d<0或1> 设定磁盘的DMA模式。
-f 将内存缓冲区的数据写入硬盘,并清楚缓冲区。
-g 显示硬盘的磁轨,磁头,磁区等参数。
-h 显示帮助。
-i 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供。
-I 直接读取硬盘所提供的硬件规格信息。
-k<0或1> 重设硬盘时,保留-dmu参数的设定。
-K<0或1> 重设硬盘时,保留-APSWXZ参数的设定。
-m<磁区数> 设定硬盘多重分区存取的分区数。
-n<0或1> 忽略硬盘写入时所发生的错误。
-p<PIO模式> 设定硬盘的PIO模式。
-P<磁区数> 设定硬盘内部快取的分区数。
-q 在执行后续的参数时,不在屏幕上显示任何信息。
-r<0或1> 设定硬盘的读写模式。
-S<时间> 设定硬盘进入省电模式前的等待时间。
-t 评估硬盘的读取效率(不经过磁盘cache)。
-T 平估硬盘快取的读取效率。
-u<0或1> 在硬盘存取时,允许其他中断要求同时执行。
-v 显示硬盘的相关设定。
-W<0或1> 设定硬盘的写入快取。
-X<传输模式> 设定硬盘的传输模式。
-y 使IDE硬盘进入省电模式。
-Y 使IDE硬盘进入睡眠模式。
-Z 关闭某些Seagate硬盘的自动省电功能。