강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

badblocks으로 read/write모드로 배드블록 점검하기

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

badblocks으로 read/write모드로  배드블록 점검하기





 

이번에는 배드블록 점검에 있어서 매우 중요한 사항을 설명할 것입니다.

 

 

 

, 지금까지 우리는 badblocks로 배드블록을 점검할 때에 모두 디스크를 읽는 즉, read only모드로 점검을 한 것입니다.

 

 

 

하지만, 배드블록 점검을 정확하게 하려면 write(쓰기)에 대해서도 배드블록 점검을 해야 합니다.

 

 

 

하지만, 이 쓰기모드에 대한 배드블록 점검은 시간이 꽤 많이 걸리는 작업입니다.

 

 

 

실제로 해보시면 read only모드 점검보다도 10배 이상 더 긴 시간이 걸립니다.

 

 

 

 

 

그리고 마운트되어 있는 디스크를 대상으로 배드블록을 점검하는 것은 꽤 위험합니다.

 

 

 

가능하면 마운트되어 있지 않은 즉, 마운트 해제된 상태에서 배드블록 점검을 하셔야 합니다.

 

 

 

하지만, 실제 배드블록 점검을 하다 보면 그렇지 않은 경우가 대부분입니다.

 

 

 

 

 

따라서 여러분과 저 같은 시스템관리자들은 다음과 같은 옵션들을 알아두어야 합니다.

 

 

 

 

 

badblocks명령어에서 -n옵션은 read/write모드로 배드블록 점검을 해 줍니다.

 

 

 

하지만, 마운트되어 있는 디스크에 대해서는 점검수행을 하지 않습니다.

 

 

 

그리고 점검방식이 랜덤(random)패턴을 사용합니다.

 

 

 

이것이 뒤에서 설명 할 -w옵션과의 차이점입니다.

 

 

 

먼저 -n에 대한 예입니다.

 

 

 

 

 

[root@su250 ~]# mount

/dev/sda5 on / type ext3 (rw)

/proc on /proc type proc (rw)

sysfs on /sys type sysfs (rw)

devpts on /dev/pts type devpts (rw,gid=5,mode=620)

/dev/sda3 on /home type ext3 (rw)

/dev/sda1 on /boot type ext3 (rw)

tmpfs on /dev/shm type tmpfs (rw)

none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)

/dev/sdb1 on /backup type ext3 (rw)

[root@su250 ~]#

[root@su250 ~]# badblocks -n -v /dev/sdb1

/dev/sdb1 is mounted; it's not safe to run badblocks!

[root@su250 ~]#

 

위의 예를 보면 mount라는 명령어를 사용하여 /dev/sdb1 /backup에 마운트되어 있음을 알 수 있습니다.

 

 

 

그리고 마운트되어 있는 /dev/sdb1에 대하여 badblocks을 수행하였습니다.

 

 

 

그 결과 마운트되어 있기 때문에 badblocks을 수행할 수 없다(/dev/sdb1 is mounted; it's not safe to run badblocks!)라는 메시지를 보여주고 수행을 중단합니다.

 

 

 

 

 

그리고 이번에는 /dev/sdb1의 마운트를 해제하고 다시 한번 badblocks을 수행하였습니다 .

 

[root@su250 ~]# badblocks -n -v /dev/sdb1

Checking for bad blocks in non-destructive read-write mode

From block 0 to 10482380

Testing with random pattern:

 

 

보시는 바와 같이 배드블록 점검을 수행하게 됩니다.

 

 

 

, -n옵션을 사용하면 read/write모드로 배드블록 점검을 하면서, 마운트되어 있는 디스크에 대해서는 배드블록 점검을 수행하지 않습니다.

 

 

 

보다 안전한 점검방법이므로 필자가 개인적으로 사용 추천하는 방법입니다.

 

 

 

 

 

그리고 이번에는 -w옵션에 대한 설명입니다.

 

 

 

, -w옵션과 -n은 거의 유사한 옵션입니다.

 

 

 

두가지 모두 read/write모드로 배드블록을 점검합니다.

 

 

 

그리고 둘 모두 마운트되어 있는 디스크에 대해서는 점검을 하지 않습니다.

 

 

 

하지만, -n옵션이 random방식의 패턴 이용하여 점검하는 반면 -w옵션은 특정 패턴(0xaa, 0x55, 0xff, 0x00)을 사용하여 배드블록을 점검합니다.

 

 

 

다음은 -w옵션을 사용한 점검 예입니다.

 

 

 

 

 

[root@su250 ~]# badblocks -v -w /dev/sdb1

Checking for bad blocks in read-write mode

From block 0 to 10482380

Testing with pattern 0xaa:

 

 

위의 예는 read/write모드로 배드블록을 점검하면서 0xaa패턴을 사용하여 점검을 하고 있는 예입니다.

 

 

 

앞서 말씀 드렸듯이 -w옵션에서도 마운트가 되어 있는 디스크에 대해서는 점검을 하지 않습니다.

 

 

 

 

 

이상으로 배드블록을 점검하는 방법에 대한 설명을 모두 마칩니다.

 

 

 

여러분과 저 같은 시스템관리자들에게 있어서 디스크의 배드블록은 천적이라고 할 수 있습니다.

 

 

 

지피지기면 백전백승이라고 했죠. 배드블록이 여러분들을 괴롭히기 전에 여러분이 먼저 배드블록을 발견하고 먼저 조치하면 배드블록으로 인하여 괴로운 일을 없을 것입니다.

 

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,034 명
  • 현재 강좌수 :  35,791 개
  • 현재 접속자 :  89 명