• linux:查看磁盘硬件信息hdparm,smartctl


    smartctl 命令

    这个一个用于控制和监控支持smart技术的硬盘的命令。通常配合 -a 选项我们可以查看到比较详尽的硬盘信息(比如序列号、硬盘容量、已运行时间、硬盘健康状况等)。用法如下:

    smartctl -a /dev/sda

    Centos安装:
    yum -y install smartmontools

    smartctl 
    -i 指定设备
    -d 指定设备类型,例如:ata, scsi, marvell, sat, 3ware,N
    -a 或A 显示所有信息
    -l 指定日志的类型,例如:TYPE: error, selftest, selective, directory,background, scttemp[sts,hist]
    -H 查看硬盘健康状态
    -t short 后台检测硬盘,消耗时间短
    -t long 后台检测硬盘,消耗时间长
    -C -t short 前台检测硬盘,消耗时间短
    -C -t long 前台检测硬盘,消耗时间长
    -X 中断后台检测硬盘
    -l selftest 显示硬盘检测日志
    HP硬盘:
    smartctl -s on -d  cciss,0 /dev/cciss/c0d0 开启SMART
    smartctl  -a  -d cciss,0 -i /dev/cciss/c0d0  显示所有SMART信息
    smartctl  -l error  -d cciss,0 -i /dev/cciss/c0d0 查看磁盘错误日志
    +++++++++++++++++++++++smarted服务+++++++++++++++++

    简单说下smartctl:smartd由kernel-utils包缺省安装。用命令 rpm -ql kernel-utils 可以列出kernel-utils包中的文件
    它是一个守护进程(一个帮助程序),它能监视拥有自我监视,分析和汇报技术(Self-Monitoring, Analysis, and Reporting Technology - SMART)的硬盘。
    主配置文件:/etc/smartd.conf 
    添加一行/dev/cciss/c0d0 -H -m sys@5iqiong.com
    上边的配置表示smartd以静默状态工作,当SMART中报告PASSED的时候不理睬一旦出现Failure,立刻用邮件通知用户指定的邮箱

    smartctl -a 显示硬盘所有SMART信息。

    smartctl -i 显示硬盘model number, serial number,是否开启SMART等信息。

    smartctl -s on 如果没有打开SMART技术,使用该命令打开SMART技术。

    smartctl -t short 后台检测硬盘,消耗时间短

    smartctl -t long 后台检测硬盘,消耗时间长

    smartctl -C -t short 前台检测硬盘,消耗时间短

    smartctl -C -t long 前台检测硬盘,消耗时间长

    smartctl -X 中断后台检测硬盘。

    smartctl -l selftest 显示硬盘检测日志。

    smartctl -l error 显示硬盘错误汇总。

    # smartctl -i /dev/sda
    smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ START OF INFORMATION SECTION Model Family: Western Digital Caviar Second Generation Serial ATA family Device Model: WDC WD3200JS-55PDB0 Serial Number: WD-WCAPD1876075 Firmware Version: 21.00M21 User Capacity: 320,072,933,376 bytes Device is: In smartctl database [for details use: -P show] ATA Version is: 7 ATA Standard is: Exact ATA specification draft version not indicated Local Time is: Mon Dec 19 17:21:12 2011 CST SMART support is: Available - device has SMART capability. SMART support is: Enabled

    检查一下硬盘是否具有 SMART 特性

    # smartctl -H /dev/sda
    smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ START OF READ SMART DATA SECTION SMART overall-health self-assessment test result: PASSED

    查看硬盘健康状态

    Note: 结果是 PASSED 并不意味着硬盘100%安全,如果结果是Failure一般都有问题,您需要备份数据或更新硬盘。
    # smartctl -t short /dev/sda
    smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION Sending command: "Execute SMART Short self-test routine immediately in off-line mode". Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful. Testing has begun. Please wait 2 minutes for test to complete. Test will complete after Mon Dec 19 17:33:51 2011 Use smartctl -X to abort test.

    快速检测硬盘。

    # smartctl -l selftest /dev/sda

    查看硬盘测试结果

    #smartctl -l error /dev/sda

    查看出错日志

    hdparm 命令

    该命令用来获取或设置SATA/IDE设备的参数。实际上hdparm是linux中的一个用户层程序,查看源码会发现这个命令就是向磁盘发送一些ioctl命令。但是注意了,既然可以获取也可以设置,所以使用这个命令的时候务必要小心。当然我们只是为了获取查看硬盘信息,故不会对硬盘及系统造成什么危害。通常会配合 -i 或 -I(大写的i) 选项来取得硬盘的硬件信息。例如序列码等等啊~用法如下: hdparm -i /dev/sdb

    语  法: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 <传输模式>][设备]

    补充说明:hdparm可检测,显示与设定IDE或SCSI硬盘的参数。

    参  数:
    -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硬盘的自动省电功能。

    ----------------------------------------

    补充说明:hdparm可检测,显示与设定IDE或SCSI硬盘的参数。

    测试各硬盘读取速度判断硬盘故障
     
      在服务端命令窗口中执行如下命令
     
      hdparm -t /dev/hda (IDE硬盘)
     
      hdparm -t /dev/sda (SATA、SCSI、硬RAID卡阵列)
     
      hdparm -t /dev/md0 (软RAID设备)

    hdparm -tT /dev/sda1

  • 相关阅读:
    Unity3D游戏制作(四)——Asset Server搭建
    查询开户银行的现代化支付行号
    专业版Unity技巧分享:使用定制资源配置文件
    如何建立一个完整的游戏AI
    实现简易而强大的游戏AI——FSM,有限状态机
    iOS 开发 初级:应用内购买 In-App Purchase
    linux每日命令(14):less命令
    flask上传excel文件,无须存储,直接读取内容
    linux每日命令(13):more命令
    linux每日命令(12):nl命令
  • 原文地址:https://www.cnblogs.com/klb561/p/9157537.html
Copyright © 2020-2023  润新知