답변:
더 나은 방법이 있는지는 모르겠지만 (아마도있을 것입니다) 필요한 규모에 따라 기계의 일부에 적성의 검색 기능을 사용할 수 있습니다. 패턴과 일치하는 패키지를 검색 할 수 있습니다. 따라서 aptitude search '~i'
설치된 모든 패키지를 제공합니다
하지만 한 걸음 더 나아가 야합니다. 패키지 관리자는 사용자가 직접 요청한 패키지와 다른 패키지로 인해 가져온 패키지를 알고 싶어합니다. 그 정보가 없으면 못생긴 일이 발생할 수 있습니다. 따라서 검색 패턴을 확장하여 자동으로 설치되지 않은 패키지를 선택할 수 있습니다.aptitude search '!~M ~i'
검색 기능은 Aptitude 's reference manual에 자세히 설명되어 있습니다 .
이제 설치할 패키지 목록이 있습니다. 패키지 이름 만있는 목록을 가져 오려면 -F '% p'와 같이 -F 플래그를 해당 명령에 전달 하여 출력 형식을 지정할 수 있습니다 .
예를 들어 , 머신 1 에서이를 실행할 수 있습니다 .
aptitude -F "%c %p" --disable-columns search '!~M ~i' | awk -F " " '{ print "apt-get -y install " $2 }' > aptshell.sh
그런 다음 새로 만든 복사 aptshell.sh
를 통해 파일을 컴퓨터 2 과와에이 명령을 사용 기계 2 가 실행하기 :
sudo sh aptshell.sh
그런 다음 원래 머신 2 를 새 머신 1로 , 원래 머신 1 을 새 머신 2 로 사용 하여 프로세스를 반복하십시오 . 이제 각 컴퓨터에는 이전에 다른 패키지에만 있던 모든 패키지가 있습니다.
이것은 오래된 질문이지만 아무도 말하지 않았으므로 dpkg와 cron으로 무언가를 할 수 있습니다. dpkg의 get-selections 및 set-selections 명령으로 영리한 작업을 수행하는 cron 작업을 설정하십시오.
dpkg --set-selections < ~/Dropbox/selections.dpkg
dpkg --get-selections > ~/Dropbox/selections.dpkg
이것은 제안 된 솔루션이 아니며, 어느 컴퓨터에서든 변경할 때마다 selections.dpkg가 업데이트되도록하는 방법을 찾아야합니다.
Dropbox를 사용하여 패키지 설치를 동기화 할 수 없습니다.
시냅틱은 패키지 다운로드 목록을 저장할 수있는 방법이 있지만, "이번에 다운로드하려는 패키지"보다는 "설치된 모든 것"의 경우를 처리 할 수 있을지 모르겠습니다.