- 浏览: 4407041 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (634)
- Oracle日常管理 (142)
- Oracle体系架构 (45)
- Oracle Tuning (52)
- Oracle故障诊断 (35)
- RAC/DG/OGG (64)
- Oracle11g New Features (48)
- DataWarehouse (15)
- SQL, PL/SQL (14)
- DB2日常管理 (9)
- Weblogic (11)
- Shell (19)
- AIX (12)
- Linux/Unix高可用性 (11)
- Linux/Unix日常管理 (66)
- Linux桌面应用 (37)
- Windows (2)
- 生活和工作 (13)
- 私人记事 (0)
- Python (9)
- CBO (15)
- Cognos (2)
- ORACLE 12c New Feature (2)
- PL/SQL (2)
- SQL (1)
- C++ (2)
- Hadoop大数据 (5)
- 机器学习 (3)
- 非技术 (1)
最新评论
-
di1984HIT:
xuexilee!!!
Oracle 11g R2 RAC高可用连接特性 – SCAN详解 -
aneyes123:
谢谢非常有用那
PL/SQL的存储过程和函数(原创) -
jcjcjc:
写的很详细
Oracle中Hint深入理解(原创) -
di1984HIT:
学习了,学习了
Linux NTP配置详解 (Network Time Protocol) -
avalonzst:
大写的赞..
AIX内存概述(原创)
概述
随着硬盘容量、速度的快速发展,硬盘的可靠性问题越来越重要,今天的单块硬盘存储容量可轻松达到1TB,硬盘损坏带来的影响非常巨大。
不同的文件系统(xfs,reiserfs,ext3)都有自己的检测和修复工具。检测之前可以先使用dmesg命令查看有没有硬件I/O故障的日志,如果有,先用fsck看看是不是文件系统有问题,如果不是则可以使用下面介绍硬盘检测和优化方法来修复它。 grep"error"/va/log/messages*;
Linux检测硬盘坏道
使用SMART检测硬盘
SMART是一种磁盘自我分析检测技术,早在90年代末就基本得到了普及每一块硬盘(包括IDE、SCSI),在运行的时候都会将自身的若干参数记录下来,这些参数包括型号、容量、温度、密度、扇区、寻道时间、传输、误码率等。硬盘运行了几千小时后,很多内在的物理参数都会发生变化,某一参数超过报警阈值,则说明硬盘接近损坏,此时硬盘依然在工作,如果用户不理睬这个报警继续使用,那么硬盘将变得非常不可靠,随时可能故障。
启用SMART
SMART是和主板BIOS上相应功能配合的,要使用SMART,必须先进入到主板BIOS设置里边启动相关设置。一般从Pentium2级别起的主板,都支持SMART,BIOS启动以后,就是操作系统级别的事情了(Windows没有内置SMART相关工具,需要安装第三方工具软件),好在Linux上很早就有了SMART支持了,如果把Linux装在VMware等虚拟机上,在系统启动时候可以看到有个服务启动报错:smartd。这个服务器就是smart的daemon进程(因为vmware虚拟机的硬盘不支持SMART,所以报错)。smartd是一个守护进程(一个帮助程序),它能监视拥有自我监视,分析和汇报技术(Self-Monitoring, Analysis, and Reporting Technology - SMART)的硬盘。SMART体系使得硬盘能监视并汇报自己的运行状况.它的一个重要特性是能够预测失败,使得系统管理员能避免数据丢失。
smartctl简单用法
smartctl -a <device> 检查该设备是否已经打开SMART技术。 smartctl -s on <device> 如果没有打开SMART技术,使用该命令打开SMART技术。 smartctl -t short <device> 后台检测硬盘,消耗时间短; smartctl -t long <device> 后台检测硬盘,消耗时间长; smartctl -C -t short <device> 前台检测硬盘,消耗时间短; smartctl -C -t long <device> 前台检测硬盘,消耗时间长。其实就是利用硬盘SMART的自检程序。 smartctl -X <device> 中断后台检测硬盘。 smartctl -l selftest <device> 显示硬盘检测日志。 smartctl -l error <device> 显示硬盘错误汇总。
首先通过dmesg工具,确认一下硬盘的设备符号。例如一个IDE硬盘连接到Primary IDE 总线上的Slave位置,硬盘设备符号是/dev/hdb,hdb中的h代表IDE,如果显示为sdb,则代表SATA和SCSI,最后一个字幕b代表Primary总线,第二块硬盘即Slave位置,确认硬盘是否打开了SMART支持:
# smartctl -i /dev/sda
smartctl 5.40 2010-10-16 r3189 [i386-redhat-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF INFORMATION SECTION ===
Device Model: HITACHI HTS543225L9SA00
Serial Number: 090131FB2F32YLG28JEA
Firmware Version: FBEZC48C
User Capacity: 250,059,350,016 bytes
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: ATA-8-ACS revision 3f
Local Time is: Wed May 25 10:10:39 2011 CST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled //表示启用了smart支持
如果看到SMART support is: Disabled表示SMART未启用,执行如下命令,启动SMART
# smartctl --smart=on --offlineauto=on --saveauto=on /dev/sda
smartctl 5.40 2010-10-16 r3189 [i386-redhat-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enabled.
SMART Attribute Autosave Enabled.
SMART Automatic Offline Testing Enabled every four hours.
现在硬盘的SMART功能已经被打开,执行如下命令查看硬盘的健康状况
# smartctl -H /dev/sda
smartctl 5.40 2010-10-16 r3189 [i386-redhat-linux-gnu] (local build)
Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
请注意result后边的结果:PASSED,这表示硬盘健康状态良好;如果这里显示Failure,那么最好立刻给服务器更换硬盘。SMART只能报告磁盘已经不再健康,但是报警后还能继续运行多久是不确定的。通常,SMART报警参数是有预留的,磁盘报警后,不会当场坏掉,一般能坚持一段时间,有的硬盘SMART报警后还继续跑了好几年,有的硬盘SMART报错后几天就坏了。但是一旦出现报警,侥幸心里是万万不能的……
#smartctl -A /dev/sda 查看硬盘的详细信息
#smartctl -s on /dev/sda 如果没有打开SMART技术,使用该命令打开SMART技术。
#smartctl -t short /dev/sda 后台检测硬盘,消耗时间短;
#smartctl -t long /dev/sda 后台检测硬盘,消耗时间长;
#smartctl -C -t /dev/sda short前台检测硬盘,消耗时间短;
#smartctl -C -t /dev/sda long前台检测硬盘,消耗时间长。其实就是利用硬盘SMART的自检程序。
#smartctl -X /dev/sda 中断后台检测硬盘。
#smartctl -l selftest /dev/sda 显示硬盘检测日志。
#smartctl -l error /dev/sda 显示硬盘错误汇总。
如果需要定期登录到服务器上运行smartctl比较麻烦时,linux还提供了系统进程smartd,编辑配置文件:1 vi /etc/smartd.conf
这个配置文件中大部分可能是注释掉的说明,只需要写入和当前硬盘相关的配置即可:
/dev/sda -H -m test@test123123.com |
// 监控磁盘的健康状态,当SMART中报告 PASSED的时候不理睬。一旦出现 Failure,立刻用邮件通知用户指定的邮箱 |
/dev/sda -a -m admin@example.com,root@localhost | // 监控磁盘的所有属性,当SMART中报告 PASSED的时候不理睬。一旦出现 Failure,立刻用邮件通知用户指定的邮箱 |
/dev/twa0 -d 3ware,0 -a -s L/../../7/00
|
// 监控3ware 9000控制器上的第一个ATA磁盘的所有属性,在每个礼拜天的00:00--01:00进行长格式的自我检测 |
/dev/sg2 -d areca,1 -a -s L/../(01|15)/./22 |
// 监控Areca Raid控制器上的第一个SATA磁盘的所有属性,在每个礼拜月的第1天和第15天的22:00--23:00进行长格式的自我检测 |
-s (O/../.././(00|06|12|18)|S/../.././01|L/../../6/03) |
//
在每天的00:00,06:00,12:00,18:00进行离线的自检,并在每天的01:00-02:00进行短格式的自检,并在每个礼拜6的03:00-04:00进行长格式的自检
|
配置好 smartd.conf后需执行
/etc/init.d/smartd restart 即可生效
其他和smartd.conf相关的配置可参见:
http://smartmontools.sourceforge.net/man/smartd.conf.5.html
使用
badblocks检测硬盘坏块
badblocks命令可以检查磁盘装置中损坏的区块。执行该指令时须指定所要检查的磁盘装置,及此装置的磁盘区块数。
语法与参数: 语法:badblocks [-svw][-b ][-o ][磁盘装置][磁盘区块数][启始区块]参数: -b 指定磁盘的区块大小,单位为字节。-o 将检查的结果写入指定的输出文件。-s 在检查时显示进度。-v 执行时显示详细的信息。-w 在检查时,执行写入测试。 [磁盘装置] 指定要检查的磁盘装置。[磁盘区块数] 指定磁盘装置的区块总数。 [启始区块] 指定要从哪个区块开始检查。
badblocks检测磁盘坏块:
badblocks -s//显示进度 -v//显示执行详细情况 /dev/sda1
# badblocks -s -v /dev/sda
正在检查从 0 到 244198583的块
Checking for bad blocks (read-only test): ^C0.10% done, 0:04 elapsed
Interrupted at block 272896
$badblocks -s//显示进度 -w//以写去检测 -v//显示执行详细情况 /dev/sda2
# badblocks -w -s -v /dev/sda1
Checking for bad blocks in read-write mode
From block 0 to 25607577
Testing with pattern 0xaa: ^C0.73% done, 0:03 elapsed
注意,不能以写的方式检测已经挂载的硬盘
使用hdparm测试
测试硬盘读写速度
# hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads:
1918 MB in 2.00 seconds = 959.62 MB/sec
Timing buffered disk reads: 184 MB in 3.00 seconds = 61.26 MB/sec
hdparm可检测,显示与设定IDE或SCSI硬盘的参数。
语法:
hdparm [-CfghiIqtTvyYZ][-a <快取分区>][-A <0或1>][-c <I/O模式>][-d <0或1>][-k <0或1>][-K <0或1>][-m <分区数>][-n <0或1>][-p <PIO模式>][-P <分区数>][-r <0或1>][-S <时间>][-u <0或1>][-W <0或1>][-X <传输模式>] [设备]
-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 评估硬盘的读取效率。 -T 平谷硬盘快取的读取效率。-u<0或1> 在硬盘存取时,允许其他中断要求同时执行。-v 显示硬盘的相关设定。 -W<0或1> 设定硬盘的写入快取。-X<传输模式> 设定硬盘的传输模式。-y 使IDE硬盘进入省电模式。 -Y 使IDE硬盘进入睡眠模式。-Z 关闭某些Seagate硬盘的自动省电功能。
参考至:http://hi.baidu.com/dmkj2008/blog/item/df3b031bb514abc1ac6e757f.html
http://smartmontools.sourceforge.net/man/smartd.conf.5.html
http://www.bsdlover.cn/html/32/n-5332.html
本文原创,转载请注明作者、出处
如有错误,欢迎指正
邮箱:czmcj@163.com
发表评论
-
Linux OOM机制介绍
2018-06-06 11:27 3459Linux系统运行过程中,有时候会在message中看 ... -
Linux启动过程--从引导说起
2016-09-23 13:49 1175Linux的引导过程是一个用来初始化系统的程序。它包含了在打 ... -
基于案例学SQL优化第5周脚本
2015-04-12 19:35 0===============BEGIN=========== ... -
重启linux network服务/etc/resolv.conf信息丢失的解决方案
2014-11-13 13:38 3111修改/etc/resolv.conf,修改后重启服务 ser ... -
linux sudo 命令
2014-11-04 15:01 1331“Sudo”是Unix/Linux平台上的一个非常有用的工具 ... -
linux sudo,su和打开终端速度很慢
2014-11-04 09:42 4276一、症状sudo指令执行速度很慢,例如:sudo -u ro ... -
Linux NFS服务器的安装与配置
2014-10-15 00:00 1008一、NFS服务简介 N ... -
DISPLAY变量和xhost(原创)
2014-10-14 16:58 60570DISPLAY 在Linux/Unix类操作系统上, D ... -
Linux NTP配置详解 (Network Time Protocol)
2014-10-02 21:49 18493Network Time Protocol (NTP) ... -
Linux下DNS服务器的设置
2014-10-02 21:43 1464环境:要设的DNS机子 ... -
nslookup工具的使用方法
2014-10-02 21:35 6918配置好DNS服务器,添加 ... -
ntpd与ntpdate的区别
2014-10-02 17:57 1141之前配置ntpd的时候搜到一句话,印象很深刻,也觉得很有标题 ... -
认识/etc/fstab和/etc/mtab文件
2014-09-20 12:27 3161fstab fs tab(描述 各 ... -
扩展Linux swap分区 两种方法
2014-09-16 17:23 1543先来查询一下系统的swap [root@localhost ... -
vim切换tab标签快捷键
2014-06-22 17:16 19480这几天在学习VIM,在WIN7下装了GVIM,在折腾好配置文 ... -
如何看linux是32位还是64位
2014-04-27 14:09 1674查看linux机器是32位还是64位的方法:方法一:file ... -
iSCSI的配置(target/initiator)
2014-04-27 13:45 54479iSCSI 是一种 SAN的设备而 SAN的设备主要是提供 ... -
linux kudzu作用与操作方法(原创)
2013-08-29 22:03 2867概述kudzu是在linux系统启动时用来检测硬件的,一般在 ... -
Linux下获取详细硬件信息的工具:Dmidecode命令详解
2013-08-29 21:52 2539Dmidecode 这款软件允许 ... -
DAS,NAS,SAN和ISCSI存储架构介绍(原创)
2013-06-23 10:22 16120DASDAS是Direct Attached Stor ...
相关推荐
标题中的“Linux下硬盘检测程序”指的是在Linux操作系统中用于检查和分析硬盘健康状况的工具。这类工具通常利用S.M.A.R.T(Self-Monitoring, Analysis, and Reporting Technology)技术来获取硬盘自我监测的数据,...
Linux 系统中 hdparm 硬盘检测工具的使用 hdparm 是一个功能强大的硬盘检测工具,主要用于查看硬盘的相关信息、测速、优化和修改硬盘相关参数设定。在 Linux 系统中,hdparm 工具可以帮助用户快速地了解硬盘的状态...
短时间自检通常只需要几分钟,主要用于快速检测硬盘是否存在明显的错误;而长时间自检则更彻底,可能需要几个小时,能够检测到更深层次的硬盘问题。这些自检结果对于预知硬盘可能出现的故障非常有帮助。 ### 5. `...
在 Linux 中,还可以使用其他命令来检测硬盘的健康状态,例如,使用 hdparm 命令可以检测硬盘的健康状态: hdparm -I /dev/sda 这条命令可以显示硬盘的详细信息,包括型号、容量、温度、密度等参数。 检测硬盘的...
标题中的“Windows下查看识别Linux硬盘工具”指的是在Windows操作系统中能够读取和访问Linux文件系统的软件或驱动程序。在Windows环境下,由于默认不支持Linux的EXT2、EXT3、EXT4等文件系统,因此无法直接打开或读取...
在Linux系统中,备份硬盘是一项重要的任务,可以保护数据免受意外损失。本文将详细讲解如何将一个Linux硬盘上的内容备份到另一个硬盘上,并探讨相关的Linux命令和注意事项。 首先,我们要了解基本的备份原理。在...
在Linux操作系统中,管理硬盘分区是一项重要的任务,尤其对于服务器管理员和高级用户而言。Linux提供了多种硬盘分区工具,其中GParted(全称GNU Partition Editor)是广泛使用的一款图形化界面工具,它允许用户创建...
通过此软件可以查看linux系统的硬盘健康使用情况,很实用的一款软件。
### Linux与FreeBSD下检测硬盘坏道的详细指南 硬盘作为计算机存储的重要组成部分,其健康状况直接影响着数据的安全性和系统的稳定性。当硬盘出现坏道时,可能会导致数据丢失、读写速度下降甚至系统崩溃等问题。因此...
【红旗Linux硬盘安装】是指在计算机的硬盘上安装红旗Linux 5.0 操作系统的流程。这个过程适用于各种Linux发行版,包括红旗Linux和共创Linux。安装Linux的关键步骤包括准备安装包、启动安装程序以及进行硬盘分区。 ...
10. **兼容性广泛**:支持多种类型的硬盘,包括IDE、SATA、SCSI、SSD等,并且兼容Windows、Mac OS、Linux等多种操作系统。 在使用硬盘检测工具时,用户应注意以下几点: 1. 定期检查:不要等到硬盘出现问题才想起...
标题中的“win挂载linux硬盘工具”指的是在Windows操作系统中挂载Linux系统使用的EXT分区的软件工具。在Windows系统中,由于默认不支持Linux的EXT系列文件系统(如EXT2、EXT3、EXT4),因此需要第三方软件来实现对...
在标题提到的“红旗Linux硬盘安装器”中,我们可以深入探讨Linux安装过程,特别是硬盘安装这一方法,以及相关文件的作用。 Linux安装通常分为光盘安装、USB驱动器安装和硬盘安装等几种方式。硬盘安装在没有可用的可...
### Linux硬盘安装方法详解 #### 一、引言 随着Linux系统的广泛应用,越来越多的人开始尝试在自己的计算机上安装Linux系统。对于大多数用户来说,选择通过硬盘进行安装是一种既方便又实用的方法。本文将详细介绍...
让Linux新手也可以装上Linux 1.本制作主要是为了硬盘安装Fc7 2.支持SUSE的硬盘安装 3.采用GRUB forDOS制作 4.因为是方便制作所以本次制作提供下载,并发布制作方法,和原理。 5.设计比较简单,所以免费使用。并...
1、硬盘外接插入一个能开机的windows电脑,进入管理里面,看是否能识别到这个linux硬盘,能识别则可以恢复。 2、如果管理里面识别不到,去bios,看底层是否能识别到这个硬盘,如果bios识别不到,则表示该硬盘坏了。
标题中的“硬盘检测工具 用图形显示您的硬盘健康状况”指的是专门用于检查硬盘状态和性能的软件,这类工具能够提供可视化的界面来呈现硬盘的健康信息。这些工具通常包括SMART(Self-Monitoring, Analysis, and ...
Linux 硬盘系统建立分区步骤 Linux 硬盘系统对于很多人来说并不陌生,但是 Linux 分区却还是有很多人不是太熟悉的。下面将详细介绍 Linux 硬盘系统建立分区步骤,以帮助大家更好地了解和掌握 Linux 硬盘系统的知识...
检测U盘是否挂载成功c语言实现,检测时间5s,通过打开路径,写入和读取同一文件实现
linux查看 硬盘信息