Linux 服务器 装好系统之后,想要知道硬盘的读写是否能满足服务的需要,如果不满足硬盘的IO就是服务的一个瓶颈。所以我们需要测试硬盘,测试的方法很多,本篇文章重点为大家分享一下如何使用hdpArm 和 dd 命令检测硬盘。
如何使用 hdparm 命令来检测硬盘的传输速度
以 root 管理员权限登录并执行命令:
$sudohdparm-tT/dev/sda
或者,
$sudohdparm-tT/dev/hda
输出:
/dev/sda:Timingcachedreads:7864MB2.00seconds=3935.41MB/secTimingbuffereddiskreads:204MB3.00seconds=67.98MB/sec
为了检测更精准,这个操作应该重复2-3次 。这显示了无需访问磁盘,直接从 Linux 缓冲区缓存中读取的速度。这个测量实际上是被测系统的处理器、高速缓存和存储器的吞吐量的指标。这是一个 for 循环的例子,连续运行测试 3 次:
i123;hdparm-tT/dev/hda;
这里,
-t:执行设备读取时序-T:执行缓存读取时间/dev/sda:硬盘设备文件
要 找出 SATA 硬盘的连接速度 ,请输入:
sudohdparm-I/dev/sda|grep-ispeed

输出:
*Gen1signalingspeed(1.5Gb/s)*Gen2signalingspeed(3.0Gb/s)*Gen3signalingspeed(6.0Gb/s)
以上输出表明我的硬盘可以使用 1.5Gb/s、3.0Gb/s 或 6.0Gb/s 的速度。请注意,您的 BIOS/主板必须支持 SATA-II/III 才行:
$dmesg|grep-isata|grep
linux中检测硬盘操作Linux中检测硬盘操作
你使用 dd 命令也可以获取到相应的速度信息:
dd=/dev/zeroof=/tmp/output.imgbs=8kcount=256krm/tmp/output.img
输出:
262144+0recordsin262144+0recordsout2147483648bytes(2.1GB)copied,23.6472seconds,`90.8MB/s`
下面是 推荐的 dd 命令参数:
dd=/dev/input.fileof=/path/to/output.filebs=block-sizecount=number-of-blocksoflag=dsync
这是上面命令的第三个命令的输出结果:
1+0records1+0recordsout1073741824bytes(1.1GB,1.0GiB)copied,4.23889s,253MB/s
“磁盘与存储” – GUI 工具
您还可以使用位于“系统>管理>磁盘实用程序”菜单中的磁盘实用程序。请注意,在最新版本的 Gnome 中,它简称为“磁盘”。
如何使用 Linux 上的“磁盘”测试我的硬盘的性能?
要测试硬盘的速度:
从“活动概览”中打开“磁盘”(按键盘上的 super 键并键入“disks”) 从“左侧窗格”的列表中选择“磁盘” 选择菜单按钮并从菜单中选择“测试磁盘性能……” 单击“开始性能测试……”并根据需要调整传输速率和访问时间参数。 选择“开始性能测试”来测试从磁盘读取数据的速度。需要管理权限请输入密码。
只读 Benchmark (安全模式下)
然后,选择 > 只读:
Linux中检测硬盘操作Linux中检测硬盘操作
上述选项不会销毁任何数据。
读写的 Benchmark(所有数据将丢失,所以要小心)
访问“系统>管理>磁盘实用程序菜单>单击性能测试>单击开始读/写性能测试按钮:
Linux中检测硬盘操作Linux中检测硬盘操作
如何克隆当前的系统,当系统有问题是又如何将克隆好的备份恢复?
最保险,速度最快的方法是在DOS方式下用GHOST备份和还原系统,最好是8.2版本的,支持NTFS分区,用GHOST时,在备份时,选择第一人盘,通俗的说就是GHOST,列表里显示的第一行,然后,GHOST要求你选择保存备份文件放在什么位置,选择好目录,就可以了,恢复时,过程和备份相反,先选择要恢复的GHOST文件,也就是后缀我名是的文件,然后选择要恢复到的分区,这时一定要注意了.千万不要选错了盘符,一定要看清楚了,另外要注意,备份好的GHOST文件,不要进行磁盘碎片整理,也不要再将这个文件复制到别的地方,不然出错的机会很大的,我有过这样的经历,很惨的,恢复到还剩十几秒的时候出错了.
linux系统的硬盘如何实现raid 1 硬盘对拷,越详细越好,
dd 省得被水产,多写几个字,用 dd 这个命令就行了。 做 1:1 复制应该就行了。
linux shell 硬盘文件读写校验测试脚本
读写失败时dd的返回值分别是多少一直查不到,而如果这个没法弄明白的话,校验的对错就没什么意义了(根本不知道是dd出的错还是md5sum出的错),算了,你将就一下吧,查到后改一下就好了。
#! /bin/bashinfile=$1cycle=0copy=0err=0if [ $# -ne 1 ] || [ ! -f $1 ]thenecho 用法:test
发表评论