固态硬盘 linux?移动硬盘装linux

固态硬盘在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/scheduler

比如显示:

[noop] deadline cfq

在/etc/rc.local中添加如下语句:

echo noop>/sys/block/sda/queue/scheduler

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下。

固态硬盘只能格式化为exFAT格式,不能分区为NTFS格式。

SSD固态硬盘可以使用NTFS分区。

硬盘常见的分区:

FAT16

简介:对电脑老手而言,对这种硬盘分区格式是最熟悉不过了,我们大都是通过这种分区格式认识和踏入电脑门槛的。它采用16位的文件分配表,能支持的最大分区为2gb,是曾经应用最为广泛和获得操作系统支持最多的一种磁盘分区格式,几乎所有的操作系统都支持这一种格式,从DOS、Win 3.x、Win 95、Win 97到Win 98、Windows NT、Windows 2000、Windows XP以及Windows Vista和Windows 7的非系统分区,一些流行的Linux都支持这种分区格式。

但是FAT16分区格式有一个最大的缺点,那就是硬盘的实际利用效率低。因为在DOS和 Windows系统中,磁盘文件的分配是以簇为单位的,一个簇只分配给一个文件使用,不管这个文件占用整个簇容量的多少。而且每簇的大小由硬盘分区的大小来决定,分区越大,簇就越大。例如1GB的硬盘若只分一个区,那么簇的大小是32KB,也就是说,即使一个文件只有1字节长,存储时也要占32KB的硬盘空间,剩余的空间便全部闲置在那里,这样就导致了磁盘空间的极大浪费。FAT16支持的分区越大,磁盘上每个簇的容量也越大,造成的浪费也越大。所以随着当前主流硬盘的容量越来越大,这种缺点变得越来越突出。为了克服FAT16的这个弱点,微软公司在 Windows 97操作系统中推出了一种全新的磁盘分区格式FAT32。

FAT32

简介:这种格式采用32位的文件分配表,使其对磁盘的管理能力大大增强,突破了FAT16对每一个分区的容量只有2GB的限制,运用FAT32的分区格式后,用户可以将一个大硬盘定义成一个分区,而不必分为几个分区使用,大大方便了对硬盘的管理工作。而且,FAT32还具有一个最大的优点是:在一个不超过8GB的分区中,FAT32分区格式的每个簇容量都固定为4KB,与FAT16相比,可以大大地减少硬盘空间的浪费,提高了硬盘利用效率,但是,FAT32的单个文件不能超过4G。

支持这一磁盘分区格式的操作系统有Windows 97/98/2000/XP/Vista/7/8等。但是,这种分区格式也有它的缺点,首先是采用FAT32格式分区的磁盘,由于文件分配表的扩大,运行速度比采用FAT16格式分区的硬盘要慢;另外,由于DOS系统和某些早期的应用软件不支持这种分区格式,所以采用这种分区格式后,就无法再使用老的DOS操作系统和某些旧的应用软件了。

NTFS

简介:NTFS是一种新兴的磁盘格式,早期在 Windows NT网络操作系统中常用,但随着安全性的提高,在 Windows Vista和 Windows 7操作系统中也开始使用这种格式,并且在 Windows Vista和 Windows 7中只能使用NTFS格式作为系统分区格式。其显著的优点是安全性和稳定性极其出色,在使用中不易产生文件碎片,对硬盘的空间利用及软件的运行速度都有好处。而且单个文件可以超过4G。它能对用户的操作进行记录,通过对用户权限进行非常严格的限制,使每个用户只能按照系统赋予的权限进行操作,充分保护了网络系统与数据的安全。

exFAT

简介:exFAT(全称Extended File Allocation Table File System,扩展FAT,即扩展文件分配表)是Microsoft在Windows Embeded 6.0(包括Windows CE 6.0、Windows Mobile)中引入的一种适合于闪存的文件系统。对于闪存,NTFS文件系统过于复杂,exFAT更为适用。

相对FAT文件系统,exFAT有如下好处:

·增强了台式电脑与移动设备的互操作能力

·单文件大小最大可达16EB(2,305,843,009,213,693,952字节,就是16M个TB,1TB=1024G)

·簇大小可高达32MB

·采用了剩余空间分配表,剩余空间分配性能改进

·同一目录下最大文件数可达65 536个

·支持访问控制

·支持TFAT

采用该文件系统的闪存盘不支持Windows Vista ReadyBoost。Windows Vista SP1支持该文件系统。

注:exFAT只是一个折中的方案,只为U盘而生。

需要严格注意的是,这种分区只有Vista、Win7、Win8等系统支持,其他系统不能使用,xp可以通过替换驱动文件的方式支持此格式,但是只能读写,不能格式化。

通过以上描述可得:SSD固态硬盘可使用NTFS格式,且使用win7及以上系统都需要使用此格式。

linux怎么判断磁盘是机械还是固态

在Linux系统中判断磁盘是机械还是固态,可以通过几种方法。常用的方法包括使用lsblk命令、查看/sys文件系统及使用hdparm命令。

使用lsblk命令列出所有磁盘设备并显示每个设备信息,其中ROTA列表示磁盘是否为旋转磁盘。如果ROTA的值为1,则表示为机械硬盘(HDD);若为0,则为固态硬盘(SSD)。

另外,通过检查/sys/block//queue/rotational文件,可以获取磁盘是否旋转的信息。将``替换为实际设备名称,如果返回值为1,表示为机械硬盘(HDD);返回值为0,则为固态硬盘(SSD)。

还可以使用hdparm工具获取磁盘旋转信息。将``替换为实际设备名称运行命令。若有输出旋转速度(如7200 rpm),表示为机械硬盘(HDD);无旋转速度输出,则可能是固态硬盘(SSD)。

以上方法在Linux系统中判断磁盘类型十分有效,仅适用于物理磁盘,对RAID或虚拟磁盘可能不适用。通过这些方法,便能在Linux系统中准确判断出磁盘是机械硬盘还是固态硬盘。

阅读剩余
THE END