한 랩탑에서 다른 랩탑으로 우분투 설치를 복사하는 방법


60

우분투가 장착 된 노트북에서 우분투를 설치할 다른 노트북에 이르기까지 내 컴퓨터를 바꿀 것입니다 ...

현재 시스템에 매우 만족합니다. 무서워하는 것은 0에서 모든 것을 다시 작성해야한다는 것입니다.

그렇다면 사람들은 우분투 시스템을 복제하기 위해 종종 무엇을합니까? 여기에는 데이터, 패키지, 바로 가기 설정 등이 포함될 수 있습니다.


4
기존 랩톱에서 HDD를 추출하여 새 랩톱에 설치할 수 없습니까? MB, MicroProcessor, RAM 및 HDD를 변경하여 부팅 HDD를 보존하고 부팅 후 큰 문제가 발생할 것으로 예상했습니다. 이것은 정말 멋진 것은 아니지만 매력처럼 작동합니다.
Geppettvs D' Constanzo

아니면 그냥 remastersys, UCK, 사용자 정의 ...를 사용하여 시스템의 복제 생성
열린 우리당 헤레라

8
나는 이것을 여러 번했다 : USB-SATA 변환기를 사용하여 오래된 랩톱 드라이브를 새 랩톱에 연결하고 Ubuntu 라이브 CD에서 새 랩톱을 부팅하고 gparted로 새 드라이브를 지우고 전체 디스크를 오래된 디스크에서 새 디스크로 복사하십시오. 파티션 크기 조정, 부팅, 비스킷 있음, X11 재구성. Windows에서 그렇게 쉽게 일어날 수는 없습니다!
aquaherd

1
X11을 재구성 할 때 그 부분은 무엇입니까? 또한 복사본은 일반 간단한 복사 붙여 넣기입니까?
Whirl Mind

답변:


39

구성을 복사하고 설정하는 몇 가지 방법이 있습니다. 변경 내용이 얼마나 큰지에 따라 다릅니다. 그리고 새 버전으로 업그레이드하는 경우. 일부 방법은 버전 간 업그레이드시 유용하지만 일부 소프트웨어 양식이 올바르게 작동하지 않을 수 있으므로주의하십시오.

방법 1 : 새로 설치

가장 강력하고 안정적인 방법은 새로 설치 한 다음 구성을 복사하고 모든 패키지를 다시 설치하는 것입니다. 이전 버전에서 새 버전으로도 작동합니다. 이를 매우 빠르게 수행하고 대부분의 프로세스를 자동화하는 방법이 있습니다. 가장 느린 부분은 설치 미디어에 포함되지 않은 모든 패키지를 다운로드해야 할 것입니다. 8 DVD 디스크 이미지가있어서 다운로드보다 훨씬 빠르게 설치할 수있었습니다.

grub을 설정하고 설치하면 시스템을 사용할 수 없게 될 수 있습니다. 방법 2를 사용하려면 그럽을 단단히 파악해야합니다.

새 설치 (새 랩톱)를 수행하기 전에 이전 설치 (구 랩탑)에서 일부 정보를 복사해야합니다.

설정 또는 구성

사용자 정의를 저장하는 모든 파일은 두 곳에 저장됩니다. 첫 번째로 가장 중요한 것은 / home / [username] 디렉토리입니다. 수백 개의. [package-config-dir] 파일과 디렉토리가있을 수 있습니다. 나는 가장 중요한 것을 나열하려고하지만 원하는 경우 더 많이 더 추가 할 수 있습니다. 이 프로세스는 패키지가 올바르게 작동하지 않는 문제를 일으킬 수 있습니다. 이 작업을 수행 할 때주의하십시오. 새 디렉토리를 붙여 넣기 전에 새로 설치 한 백업을 백업하십시오.

이 디렉토리와 파일은 크지 않으며 수백 메가 바이트에 불과합니다. 이 방법은 업그레이드 간에도 유용합니다. 우분투 버전간에 이루어진 모든 구성 변경 사항을 매우 빠르게 복사 할 수 있습니다.

기본적으로 대부분의 프로그램은 처음 실행될 때. [package-config-dir]을 만듭니다. 존재하지 않으면 다시 작성됩니다. 모든 프로그램이 이와 같이 작동하지는 않으므로이 동작에 의존해서는 안됩니다.

  1. 노틸러스를 사용하여 홈 디렉토리 ( /home/[username])로 이동하십시오.
  2. "보기 메뉴 → 숨김 파일 표시"를 선택하십시오 (또는 Ctrl+ H).

  3. 이제 모든 숨겨진 .*디렉토리를 볼 수 있습니다. 루트 권한으로이 작업을 수행해야 할 수도 있습니다. 명령 줄에서 루트로 노틸러스를 시작하면됩니다.

    다음 디렉토리를 선택하고 별도의 디렉토리에 복사하십시오.

    /home/aaron/.config  
    /home/aaron/.gconf  
    /home/aaron/.gnome2  
    /home/aaron/.gnome2_private  
    /home/aaron/.local  
    /home/aaron/.mozilla  
    

    이 파일들을 변경했습니다. 그래서 나는 그것들도 복사합니다.

    /home/aaron/.bash_aliases 
    /home/aaron/.bashrc 
    /home/aaron/.vimrc
    

    이 디렉토리에 구성을 저장하지 않는 다른 패키지가 많이있을 수 있습니다. 또한 복사하십시오. 그러나 프로그램이 예상대로 작동하지 않으면 경고를받습니다. .*파일 또는 디렉토리 를 복원해야 할 수도 있습니다 . 파일이나 디렉토리를 삭제하여이를 수행 할 수 있지만 디렉토리를 복사하기 전에 백업해야합니다.

  4. 시스템 사용 방법에 따라 /etc디렉토리의 일부 파일을 변경했을 수 있습니다 . 가지고 있다면 그것들도 복사해야합니다. 작업용으로 사용자 정의 smb.conf 파일을 작성하고 개발에 사용하는 많은 Apache 가상 호스트가 있으므로이를 복사합니다. 전체 /etc디렉토리를 복사 할 수는 있지만 기계에 하드웨어 측면에서 정확히 동일한 설정이없는 경우 문제가 발생할 수 있습니다. 어떤 기계에서 다른 기계로 가지 않을 것입니다.

    /etc/samba/smb.conf
    /etc/hosts
    /etc/apache2 # the whole directory.
    

    새 소프트웨어를 설치하기 전 또는 후에 구성 파일을 복사하십시오. 소프트웨어 패키지 설치가 현재 실행중인 동안이 작업을 수행하지 마십시오. 설치가 중단 될 수 있습니다.

설치된 패키지

Synaptic을 사용하면 내보내기 표시 메뉴 옵션을 사용하여 설치된 모든 패키지를 매우 쉽게 내보낼 수 있습니다.

  1. 파일 메뉴 → 표시를 다른 이름으로 저장
  2. "변경 사항뿐만 아니라 전체 상태 저장"확인
  3. 이 파일을 저장할 이름과 디렉토리를 선택하십시오 (플래시 드라이브에 저장해야합니다).

그런 다음 프로세스를 반대로하여 설치된 모든 패키지를 다시로드 할 수 있습니다.

  1. 파일 메뉴 → 표시 읽기
  2. 첫 번째 단계에서 생성 한 파일을 선택하십시오.

아마도 가장 오래 걸릴 것입니다. 많은 패키지 (1Gb 패키지)를 다운로드하는 경우 몇 시간이 걸립니다.

방법 2 : 디스크 이미지 사용

방법 2를 별도의 게시물로 작성하겠습니다. 이것은 고급 옵션입니다. 파티션을 이해하고 grub을 설치하고 명령 줄을 사용해야합니다.

한 랩탑에서 다른 랩탑으로 우분투 설치를 복사하는 방법


설치된 패키지를 복원하는 마지막 단계에서 이러한 오류 가 발생하면 어떻게됩니까?
Chris

30

구성을 복사하고 설정하는 몇 가지 방법이 있습니다. 변경 내용이 얼마나 큰지에 따라 다릅니다. 그리고 새 버전으로 업그레이드하는 경우. 일부 방법은 버전 간 업그레이드시 유용하지만 일부 소프트웨어가 제대로 작동하지 않을 수 있으므로주의하십시오.

방법 1 : 새로 설치

별도로 게시됩니다. 한 랩탑에서 다른 랩탑으로 우분투 설치를 복사하는 방법

이것은 가장 안전한 방법이며 grub 및 부팅 설정을 편집 할 필요가 없습니다. 대부분의 경우 GUI 도구를 사용하여 쉽게 수행 할 수 있습니다.

방법 2 : 디스크 이미지 사용

이것은 가장 빠른 이동 방법 일 수 있습니다. 디스크 이미지가 매우 빠르기 때문에 하드 드라이브 파티션을 복사하는 것과 관련하여. 모든 소프트웨어를 다시 설치하지 않으려는 경우 디스크 이미지를 생성, 크기 조정 및 이동하는 데 시간이 오래 걸릴 수 있습니다. 새 버전의 Ubuntu로 업그레이드하지 않을 경우에만 권장합니다. 디스크 파티션과 그럽을 이해해야합니다. 내가하는 일의 대부분은 명령 줄을 사용합니다. 명령을 실행하기 전에 명령이 수행하는 작업을 이해해야합니다. 다음 지침에 따라 데이터 손실에 대해 책임을지지 않습니다.

1 단계는 설치의 디스크 이미지를 만듭니다.

주먹 우리는 설정에 대한 정보를 얻어야합니다. 사용 parted -l하여mount

$ sudo parted -l
Model: ATA ST9320423AS (scsi)
Disk /dev/sda: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system     Flags
 1      32.3kB  197MB   197MB   primary   ext4            boot
 2      197MB   10.2GB  10.0GB  primary   linux-swap(v1)
 3      10.2GB  50.2GB  40.0GB  primary   ext4
 4      50.2GB  299GB   249GB   extended
 5      50.2GB  54.4GB  4195MB  logical   ext4
 6      54.4GB  65.9GB  11.5GB  logical   ext4
 7      65.9GB  299GB   233GB   logical   ext4

$ mount
/dev/sda5 on / type ext4 (rw,errors=remount-ro)
/dev/sda7 on /home type ext4 (rw)
/dev/sda1 on /boot type ext4 (rw)
/dev/sda6 on /usr type ext4 (rw)
# I took out the entries that were not need for these instructions

$ cat /etc/fstab 
proc            /proc           proc    nodev,noexec,nosuid 0       0
UUID=ddc8c237-e8ac-4038-a0ed-f7c866d6603b /               ext4    errors=remount-ro 0    1
UUID=aa9881d1-5cc1-4e94-8cd7-8125e18ece2f /boot           ext4    defaults        0      2
UUID=31a6fde1-6b96-4cc3-acfd-88573f52be36 /home           ext4    defaults        0      2
UUID=073146a7-5668-4728-9a6f-1a599f358a8d /usr            ext4    defaults        0      2
UUID=540b96b6-b3c3-4092-b4ad-6b33bcbbe16d none            swap    sw              0      0

설정이 다르게 보일 수 있습니다. /home, root ( /) 및에 대한 별도의 파티션이 /usr있습니다.

디스크 이미지 생성

dd간단하고 빠르기 때문에 사용 합니다. 작동 방식을 읽고 이해하십시오. 복사중인 전체 파티션 크기보다 큰 빈 파티션이 필요합니다. 시간이 꽤 걸릴 수 있습니다. 파티션 크기 조정 및 복사는 크기에 따라 몇 시간이 걸릴 수 있습니다. 이 프로세스에 사용할 저장 매체의 일부로 외장 드라이브를 교체해야합니다.

sudo dd if=/dev/sda5 of=/media/externaldrive/sda5-root.img
sudo dd if=/dev/sda7 of=/media/externaldrive/sda7-home.img
sudo dd if=/dev/sda6 of=/media/externaldrive/sda6-usr.img

내 설정에서 이것을 실행 한 후 실제 출력 예입니다.

$ sudo dd if=/dev/sda5 of=/media/home0/sda5-root.img
8193087+0 records in
8193087+0 records out
4194860544 bytes (4.2 GB) copied, 55.3159 s, 75.8 MB/s

Linux에서 제공하는 도구를 사용하여이 디스크 이미지의 크기를 줄일 수 있습니다.

$ sudo resize2fs -P sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Estimated minimum size of the filesystem: 605972
$ ls -sh ./sda5-root.img
 4.0G ./sda5-root.img
$ sudo resize2fs -M sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Please run 'e2fsck -f sda5-root.img' first.
$ sudo e2fsck -fy ./sda5-root.img # y makes it run without asking thousands of questions.

e2fsck많은 오류를 출력하거나 수정해야합니다. 파일 시스템의 정보가 더 이상 파티션 경계의 시작 및 종료 위치와 관련하여 정확하지 않기 때문입니다. 더 이상 구성된 파티션에 없기 때문에 올바른 것입니다.

$ sudo resize2fs -M sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Resizing the filesystem on sda5-root.img to 605505 (4k) blocks.
 Resizing the filesystem on sda5-root.img to 605505 (4k) blocks.
 The filesystem on sda5-root.img is now 605505 blocks long.
$ ls -sh ./sda5-root.img
 2.4G ./sda5-root.img

기본적으로 파티션의 모든 여유 공간을 제거합니다. 따라서 더 큰 파티션의 경우 디스크 크기의 50 % 이상이 될 수 있습니다. 작은 파일을 훨씬 빠르게 복사

이제 라이브 디스크로 새 랩톱을 부팅하고 여기에서 수행 할 작업을 수행해야합니다. 설치된 운영 체제에서 현재 사용중인 실행중인 파티션을 변경할 수 없으므로 라이브 디스크를 사용해야합니다.

이제이 디스크 이미지를 새 컴퓨터의 파티션으로 복사 할 수 있습니다. 이 파티션을 이미 설정 했어야합니다. 라이브 디스크를 사용하면 gparted빠르고 쉬운 방법입니다. 시스템에 필요한 모든 파티션이 있는지 확인하십시오. 이 파티션을 이전 시스템의 파티션보다 크게 만들 수 있습니다. 디스크 이미지를 복사하면 파일 시스템의 크기가 조정되어 파티션의 모든 여유 공간을 차지합니다.

이제 2 단계 : 디스크 이미지를 새 드라이브와 새 파티션에 복사하십시오.

sudo dd if=/media/exteranldrive/sda5-root.img of=/dev/sda3 # replace the [sda3] with your partition.  

내 컴퓨터에서 출력 결과는 다음과 같습니다.

$ sudo dd if=./sda5-root.img of=/dev/sdb6 
4844040+0 records in  
4844040+0 records out  
2480148480 bytes (2.5 GB) copied, 87.4921 s, 28.3 MB/s  

$ sudo fsck.ext4 -fy /dev/sdb6  
e2fsck 1.41.11 (14-Mar-2010)  
Pass 1: Checking inodes, blocks, and sizes  
Pass 2: Checking directory structure  
Pass 3: Checking directory connectivity  
Pass 4: Checking reference counts  
Pass 5: Checking group summary information  
root1: 50470/504000 files (1.4% non-contiguous), 616736/2060328 blocks  

이제 올바른 장치를 가리 키도록 fstab 파일을 편집해야합니다. 새 디스크 파티션을 새 디스크에 방금 복사 한 경우 fstab 파일이 해당 파티션에 있으므로 파일에 액세스하려면 마운트해야합니다. 별도의 부팅 파티션이없는 경우 grub을 설치하려면 루트 파티션을 마운트해야합니다.

$ sudo mkdir /mnt/tmp  
mount /dev/sdb6 /mnt/tmp  
$ sudo blkid  # to see what the disk uuid is   
/dev/sda5: LABEL="root1" UUID="ddc8c237-e8ac-4038-a0ed-f7c866d6603b" TYPE="ext4"  
/dev/sdb6: LABEL="root1" UUID="ddc8c237-e8ac-4038-a0ed-f7c866d6603b" TYPE="ext4"  
$ gksu gedit /mnt/tmp/etc/fstab  
replace the UUID with the UUID of your partition  
UUID=ddc8c237-e8ac-4038-a0ed-f7c866d6603b /               ext4    errors=remount-ro 0  1

여기서 다른 디스크로 복사 한 새 디스크 이미지가 원래 파일 시스템과 동일한 UUID를 가짐을 알 수 있습니다. 따라서 이전 설치의 fstab 파일을 새 설치에 복사하고 작동중인 시스템을 가질 수 있습니다. 부팅됩니다. 내 설정에서 컴퓨터를 이런 식으로 두지 못하거나 가장 먼저 찾은 장치로 부팅됩니다.

fstab을 편집하고 uuid가 루트 및 홈용으로 설정 한 파티션과 설정 한 다른 파티션과 일치하는지 확인하십시오.

마지막 단계는 새 디스크에 grub을 설치하는 것입니다.

sudo chroot /mnt/tmp # your root partition.   
grub-install /dev/XXX  

나의 경우에는:

grub-install /dev/sdb
update-grub

시작하기 전에이 지침을 읽으십시오. 새 랩톱에 모든 데이터를 가지고 있고 부팅 할 수 없습니다.

Windows 설치 후
https://help.ubuntu.com/community/Grub2 https://help.ubuntu.com/community/RecoveringUbuntu


대상 파티션에 디스크 이미지보다 많은 공간이 있으면 추가 공간을 사용할 수 있습니까? 아니면 낭비됩니까?
nikhil

@nikhil. dd는 추가 공간을 사용하지 않습니다. 그러나 그것은 설계된 것이 아닙니다. 파일 시스템을 이해하지 못합니다. 다른 fsck.ext4는 파티션과 파일 시스템을 이해했습니다. 파일 시스템 검사의 일부는 파티션 크기를 확인하고 파일 시스템이 파티션 크기와 일치하는지 확인하는 것입니다.
nelaaro

8

clonezilla를 사용해보십시오. Clonezilla는 디스크 이미징 / 복제 도구입니다. 이 도구를 사용하여 Ububtu를 새 시스템에 복제 할 수 있습니다.

clonezilla 부팅 메뉴

Clonezilla는 설정과 전체 파티션을 복제합니다.

사용 가능한 clonezilla의 두 가지 버전이 있습니다. Clonezilla live는 일회용으로 적합합니다.

자세한 내용은이 링크를 참조하십시오 .


1
좋은 옵션입니다. 다른 하드웨어를 복원하는 것이 쉽지 않을 수도 있습니다. 같은 크기의 파티션으로 복원하면 괜찮을 것 같습니다. PING (Partition-Image-Is-Not-Ghost)도 시도 할 수 있습니다. 다른 도구입니다.
Whirl Mind
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.