it-swarm-ko.tech

Ubuntu, 기존 컴퓨터와 같은 새 컴퓨터를 설정하는 방법

필요한 앱이있는 하나의 컴퓨터 설정이 있고 새 Ubuntu 상자에 같은 것을 설치하고 싶습니다.

설치된 모든 앱을 나열하는 스크립트가있어 상자를 구분하여 누락 된 항목을 추가 할 수 있습니까?

미리 감사드립니다, Chris

27
Chris Kimpton

Pjz에서 언급 한 dpkg 트릭과 마찬가지로 etckeeper ( tutorial )-/ etc/*를 버전 제어하에 두는 앱을 살펴볼 수도 있습니다. 변경 사항을 쉽게 찾고 다른 서버에 복제 할 수 있습니다.

또한 pjz의 방법으로 생성 된 목록보다 짧은 목록의 경우 다음을 사용할 수 있습니다.

$ deborphan -a --no-show-section > /tmp/mypackagelist

그러면 종속성으로 필요한 다른 모든 패키지를 설치할 패키지 목록이 제공됩니다. 실제로 목록을 살펴보고 싶은 경우 유용 할 수 있습니다. (dpkg --get-selections는 loooong 목록을 생성합니다). 또한 목록은 줄 바꿈을 추가하고 '#'으로 항목을 주석 처리 할 수있을만큼 짧습니다. 그런 다음 추가 패키지를 설치할 때 할 수 있습니다.

$ grep -v '#' /tmp/mypackagelist | xargs apt-get install -y

이렇게하면 일부 시스템에만 설치하려는 패키지가있는 경우 패키지 목록에서 패키지를 모두 삭제할 필요가 없습니다.

18
Hamish Downer
dpkg --get-selections >/tmp/mypackagelist

트릭을해야합니다. 그런 다음 새 컴퓨터의 /etc/apt/sources.list에 이전 항목과 동일한 항목 집합이 있는지 확인한 후 mypackagelist를 새 컴퓨터에 복사하고 다음을 수행합니다.

cat mypackagelist | xargs apt-get -y install 

그리고 당신은 잘 가야합니다.

Dpkg --get-selections 줄은 때때로/etc/dir에 넣을 수있는 좋은 정보입니다. 즉,/bin/및/usr/bin/등을 백업 할 필요가 없음을 의미합니다. 시스템에있는 패키지.

17
pjz

더 나은 dpkg 명령은 [original machine] 일 수 있습니다.

dpkg --get-selections | grep -v deinstall > packages_list

그런 다음 [새 컴퓨터를 설치할 때; packages_list 전송 후]

Sudo dpkg --set-selections < packages_list
Sudo apt-get -u dselect-upgrade
2
Benji

Ubuntu 포럼에는 좋은 답변

  1. 이전 머신 : $ dpkg --get-selections> installed-software
    • 설치된 앱 목록을 가져옵니다.
  2. 새 컴퓨터에서 : $ dpkg --set-selections
    • 이렇게하면 현재 새 컴퓨터에 설치되지 않은 패키지를 설치하도록 새 컴퓨터가 설정됩니다.
    • 새 컴퓨터에 이전 컴퓨터에 설치되지 않은 패키지가 있는지 확인하는 것이 흥미로울 수 있으므로 새 컴퓨터에서 dpkg --get-selections> 명령을 찾은 다음 diff를 사용하여 둘의 출력 파일을 비교할 수 있습니다.
  3. 마지막으로 새 시스템에서 $ dselect를 선택하면 패키지가 설치됩니다.

포럼 토론의 추가 링크 :

  1. Gpg 키를 잊지 마세요 (같은 스레드에서)
  2. 원하는 모든 패키지를 설치하고 원하지 않는 모든 패키지를 제거하는 방법
2
pcapademic

ReMasterSys라는 도구가 있습니다. http://geekconnection.org/remastersys/ 참조

나는 그것이 사용되기를 바랍니다.

1
user46844

FSArchiver 를 사용하여 시스템을 복제하는 것은 완벽하게 허용됩니다. 그렇지 않으면 여기에 유용한 명령 쌍이 있습니다.이 중 전반부는 백업 크론에 추가 할 수도 있습니다.

debconf-get-selections
debconf-set-selections

~

aptitude-create-state-bundle
aptitude-run-state-bundle --unpack

~

dpkg --get-selections
dpkg --clear-selections; dpkg --set-selections

복제해야하는 위치는/etc 및/var입니다. 위의 명령은/var에있는 몇 개의 파일을 직접 조작하고 debconf를 통해 간접적으로/etc에있는 일부 conf 파일을 조작합니다. 하위 트리를 복제하고 aptitude를 실행하면 동일한 효과를 얻을 수 있습니다.

1
Tobu

CLI 팬이 아닌 경우 (정말 그래야하지만) Synaptic 패키지 관리자를 사용하여 설치된 패키지의 이미지를 저장하고 해당 파일 (다시 Synaptic을 통해)을 사용하여 새 시스템을로드 할 수 있습니다. 파일/저장 표시 옵션 아래에 "전체 상태 저장"이라는 확인란이 있습니다.

1
Nerdfest

dd를 사용하여 시스템을 복제하지 않는 이유는 무엇입니까?

1
elcuco

나는 Docker 이 작업을 지금 수행하는 방법이라고 생각합니다. Dockerfile에서 요구 사항을 정의합니다. 그런 다음 모든 Docker 호스트에서 실행할 수 있습니다.

0
Chris Kimpton