linux使用badblocks命令扫描硬盘排除故障

使用Linux操作系统命令扫描硬盘

在系统“messages”日志中查看到文件系统异常时,采用Linux操作系统命令检查系统分区可以快速定位硬盘故障。

注意事项

badblocks命令扫描硬盘时会影响系统的IO性能,请不要在系统繁忙时执行。

操作步骤

以root用户登录。

查看系统当前硬盘信息。

# fdisk -l

例如,显示信息如下:

Disk /dev/sda: 298.9 GB, 298999349248 bytes

255 heads, 63 sectors/track, 36351 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot      Start         End      Blocks   Id  System

/dev/sda1               1         262     2104483+  82  Linux swap / Solaris

/dev/sda2   *         263       32898   262148670   83  Linux

/dev/sda3           32899       36351    27736222+  83  Linux

Disk /dev/sdb: 42.9 GB, 42949672960 bytes

64 heads, 32 sectors/track, 40960 cylinders

Units = cylinders of 2048 * 512 = 1048576 bytes

通过命令扫描硬盘。

# badblocks -s -v /dev/sdnx

其中n表示硬盘设备名,x表示硬盘对应的分区号。例如需要检查“/dev/sda2”,执行命令如下:

# badblocks -s -v /dev/sda2

Checking blocks 0 to 30681000

Checking for bad blocks (read-only test): 306809600674112/ 306810000000

30680964

30680965

30680966

30680967

30680968

30680969

30680970

30680971

30680972

30680973

...

done

Pass completed, 37 bad blocks found.其中,“37 bad blocks found”表示硬盘存在37个坏块。

atop查看系统异常情况

bj-xen-pdc04:~ # cd /var/log/atop/ (进入atop日志所在路径)

bj-xen-pdc04:/var/log/atop # ll

total 21832

-rw-r--r-- 1 root root 5111271 2013-06-30 00:00 atop_20130629

-rw-r--r-- 1 root root 5161400 2013-07-01 00:00 atop_20130630

-rw-r--r-- 1 root root 5190512 2013-07-02 00:00 atop_20130701

-rw-r--r-- 1 root root 4838774 2013-07-03 00:00 atop_20130702

-rw-r--r-- 1 root root 1989255 2013-07-03 09:29 atop_20130703

-rw------- 1 root root       0 2013-07-03 00:00 daily.log

bj-xen-pdc04:/var/log/atop # atop -r atop_20130703 (分析历史日志文件)

bj-xen-pdc04:~ # #atop (系统当前状态)

PRC |  sys  259m06s  | user  16m59s  |                |  #proc    131 |  #zombie    2  |  clones 71138  |               |  #exit      0  |

CPU |  sys       0%  | user      0%  |  irq       0%  |  idle    197% |  wait      2%  |                |  steal     1% |  guest     0%  |

cpu |  sys       0%  | user      0%  |  irq       0%  |  idle     98% |  cpu000 w  1%  |                |  steal     0% |  guest     0%  |

cpu |  sys       0%  | user      0%  |  irq       0%  |  idle     99% |  cpu001 w  1%  |                |  steal     0% |  guest     0%  |

CPL |  avg1    0.00  | avg5    0.01  |  avg15   0.00  |               |  csw 180094e4  |  intr 14098e5  |               |  numcpu     2  |

MEM |  tot     4.0G  | free   40.0M  |  cache   3.1G  |  dirty   0.0M |  buff  259.0M  |  slab  214.4M  |               |                |

SWP |  tot    12.0G  | free   12.0G  |                |               |                |                |  vmcom 421.5M |  vmlim  14.0G  |

PAG |  scan  4118e4  |               |  stall      0  |               |                |  swin       9  |               |  swout     24  |

DSK |           sda  | busy      2%  |  read  577992  |  write 1199e4 |  KiB/w     33  |  MBr/s   0.02  |  MBw/s   0.16 |  avio 3.94 ms  |

DSK |           sdb  | busy      0%  |  read      66  |  write      0 |  KiB/w      0  |  MBr/s   0.00  |  MBw/s   0.00 |  avio 2.24 ms  |

DSK |           sdc  | busy      0%  |  read      51  |  write      0 |  KiB/w      0  |  MBr/s   0.00  |  MBw/s   0.00 |  avio 2.27 ms  |

NET |  transport     | tcpi 6889896  |  tcpo 1209373  |  udpi      21 |  udpo     323  |  tcpao     15  |  tcppo     44 |  tcprs    773  |

NET |  network       | ipi 63073256  |  ipo  3862948  |  ipfrw      0 |  deliv 9820e3  |                |  icmpi 2654e3 |  icmpo 2652e3  |

NET |  eth2      0%  | pcki 51999e4  |  pcko 52311e4  |  si  220 Kbps |  so  269 Kbps  |  erri       0  |  erro       0 |  drpo       0  |

NET |  eth5      0%  | pcki 56148e3  |  pcko      22  |  si   35 Kbps |  so    0 Kbps  |  erri       0  |  erro       0 |  drpo       0  |

NET |  bond1   ----  | pcki 51999e4  |  pcko 52311e4  |  si  220 Kbps |  so  269 Kbps  |  erri       0  |  erro       0 |  drpo       0  |

NET |  br1     ----  | pcki 11815e3  |  pcko 3871052  |  si   28 Kbps |  so   58 Kbps  |  erri       0  |  erro       0 |  drpo       0  |

NET |  bond0   ----  | pcki 56148e3  |  pcko      22  |  si   35 Kbps |  so    0 Kbps  |  erri       0  |  erro       0 |  drpo       0  |

NET |  br0     ----  | pcki 56121e3  |  pcko      14  |  si   31 Kbps |  so    0 Kbps  |  erri       0  |  erro       0 |  drpo       0  |

NET |  vif7.0  ----  | pcki  705258  |  pcko  699066  |  si    0 Kbps |  so    0 Kbps  |  erri       0  |  erro       0 |  drpo       2  |

NET |  lo      ----  | pcki     621  |  pcko     621  |  si    0 Kbps |  so    0 Kbps  |  erri       0  |  erro       0 |  drpo       0  |

** system and process activity since boot ***

PID   RUID       EUID        THR    SYSCPU    USRCPU    VGROW    RGROW    RDDSK    WRDSK   ST   EXC   S   CPUNR    CPU    CMD       1/10

7188   root       root          1   213m38s     0.02s       0K       0K       0K       0K   N-     -   S       0     1%    netback/0

7211   root       root          9    13m34s    12m47s   291.6M   46128K   52244K   61036K   N-     -   S       0     0%    xend

28813   root       root          1     8m20s    66.60s       0K       0K       8K       4K   N-     -   Z       1     0%    qemu-dm

8   root       root          1     6m21s     9.58s       0K       0K       0K       0K   N-     -   S       1     0%    events/1

7   root       root          1     6m26s     0.00s       0K       0K       0K       0K   N-     -   S       0     0%    events/0

7129   root       root          1     3m37s    73.70s    8972K     564K       0K       0K   N-     -   S       0     0%    irqbalance

2705   root       root          1    71.99s     0.00s       0K       0K     168K   343.8M   N-     -   S       0     0%    kjournald

7212   root       root          3    50.41s     9.88s   114.5M    7272K       8K       4K   N-     -   S       1     0%    blktapctrl

4949   root       root          1    42.55s     2.44s       0K       0K       0K       0K   N-     -   S       1     0%    bond0

5100   root       root          1    43.81s     1.16s       0K       0K       0K       0K   N-     -   S       1     0%    bond1

5780   root       root          3    32.32s    11.87s   89704K    3760K    1492K       4K   N-     -   S       0     0%    qemu-dm

7051   root       root          1    35.57s     0.88s       0K       0K       0K       0K   N-     -   S       0     0%    HwLogHandle

5966   root       root          1     0.88s    27.13s   403.1M   117.5M   37344K   178.3M   N-     -   S       1     0%    wireshark

29   root       root          1    26.13s     0.00s       0K       0K       0K   10380K   N-     -   S       0     0%    kswapd0

时间: 2024-11-10 11:28:58

linux使用badblocks命令扫描硬盘排除故障的相关文章

Linux使用dd命令测试硬盘读写速度

>Linux服务器装好系统之后,想要知道硬盘的读写是否能满足服务的需要,如果不满足硬盘的IO就是服务的一个瓶颈.所以我们需要测试硬盘的读写速度,测试的方法很多,下面是使用Linux 自带的dd命令测试硬盘的读写速度. time有计时作用,dd用于复制,从if读出,写到of.if=/dev/zero不产生IO,因此可以用来测试纯写速度.同理of=/dev/null不产生IO,可以用来测试纯读速度.bs是每次读或写的大小,即一个块的大小,count是读写块的数量. 测/data目录所在磁盘的纯写速度

linux使用fdisk命令操作硬盘

知识点: MBR:Master Boot Record 主引导记录 在硬盘0柱面 0磁头的第一个扇区,占512字节(3部分 主引导程序 446字节,硬盘分区表DPT[disk partion table]16*4字节,分区有效标志55AA 有2字节),所以最大可管理2T硬盘. 添加硬盘的步骤: 添加设备--分区--格式化(创建文件系统)--起名--修改配置文件(/etc/tab)--创建挂载点--挂载 fdisk -l #查看磁盘信息 fdisk /deb/sdb #管理分区 m 获取帮助 p

Linux 中用 dd 命令来测试硬盘读写速度

https://blog.51cto.com/moerjinrong/2286323 Linux 中用 dd 命令来测试硬盘读写速度dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. dd 命令通用语法格式如下: dd if=path/to/input_file of=/path/to/output_file bs=block_size count=number_of_blocks 1 命令简介 1.1 主要选项 指定数字的地

解决PXE安装Linux系统时kickstart自动识别硬盘问题

在使用PXE结合kickstart文件可实现网络全自动安装Linux系统,按照kickstart语法须要在ks.cfg文件中指定操作系统安装的位置(指定硬盘)如hda.sda或硬盘的UUID等唯一标识,分区信息以及建立mbr的位置. 如果硬盘命令指定有误,或与实际硬盘命令不符,无法找到对应的设备等那么anaconda会直接ks.cfg文件错误而导致安装失败:如果在ks.cfg文件中不指定硬盘信息,那么在进行到分区步骤时,anaconda会在此停下来让人工操作以便任务继续,那么批量主机安装系统时则

Linux 项目实用命令

总结一下Linux下常用的命令 nc nc命令,这是Linux一般都带有的,被誉为“瑞士军刀”.windows和Linux都有,可以下载安装对应的平台工具.使用UDP和TCP协议的网络连接去读写数据,是一个稳定的后门工具.同时它也是一个功能强大的网络调试和嗅探工具. 使用格式: nc [-options] hostname port[s] [ports] ... 连接到某个地方 nc -l -p port [options] [hostname] [port] 绑定端口等待连接 参数有下: -e

Linux系统常用命令权威指南

<一>线上查询及帮助命令(2)1.man man [选项] [命令] 查看命令帮助,命令的词典,更复杂的还有info,但不常用. #man cd-a 显示所有的手册页,不只是显示第一个-f 只显示命令的功能,而不显示详细的说明文件,跟whatis命令相同-w 不显示手册内容,只显示将被格式化和显示的文件所在位置2.help help [选项] [命令] 查看Linux内置命令的帮助. help cd -d 显示命令简短主题描述 -s 显示命令简短语法描述 <二>文件和目录操作命令(

【Linux】常用命令大全

目录 系统信息 关机 (系统的关机.重启以及登出 ) 文件和目录 文件搜索 挂载一个文件系统 磁盘空间 用户和群组 文件的权限 文件的特殊属性 打包和压缩文件 RPM 包 - (Fedora, Redhat及类似系统) YUM 软件包升级器 - (Fedora, RedHat及类似系统) DEB 包 (Debian, Ubuntu 以及类似系统) APT 软件工具 (Debian, Ubuntu 以及类似系统) 查看文件内容 文本处理 字符设置和文件格式转换 文件系统分析 初始化一个文件系统 S

【linux相识相知】独立硬盘冗余阵列-RAID

独立硬盘冗余阵列(RAID,Redundant Array of Independant Disks),旧称为廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks).1987年美国加州伯克利分校的一篇名为<A Case for Redundant Arrays of Inexpensive Disk(RAID)>论文诞生,这标志着RAID技术的开始. 那么什么是RAID呢?简单的来讲就是把多个硬盘组合起来,成为一个硬盘阵列组,操作系统会把它当做是一个硬盘,

Linux下手动备份还原硬盘主引导记录MBR跟硬盘分区表DPT教程

Linux下手动备份还原硬盘主引导记录MBR跟硬盘分区表DPT教程 二 18 奶牛 Linux, Ubuntu, Windows 1,885 views查看评论 最近奶牛一直在折腾linux下的grub跟grub2,因为前阵子用ghost恢复windows的时候出现错误,导致分区表被破坏,无法进入系统.今天给大家介绍下如何备份跟还原我们的硬盘主引导扇区.首先我来介绍下这个硬盘主引导扇区,因为对于这个主引导记录MBR跟这个硬盘分区表DPT的关系,可能有的朋友还不是那么清晰. 硬盘主引导扇区(硬盘的