728x90
반응형
◆ badblocks

▶ 디스크 배드블럭 체크

badblocks 명령어는 하드디스크와 플로피디스크의 배드블럭(bad block)을 검사하는 명령어

배드블럭이 존재하는 하드디스크를 사용하게 되면 정상적인 운용중에도 갑자기 서버가 다운되는 등의 심각한 장애를 초래할 수 있다.

따라서 배드블럭은 서버설치시 또는 설치 직후에 반드시 점검을 해야하며 배드블럭이 존재할 경우에는 깨끗한 디스크로 반드시 교체

▶ 사용법

# badblocks [ -b 블록크기 ] [ -o 출력파일 ] [ -v ] [ -w ]

▶ 옵션

-b 블록크기
블록크기를 바이트 수로 나타냄 (기본값 : 1024 bytes)

-o 파일명
지정한 파일에 배드 블록의 리스트 기록

-v
자세한 출력 모드

-e 최대블록개수
점검을 멈출 최대 블록 개수 (0이면 지정된 범위 까지 점검)

-p num_passes
지정된 숫자 만큼 디스크 스캔 반복.

-w
읽기/쓰기 모드 에서 배드블록을 검사 (-n 옵션과 함께 사용 X, 상호 배타적임)

-n
비-파괴 읽고/쓰기 모드 ( -w옵션과 함께 사용 X, 상호 배타적임)

-s
검사 진행 과정 표시





◆ badblocks이 존재하지않을 경우

 [root@www named]# badblocks -v /dev/sda5
Checking for bad blocks in read-only mode
 From block 0 to 15615148 
Pass completed, 0 bad blocks found.
 [root@www named]#

위의 예는 배드블럭이 존재하지 않았을 경우의 예이다.

이상이 없는 깨끗한 디스크이므로 정상적인 사용이 가능하다고 할 수 있다.





◆ badblocks이 존재하는 경우

[root@www root]# badblocks -v -o badblock.txt /dev/sda3
 Checking for bad blocks in read-only mode
 From block 0 to 16755795
Pass completed, 3 bad blocks found.
 [root@www root]#
 [root@www root]#
 [root@www root]#
 [root@www root]# ll
 total 8
 -rw-r--r--    1 root     root         1199 Jun 30  2002 anaconda-ks.cfg
 -rw-r--r--    1 root     root           27 Jan 17 22:34 badblock.txt
 [root@www root]#
 [root@www root]# cat badblock.txt
 16755792
 16755793
 16755794
 [root@www root]#


위의 경우에는 3개의 배드블럭이 존재하는 경우이다. 배드블럭이 존재할 경우에는 몇개의 배드블럭이 존재하는지 결과에서 알려준다.

이 경우처럼 -o 옵션을 주게 되면 지정된 파일(badblock.txt)에 결과를 저장하며 그 파일을 확인(cat badblock.txt)함으로서 배드블럭의 번호를 확인할 수 있다.





◆ badblocks 명령의 일반적인 사용 예


▶ -v 옵션 : 자세한 정보 출력과 함께 기본적인 사용

# badblocks -v /dev/sdb1
Checking blocks 0 to 1044192
Checking for bad blocks (read-only test): done
Pass completed, 0 bad blocks found.


▶ 비-파괴 모드로 배드블록을 검사.

# badblocks -vsn /dev/sdb1
Checking for bad blocks in non-destructive read-write mode
From block 0 to 1044192
Checking for bad blocks (non-destructive read-write test)
Testing with random pattern: 12.88% done, 0:05 elapsed

- 기본적으로, 배드블록 검사는 읽기전용 모드에서 수행하는 것이 안전하다.
비-파괴(non-destructive) 읽고/쓰기 검사는 매우 느리지만
디바이스에 저장된 데이터의 손실 없이 검사할 수 있는 가장 좋은 방법이다.


▶ 읽기/쓰기 모드 검사. ( 경고 : 데이터가 파괴될 수 있음 )

# badblocks -vsw /dev/sdb1
Checking for bad blocks in read-write mode
From block 0 to 1044192
Testing with pattern 0xaa: done
Reading and comparing: done
Testing with pattern 0x55: done
Reading and comparing: done
Testing with pattern 0xff: done
Reading and comparing: done
Testing with pattern 0x00: done
Reading and comparing: done
Pass completed, 0 bad blocks found.

- 읽기/쓰기 모드에서 배드블록을 검사하는 것으로 빠르게 검사할 수는 있지만 데이터가 파괴 된다.


▶ 다수의 배드블록 검사 수행

# badblocks -vsnp 2 /dev/sdb1

- 디스크 품질을 검사하고, 초기 고장률을 낮추기 위한 테스트용으로 사용.


반응형

'Linux' 카테고리의 다른 글

Linux nfs mount error  (0) 2018.08.08
Linux fsck  (0) 2018.08.08
Linux hdparm  (0) 2018.08.08
Linux smartctl  (0) 2018.08.08
Linux tune2fs  (0) 2018.08.08

+ Recent posts