우분투(리눅스) 시스템을 운영중에 있다.
얼마전 하드디스크 에러가 생겨  시스템을 이전하려 한다.
이런 하드에러도 있고, 하드디스크를 큰 용량으로 바꾸려고 할 경우도 있다.

rsync, tar 등을 이용하는 방법도 있지만, 간단하게 cp -a 를 이용하려고 한다.
/var , /usr  등이 별도의 파티션으로 나뉘어져 있는 경우  해당 디렉토리를 뺀 / (루트) 를 복사해야 한다.
별도파티션으로 나뉘어 있던 디렉토리는 나중에 옮겨도 된다.

일단 새 하드디스크를 연결한다.
기존 시스템 하드는 /dev/sda 이고,  연결한 새 하드디스크는 /dev/sdb 라고 가정한다.
/ 는 sda1 ,  /usr 는 sda2 , /var 는 sda3  이라고 한다면,  우선 sda1 을 먼저 옮겨도 되고 다 같이 옮겨도 된다.

sda1 은 sdb1 으로 옮길것이다. 데이터를 이동한다.
현재 시스템이 가동한 상태에서 옮겨도 되긴 하지만, 고려할 사항이 많다.
dev , proc 등 시스템 관련 디렉토리를 주의해야 한다.

별도로 마운트 하고 옮긴다.
mount /dev/sda1 /mnt/sda1
mount /dev/sdb1 /mnt/sdb1
이런식으로 마운트 시키고 데이터를 옮긴다.
cp -a /mnt/sda1/* /mnt/sdb1/
이렇게 하면 따로 dev , proc , var/run , var/lock 등을 신경쓰지 않아도 된다.

새하드디스크로 부팅하려면 어떤값을 바꿔야 하나?
fstab 을 새하드디스크의 설정값으로 변경한다.
이때 복사한 fstab 의 값을 변경한다. 즉 /mnt/sdb1/etc/fstab 을 바꿔준다.
fstab 은 UUID 로 설정해 놓는 것이 편하다.

blkid 명령을 내리면
/dev/sdb1: UUID="{새하드UUID값}" SEC_TYPE="ext2" TYPE="ext3"
새로운 하드의 UUID 값을 얻을 수 있다.
fstab 의 해당 값을 바꿔준다.
UUID={기존UUID값}  / ext3 defaults,errors=remount-ro 0 1
이 설정만 바꾸면 되는가?

새 하드디스크에 grub 을 인스톨한다.
grub-install  /dev/sdb
이런식으로 되면 편하겠는데, 아마 안될 것이다.
grub 쉘로 들어가서 직접 바꿔준다.
grub 명령을 내리면  grub >  이렇게 grub 쉘을 사용할 수 있다.
grub >  find /boot/grub/stage1
stage1 은 하드디스크의 MBR 영역에 설치된다.
find /boot/grub/stage1
 (hd0,0)
 (hd1,0)
이런식으로 나오게 된다. 기존 하드는 hd0 , 새 하드디스크는 hd1  이다.
다음처럼 새 하드디스크에 grub 을 설치한다.
grub >  root (hd0,0)
grub >  setup (hd0)
특별히 에러메세지가 없으면 정상적으로 설치가 되었을 것이다.

이제 grub 의 menu.lst 를 변경한다. 여기서도 fstab 처럼 UUID 를 변경해준다.
/boot/grub/menu.lst 

# kopt=root=UUID={새하드UUID값} ro console=tty0
이 부분과
title           Ubuntu 8.04.3 LTS, kernel 2.6.24-24-generic Default
root            (hd0,0)
kernel          /boot/vmlinuz root=UUID={새하드UUID값} ro console=tty0 quiet splash
initrd          /boot/initrd.img
이 부분의 UUID 값을 바꿔준다.


이제 새 하드디스크로 부팅순서를 바꾸고 부팅한다.

재부팅후에 BIOS 설정에서 새 하드디스크로 부팅순서를 바꿔서 부팅해 본다.
정상적으로 부팅되는지 확인해본다. 이상이 있으면 기존의 하드로 다시 바꾸면 된다.
하드디스크 위치나 바이오스 설정 등의 차이로 인해 부팅에 이상이 있는 경우가 있으니 설정을 다르게 바꿔가면서 테스트 해본다.

내 경우는  보드의 SATA (sda) , SCSI 컨트롤러, SATA 컨트롤러(sdb)  이렇게 되어 있었다.
바이오스에서 각각의 부팅순서를 바꾸지 못하고, PCI 인터페이스인  SCSI , SATA 가 묶여서 바뀌게 되었다. 그래서 PCI 인터페이스의 맨 처음으로 바꿔야 했다.
SATA 에서는 primary 로 변경하고,  SCSI 는 보드에서 SATA 를 보드의 안쪽으로 바꿔서 SATA -> SCSI 컨트롤러 순으로 변경하고 서야 제대로 부팅할 수 있었다.



반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
그동안 여러시스템을 운영하면서, 하드디스크 장애를 수차례 겪어봤다.
물론 전문 운영업체도 아닌 개인입장에서의 경험이니 일반화 하는 것은 위험하다.

짧은 경험이지만, 하드디스크 장애중에 유독 파일시스템이 깨지거나 쓰기지연 등이 발생하는 경우는
var 디렉토리가 대부분이었다. var 디렉토리의 특성상 쓰기 작업이 많이 일어나기 때문일 것이다.

var 는 일을 많이 해!
시스템을 설치할때 / , /boot , /usr , /var  등은 거의 필수로 별도의 파티션으로 나누어 놓는다.
이중에서 디스크 자체의 인식오류등을 제외하면 거의다 var 디렉토리에 이상이 생겨서 문제가 발생한다.
파티션을 나누어 놓아서, 별도의 파티션으로 var 의 데이터를 옮기고, 바꿔서 마운트 해주면 해결되기도 한다. 그러나, 디스크에 배드섹터 같은 것이 발생했을 가능성이 많기 때문에 하드디스크를 바꿔주는 것이 좋다.

그렇다면 var 자체를 별도의 하드디스크로 지정해 놓는 것이 좋지 않을까?
용량도 그리 크지 않아도 된다. /var/log 정도만 따로 떼어 놓으면 수기가 정도면 충분하다.
그러나, log 도 대부분 쓰기 작업이니 따로 떼면 마찬가지 일듯 하다.(log 도 같이 있어야 겠다)
가능하다면 아예 메모리에 올려버리면 장애 발생률이 현저히 줄어들지 않을까?

깔끔한 해결책이 없을까?


SSD 가 답일까?
SSD 를 도입하기에는 비용도 문제지만, SSD 가 쓰기작업에 별로라는 이야기가 있어 좋은 해결책은 아닐듯 싶다. (MLC 니 SLC 니 그런 차이가 있다고 하던데...)
그렇지만, 서버용으로는 속도 빠른것으로 5G (최대 10G) 정도만 되어도 충분히 도입할 수 있으니, 그리 큰 비용이 들지 않겠지. 심각하게 고려해봐야 겠다.

저가형은 16G 부터 있는 것 같다. 가격은 약 10만원대.
한번 속는셈 치고 사볼까?

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
요즘 하드디스크의 용량이 가히 놀랍다.
주력기종이 500G, 640G 의 용량이다. 기가급에서 테라 급으로 옮겨가고 있다.
내가 처음 하드디스크를 구매했을때의 용량이 수십메가 정도였던 것으로 기억한다.
그러면서, 기가급이 나왔을때 정말 놀랐던 기억이 난다.(이게 1.6 기가 짜리란 말이냐!!!)

사용했던 하드디스크 회사들도 가지각색이다.
초창기때 퀀텀 파이어볼 이 기억난다. 맥스터 라는 회사도 있었다.
(지금은 어딘가에 합병이 된 것으로 안다.)
그때 하드를 지금도 가지고 있는 것도 있다.(사용가능한 것도 있고 뻑난 것들도 있고...)

그러다가, 씨게이트, 웬디의 양강(?)체재가 된 것 같다.
(이봐! 삼성은 왜 빼느냐. 라고 하겠지만, 삼성의 악명을 알고 있다면 고개를 끄덕끄덕 할 것이다)

그런데, 씨게이트에 위기가 닥쳐온다.
바로 안정성 문제.(삼성거 그래서 안쓴다) 그것은 치명적이었다.
바로 나만해도 그동안 계속 씨게이트 것을 써왔었다.(다행히 문제되는 제품은 없었다)
그 소식후로는 웬디것을 사고 있다.( http://blog.1day1.org/222 )

하드디스크의 제1원칙은 안정성. 제2원칙도 안정성. 제3원칙도 안정성 이라고 본다.
앞으로 씨게이트의 위기 극복 노력을 보게 될 것이다.

씨게이트는 이 위기를 어떻게 극복할 것인가?
http://seagate.bloter.net/archives/125

아마도 신제품에 대한 의심을 어떻게 극복하느냐 일 것이다.
사람들은 어느정도 검증이 된 후에 구매하려고 할 것이다.


하드 용량이 늘어나는 것을 좋아만 해야할까?
하드디스크가 용량이 커지면서 또 다른 고민이 생겼다.
이번 씨게이트 사건처럼 한순간에 데이터가 사라지는 문제.
용량이 커지다 보니, 사고후에 받는 데미지도 상당히 커졌다.
앞으로 디지털자료로 변환되는 비율이 지금보다 더 늘어날것이다.
예전 수기가(수메가)의 데이터와 수백기가, 테라급의 데이터가 날라가면 그 데미지의 차이는 어마어마하다.
난 누르지 않았어!

난 누르지 않았어!


단순히 복구 시간만의 문제가 아니라, 추억의 상실, 노력의 상실등 그 상실감은 말로 표현할 수 없다. 그래서 불편하지만, 미디어(CD,DVD) 의 백업을 하는 것일 것이다.

CPU 가 더이상 클럭 경쟁에서 듀얼코어, 쿼드코어의 안정적인(?) 성능위주로 경쟁구도가 바뀌었다. 하드디스크도 비슷하게 바뀌어 가지 않을까 하는 생각이 든다.
단순히 용량 경쟁을 넘어서, 안정성 문제를 해결하는 방향으로 넘어가지 않을까?
즉, 하드디스크내에 백업솔루션이 탑재될 수도 있겠고(플래터 RAID 같은형태?), 서비스 차원에서 데이터 복구 서비스 같은 것도 제공될 수도 있겠다.
하드디스크내에 자체 RAID 시스템에 탑재되어, 하드디스크의 한 플래터가 나가도 데이터 손실을 방지한다거나, 컨트롤러가 나가버려도 손쉽게 교체가능해서 데이터를 직접 살릴 수 있게 한다거나, 등등 기술적으로 안정성을 확보해 나가지 않을까?
(하드디스크관련 기술을 알아서 언급한 것이 아니라, 그런게 있지 않을까 하는 추측이다)

사실 요즘 용량큰 하드디스크는 예전 것에 비해 고장률이 많이 줄어들었다.
보통 2년 쓰면 많이 쓴다고 하는데, 요즘 것들은 큰 사고가 아닌이상 별 문제 없는 듯 하다.
(경험상 예전 40기가, 80기가 급이 좀 말썽이 많았었던 것으로 기억된다.)

용량이 커짐에 따라 안정성도 그 만큼 확보하는 것이 하드디스크 업체의 화두인 것 같다.
이번 씨게이트 사건으로 더욱 명확해 졌다.

근데, 조만간 SSD 가 대중화 되게 되면, 안정성은 SSD 가 맞고, 용량은 여전히 하드디스크가 맞게 되는 형태가 될려나?
하드디스크 쪽은 여전히 용량경쟁으로만 될까?
레이드등의 주변기기(?)가 따로 발전하는 방향으로 말이다.

앞으로 어떻게 변화되어 갈까?

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
지난 2월 환율이 폭등하던때 하드디스크를 구매할 시기를 놓쳤었다.
http://blog.1day1.org/169
지금은 가격이 많이 떨어졌다. 예전 가격을 되찾았다.
올랐을때 11만원정도 까지 오르던게, 8만6천원대로 떨어졌다.(600기가)
지금 살까 좀더 떨어지는거 지켜보고 살까. 고민중이다.
하루가 다르게 떨어지니 선뜻 결제를 못하겠다. ^^
그냥 가격이 고정되면 좋으련만.

그건 그렇고, 1테라가 별로 차이가 나지 않으니, 그쪽도 관심이 간다.
나의 지름신은 소심한 A 형이 아닌가 한다.
좀 하나만 결정해 주면 안되겠니? (저걸! 질러라)

암튼 조만간 구매해야 겠다.

ps. 근데, 환율이 안정된것은 아니겠지. 언제 다시 폭등할지 모르니.

반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,
헉! 하드를 한 640기가 정도로 올릴까 생각중이었는데.
한발 늦어서 지금은 엄두도 못내고 있다.
또 환율이 요동을 치고 있어서, 하드디스크 가격은 안드로메다 수준.

하루가 다르게 가격이 변하고 있다. 최저가 검색도 무색할 지경.

계획은 일단 취소해야 겠다.
환율이 안정되면 다시 생각해봐야 겠다.(안정될까?)

근데, 용량은 어느정도가 좋을까?
무조건 큰놈 하나? 작은놈으로 여러개?


+1 하루에 천원씩 뛴다. 이건 재앙이다.ㅜㅜ

+2 오늘은 2천원넘게 뛰네, 난리다.

하루쉬고.

+4 오늘도 오른다. 천원 UP
반응형

WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

,