linux ssd(linux查看硬盘是否是ssd)

很多朋友对于linux ssd和linux查看硬盘是否是ssd不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

linux查看磁盘是ssd还是hdd

1、判断cat/sys/block/*/queue/rotational的返回值。如果返回1则表示磁盘可旋转,可以判断是HDD;反之,如果返回0,则表示磁盘不可以旋转,就有可能是SSD。

注意:/sys/block/下面不只有硬盘,还可能有别的块设备,它们都会干扰你的判断。

2、使用lsblk命令进行判断,参数-d表示显示设备名称,参数-o表示仅显示特定的列。

linux如何查看磁盘是否为固态盘或者机械盘

要判断Linux中的磁盘是SSD还是HDD,可以通过多种方法。首先,通过查看/sys/block/*/queue/rotational文件,可以获取磁盘旋转状态。若返回值为1,表示磁盘可旋转,即为HDD;若返回0,则表示磁盘无法旋转,为SSD。但该方法可能存在误判,因为/sys/block/目录下可能包含其他块设备,干扰判断。

另一种方法是使用lsblk指令进行判断。参数-d和-o可以帮助你只显示设备名称,并列出特定信息。在输出中,若ROTA值为1,则表示设备可旋转,为HDD;反之,则为SSD。此方法简洁直观,且仅显示所需内容。

还有一种方法是使用fdisk指令查看磁盘详细信息。通过参数-l列出磁盘详情,分析输出以寻找HDD特有的关键词,如“磁头”(heads)、“磁道”(track)和“柱面”(cylinders)。HDD和SSD的输出结果会有所不同,从而帮助你区分它们。

此外,还可以借助第三方工具进行判断,如smartctl。这类工具的输出通常较为直观,但使用前需要单独安装。

如果你对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下。

阅读剩余
THE END