우분투가 설치되어 있는 노트북 하드디스크를 업그레이드하려고 합니다

현재 랩탑에 60기가 하드가 설치되어 있어서 용량의 부족함을 많이 느끼고 이제 하드디스크를 고용량으로 업그레이드하려고 합니다.

검색을 해봐도 제가 궁금해하는 부분이 쉽게 나오질 않아서 질문을 올립니다.

현재 하드디스크에 설치되어 있는 모든 프로그램들과 데이타들을 새로운 하드디스크로 옮길 수 있는 방법은 무엇인가요?
외장용 하드디스크 케이스는 갖고 있습니다. 하드디스크를 업그레이드하고 다시 프로그램들을 재설치하자지 시간이 너무 걸릴 것 같아서요.
현재 시스템 그대로 새로운 하드디스크로 옮길 수 있는 방법이 있다면 무엇이고 어떻게 해야 하는지요…

제가 진행하려는 과정은,

  1. 새로운 하드디스크를 랩탑에 설치한다.
  2. 우분투를 설치한다.
  3. 기존의 하드디스크에 있는 자료를 프로그램등(?)을 통해 현재 설치된 랩탑의 하드디스크로 고스란히 옮긴다.
  4. 이 과정에서 현재 하드디스크에 설치되어 있는 프로그램들과 새로 옮기려는 자료들간의 충돌이 안생겨야 한다.

초보자인 제게 지혜와 조언을 해주시면 진심으로 감사하겠습니다.

gparted 같은 걸로 파티션 복사는 어떨지 의견을 내어봅니다.
(제가 해보지는 않아서, 저도 확신은 없습니다만 ^^;:wink:

하드를 두 개 다 연결하고,
live CD 로 부팅 후, 하드의 마운트는 해제하고
live CD 에서 gparted 를 이용해, 파티션을 통채로 복사 할 수 있는 듯 합니다.
이 때, 파티션의 UUID 등도 같이 카피가 된다하니, (help 참조)
장점이라면 장점이 될 수도 있을 것 같아서요.
grub까지 정확하게 넘길 수 있을지 모르겠는데,

그런 후에 부팅과 작동 여부를 확인 후, 파티션을 다시 확장하는 것이 어떨까 하네요…

정확한, 답변은 다음 고수님께 패스…

p.s. 제 하드는 파티션이 엉망이군요. 7개나 있는데 이건 뭐 순서도 뒤죽박죽이고
어떤 파티션 프로그램은 파티션을 읽지도 못하는 상태라 건들지도 못하겠고… ㅎㅎ

제가 추천하는 방법은…

"gparted"나 "dd"나 "acronis"등을 이용해서 하드를 1:1로 아예 복사하는거…

그리고 남은 부분은 데이터 파티션으로 따로 쓰시구요.(또는 파티션 확장-추천안함;)

하드가 바꿔지면 전에 하드내용을 그대로 복사 한다 해도 (dd 또는 cp -a 또는 tar 압축)
UUID 등이 달라 부팅이 되지 않습니다,
/etc/fstab 파일 /etc/blkid.tab 파일이 새로 편집 해야 하는데…
uuid 문제때문 입니다. 리눅스 이해도가 있어야 가능 한데… 음
[list=1:27n4lgqc]즉
[:27n4lgqc] 백업[/:m:27n4lgqc]
[:27n4lgqc] 새하드 끼우고 피티션 나우고 포맷[/:m:27n4lgqc]
[:27n4lgqc] 기존 자료 복원[/:m:27n4lgqc]
[:27n4lgqc] 라이브 부팅하여 UUID 알아내어 위 두파일 편집[/:m:27n4lgqc][/list:o:27n4lgqc]의 과정이 필요 합니다.
몰론 UUID 안쓰고 sd?? 로 인식 해놓고 복사 후 복원하면 그냥 부팅 될수도 있습니다.

아직 리눅스 이해도가 낫다면 /home 만 압축 백업후
새하드 교체 재설치 하시는 것이 더 쉬운 작업일 것입니다.

[quote="ctrl144":ucnzd3rk]제가 추천하는 방법은…

"gparted"나 "dd"나 "acronis"등을 이용해서 하드를 1:1로 아예 복사하는거…

그리고 남은 부분은 데이터 파티션으로 따로 쓰시구요.(또는 파티션 확장-추천안함;)[/quote:ucnzd3rk]

다른건 모르겠는데 dd 는 아예 이미지를 똑 같이 하기 때문에… 똑같은 하드에 백업이나 리스토어 할때는 유리하지만…
하드용량을 확장해서 하려고할때는… 오히려… 하드용량을 확장한 효과를 감쇄 시킬수 있을꺼 같은데…요…

저라면… 라이브 시디로 부팅해서…
새로 구입한 하드에 파티션을 기존 하드와 같이 나누고…(용량말고… 구성)
포멧까지 한다음 양쪽다 마운트 한뒤에
서브 디렉토리까지 나누어 두었으면 다 마운트를 합니다…
기존건 /mnt/old
새거는 /mnt/new 에

그리고서는…
기존 하드에서 새 하드로 rsync 를 사용해서 밀어 버릴듯합니다…

[code:1dmcifj1]rsync /mnt/old/ /mnt/new[/code:1dmcifj1]

이러고 싱크 다 되면 하드 바꾸어 끼고… 재부팅 … 확인…

아 그럽 을 복사해줘야 하는군요…
— 추가…

[code:1dmcifj1]dd if=/dev/원래하든 of=groub-backup bs=512 count=1[/code:1dmcifj1]
해서

[code:1dmcifj1]dd if=groub-backup of=/dev/새하드 bs=512 count=1[/code:1dmcifj1] 을 해줘야 하는군요…

쿨럭…

[quote="bluetux":2ftunjhf]기존건 /mnt/old
새거는 /mnt/new 에

그리고서는…
기존 하드에서 새 하드로 rsync 를 사용해서 밀어 버릴듯합니다…[/quote:2ftunjhf] 멋진 방법인데…
grub 메뉴와 fstab이 uuid를 이용 하지 않아야 합니다.

그리고 노트북은 하드 두개 끼고 좀 힘들지 않을까유 ? :roll:

[quote="강분도":vqbdlwo0][quote="bluetux":vqbdlwo0]기존건 /mnt/old
새거는 /mnt/new 에

그리고서는…
기존 하드에서 새 하드로 rsync 를 사용해서 밀어 버릴듯합니다…[/quote:vqbdlwo0] 멋진 방법인데…
grub 메뉴와 fstab이 uuid를 이용 하지 않아야 합니다.

그리고 노트북은 하드 두개 끼고 좀 힘들지 않을까유 ? :roll:[/quote:vqbdlwo0]
아 제가 젠투를 쓰다보니 건 전혀 생각 못했어용… 흠흠…

스크립트 한줄로… 해결 않되나… 흠… uuid 쓰는거보고 고민해봐야 할텐데… 암튼… 히궁… 포기…

그럼… Partimage로 안될까요???

그리고 uuid편집은 라이브시디로 할 수 있겠지 싶네요…(제가 초보일때 해본짓;)

bluetux님.

초보자가 이해하기 쉽게 좀더 자세히 설명해 주실 수 있는지요?

가능하시다면 진심으로 감사하겠습니다^^

흠 USB 외장 케이스가 있다면 가능합니다. 별달리 어렵지도 않죠.

여러 방법이 있겠지만 우선 다음 장비가 필요하겠죠.

  • USB CD/DVD-ROM + Ubuntu CD.
  • USB 외장 하드 케이스 + 새하드

[b:111agpp4]부팅해서 마운트하기[/b:111agpp4]

우선 외장케이스에 새 하드디스크를 조립해 두신 다음 (어차피 교체 하고자 하면 다시 꺼내야 하니 완벽히 조립할 필요는 없습니다.) CD-ROM만 연결한 상태로 CD-ROM부트를 해서 Live Mode로 진행합니다.

그런 다음 새 하드디스크가 들어 있는 USB HDD를 연결합니다.

LiveCD에서는 디스크들이 어떻게 인식되는 지 몰르지만

[code:111agpp4] # ls /dev/sd*
[/code:111agpp4]
정도를 하면 아마 연결된 하드 디스크들이 보일 겁니다. 알파벳이 낮은 것이 아마도 내장 하드디스크 일 것이고 높은 것이 외장 하드디스크겠죠. 확인차

[code:111agpp4] # fdisk /dev/sda
[/code:111agpp4]
를 해 보면 좋습니다. 앞으로는 "/dev/sda"를 내장하드 "/dev/sdb"를 외장하드로 보고 설명을 계속 하도록 하죠.

[b:111agpp4] 마운트 해서 복사하기 [/b:111agpp4]
우선 새 하드를 자신이 하고 싶은 구성으로 파티션 합니다. fdisk를 사용하셔도 되고 gparted로 하셔도 됩니다. 실제로 gparted에서 파티션 복사를 해도 복사가 되는 것으로 알고 있습니다. 그런 다음 Bluetux님이 조언하신 대로

[code:111agpp4] # mount /dev/sda1 /mnt/old1

mount /dev/sdb1 /mnt/new1

rsync /mnt/old1 /mnt/new1

[/code:111agpp4]
를 이용해서 복사를 합니다. 파티션 갯수가 많으면 많은 만큼 실제로 여러 개를 합치실 거면 rsync를 적당히 패스를 맞춰서 복사해 주면 될 듯 합니다.

[code:111agpp4] # rsync /mnt/old1 /mnt/new1

rsync /mnt/old2 /mnt/new2

mkdir /mnt/new2/data

rsync /mnt/old3 /mnt/new2/data

[/code:111agpp4]
머 이렇게 말이죠.

다음은 몇가지 방법이 가능합니다. 구형 하드의 UUID로 신형 하드의 UUID를 바꾸는 방법과 그냥 새 UUID로 맞춰서 수정하는 방법. 개인적으로는 새 UUID로 바꾸는 방법을 권장 드립니다.

[b:111agpp4] 부트 grub 복사 [/b:111agpp4]
자 여기서 부터가 중요합니다. 일단 shutdown을 하고 외장하드와 모든 장비를 끊은 다음 외장하드에 들어 있던 새 하드 디스크를 꺼내서 노트북의 하드디스크를 교환합니다. 그런 다음 CD-ROM을 연결한 다음 다시 Live CD로 다시 부팅합니다.

그런 다음 보면 이제 새 하드 디스크가 "/dev/sda"로 잡히게 되겠죠 이 상태에서 루트 파티션을 마운트 합니다.

[code:111agpp4] # mount /dev/sda1 /mnt/new
[/code:111agpp4]
그 상태에서 /mnt/new/boot/menu.lst 내용을 새 하드디스크의 구성에 맞춰서 수정합니다. 만약 파티션 순서를 기존과 같이 가져갔다면 UUID부분만 수정하면 되겠죠. 그럴 경우 새로운 하드의 UUID는

[code:111agpp4] # ls -la /dev/disk/by-uuid
[/code:111agpp4]
를 통해서 손쉽게 알 수 있습니다. 물론 순서가 바뀌었거나 번호가 바뀌었다면 그에 맞게 수정해 주시면 됩니다. 그런 다음

[code:111agpp4] # chroot /mnt/new

update-grub

vi /boot/grub/menu.lst // 변경사항 확인

grub-install

[/code:111agpp4]
해주시면 됩니다.

빠진게 있었군요 /mnt/new/etc/fstab 의 내용도 UUID를 보면서 수정해 주셔야 합니다.

그런 다음 CD-ROM을 분리하고 리부트 하시면 됩니다.

[b:111agpp4]마지막 단계[/b:111agpp4]

이런 이후 부팅이 안된다면 CD-ROM을 이용해서 다시 Live부트한 다음 menu.lst만 다시 조정하면 문제가 해결되기 때문에 큰 어려움이 없습니다.