하드웨어가 다른 컴퓨터 간에 구성을 마이그레이션하려면 어떻게 해야 합니까?

하드웨어가 다른 컴퓨터 간에 구성을 마이그레이션하려면 어떻게 해야 합니까?

Ubuntu 데스크탑의 구성을 하드웨어가 다른 새 시스템으로 마이그레이션하고 싶습니다. 이를 수행하는 가장 쉬운 방법은 무엇입니까? /etc/에는 시스템 및 하드웨어 관련 설정이 포함되어 있으므로 무작정 복사할 수 없습니다. 설치된 패키지에도 비슷한 문제가 있습니다.

편집: 이는 x86에서 x86-64로의 마이그레이션입니다.

답변1

첫째, 32비트 바이너리를 계속 실행한다면 실제로 프로세서 아키텍처가 변경되지는 않습니다. 즉, 다른 기능도 지원하더라도 여전히 x86 프로세서를 실행하게 됩니다. 이 경우 설치를 복제하거나 다음 설명에 따라 하드 드라이브를 이동하는 것이 좋습니다.Linux 설치를 새 컴퓨터로 이동.

반면에 64비트 시스템(Ubuntu 용어: 아키텍처)을 원하는 경우 64비트 시스템에는 패키지를 설치할 amd64수 없으므로 다시 설치해야 합니다 . ,그 반대도 마찬가지입니다. (언제amd64i386다중 아키텍처뒤에 오세요).

많은 사용자 정의 항목은 홈 디렉터리에 있으며 이를 새 컴퓨터에 복사할 수 있습니다. 프로세서 아키텍처의 변경으로 인해 시스템 설정을 쉽게 복제할 수 없습니다.

Ubuntu 10.10 이상에서는 다음을 시도하십시오.통일회의.

OneConf는 소프트웨어 정보를 기록하고 필요에 따라 다른 컴퓨터와 동기화하는 Ubuntu One의 메커니즘입니다. Maverick에는 설치된 소프트웨어 목록이 저장됩니다. 이는 결국 일부 애플리케이션 설정 및 애플리케이션 상태를 포함하도록 확장될 수 있습니다. 다음과 같은 기타 도구점멸더 많은 고급 설정/컨트롤을 사용할 수 있습니다.

새 설치에서 재현하려는 주요 항목 중 하나는 설치된 패키지 세트입니다. APT 기반 배포판에서는 명령 aptitude-create-state-bundle(패키지의 일부 aptitude)을 사용하여 설치된 패키지 및 해당 패키지 목록이 포함된 아카이브를 생성 할 수 있습니다.데브 컨퍼런스구성 및 aptitude-run-state-bundle새 시스템에서. (감사해요직관적그것에 대해 말해 보세요 aptitude-create-state-bundle. ) 또한보십시오Ubuntu는 명시적으로 설치된 패키지를 나열합니다.특히 슈퍼유저 및 Ubuntu 질문하기의 참고 자료뿐만 아니라텔레마코스의 대답, 이 부분을 수동으로 수행하는 방법에 대해 알아보세요.

에서 변경한 사항에 대해서는 /etc확인이 필요합니다. 대부분은 특정 하드웨어 또는 네트워크 설정과 관련되어 있으므로 복사해서는 안 됩니다. 다른 것들은 개인 기본 설정과 관련되어 있습니다. 그러나 설정이 홈 디렉토리에 저장되도록 가능하면 사용자별로 개인 기본 설정을 지정해야 합니다.

미리 계획한다면 사용할 수 있습니다관리자를 기다려주세요 etckeeper 설치버전 /etc관리(etckeeper 빠른 시작). etckeeper를 사용하기 위해 버전 제어에 대해 아무것도 알 필요가 없습니다. 이를 사용하여 멋진 작업을 수행하려면 배우기 시작하면 됩니다.

답변2

수동 구성을 제외한 모든 것을 얻는 방법은 다음과 같습니다.

dpkg --get-selections > packages.txt
debconf-get-selections > debconf.txt

필요에 따라 이러한 아치 종속 파일(예: linux-image)을 편집하지만 너무 많지는 않을 것 같습니다.

이 파일을 새 시스템에 복사하고 다음을 실행합니다.

debconf-set-selections < debconf.txt
dpkg --set-selections < packages.txt
apt-get dselect-upgrade

또한 /home 및 기타 데이터 디렉터리를 새 시스템에 복사(가급적 rsync 사용)해야 합니다.

남은 유일한 것은 기본 패키지(예: apache, 바인딩, cronjobs 등)의 구성 파일입니다.

답변3

실제로 드라이버, 레지스트리 및 마더보드 변경에 대한 민감성에 대한 많은 Windows 부두교는 모든 드라이버를 모듈로 포함하는 공통 커널을 사용하는 경우(Ubuntu의 일반적인 경우) Linux에서는 덜 심각합니다. 내가 아는 한 /etc에서 하드웨어에 의존하는 유일한 항목은 다음과 같습니다.

  • 독점 그래픽 드라이버가 설치되어 있다면 이것이 문제가 될 수 있다고 생각합니다.
  • 오래된 HP Pavilion(500Mhz CPU, 꽤 오래된)에서 Debian이 설치된 하드 드라이브를 약간 최신 MSI KT4V 보드로 교체했습니다. 내가 가진 유일한 문제는 네트워크 인터페이스 이름이 엉망이라는 것입니다. 하지만 이 설치는 명시적으로 라우터로 사용되도록 의도되었기 때문에 이는 일반 사용자보다 나에게 더 많은 영향을 미칩니다.
  • 영향을 받을 수 있는 또 다른 사항은 루멘 센서(사용하는 경우)입니다. 이는 마더보드에 따라 다르지만 센서 감지를 실행하여 문제를 해결할 수 있습니다.
  • Linux에서 루트 파티션으로 예상하는 장치를 변경하거나 /etc/fstab에서 가리키는 장치/파티션이 변경되는 경우(예: PATA 드라이브에서 SATA로 이동하는 경우) 이 장치를 업데이트해야 합니다. 그렇지 않으면 Linux에 문제가 발생합니다.

GPU가 동일하고 드라이버 컨트롤러가 동일한 유형이며 네트워크 인터페이스 이름에 의존하는 홈브루 스크립트가 많지 않다면 큰 문제는 예상되지 않습니다.

답변4

[추가이 훌륭한 답변]

설치된 패키지에 대한 우려를 언급하신 것을 확인했습니다. 디스크를 한 머신에서 다른 머신으로 옮기려는 것 같습니다. 두 컴퓨터가 모두 x86이라고 가정할 때 발생할 수 있다고 생각되는 유일한 문제는 설치가 64비트이고 새 컴퓨터가 그렇지 않다는 것입니다. 그 반대라면 문제가 없을 것입니다.

관련 정보