설치 디스크의 ISO에서 데비안 바이너리 패키지를 추출하는 방법은 무엇입니까?

설치 디스크의 ISO에서 데비안 바이너리 패키지를 추출하는 방법은 무엇입니까?

Debian/Ubuntu 기반 배포판의 ISO 이미지에서 Debian 바이너리 패키지를 추출하려면 어떤 프로세스를 사용합니까?

답변1

예, 가져오기/추출이 가능합니다.배포판(설치 디스크의 ISO)에서 직접 가져온 iso 이미지입니다. 이를 수행하려면 아래 단계를 따르십시오.

  1. iso(라이브 CD 버전)를 가상 시스템(root /)으로 마운트합니다.

    • iso를 마운트하세요./media/cdrom

      sudo mkdir /media/cdrom
      sudo mount -o loop /path/to/iso /media/cdrom
      
    • filesystem.squashfs도착하다 /mnt:

      sudo mount -o loop /media/cdrom/casper/filesystem.squashfs /mnt
      

    이제 iso 이미지의 가상 시스템이 마운트(읽기 전용)되고 루팅되었습니다./mnt

  2. 명령을 통해 필요한 deb를 얻으십시오 dpkg-repack:-

    foo최근에 설치된 시스템에서 패키지를 가져와 다음을 실행한다고 가정해 보겠습니다 .

    dpkg-repack --root=/mnt foo
    

    --root=/mnt시스템이 다음에 뿌리를 두고 있음을 말합니다 ./mnt

    --root=dir
              Take package from filesystem rooted on <dir>. This is useful if, for example, you have another computer
              nfs mounted on /mnt, then you can use --root=/mnt to reassemble packages from that computer.
    

사용 예:-

Ubuntu 14.04 LTS를 실행 중이고 Xubuntu, Kubuntu 등의 iso 이미지가 있다고 가정하면 iso(해당 파생 버전에 사전 설치되어 있음)에서 직접 xfce 또는 kde 애플리케이션을 가져올 수 있습니다. xubuntu-desktopXubuntu iso 이미지처럼 전체 데스크탑 환경을 얻을 수도 있습니다 !

또 다른 예: Trisquel 7.0 LTS는 Ubuntu 14.04 LTS의 파생 버전입니다.완전 무료배포판에는 몇 가지 유용한 패키지가 사전 설치되어 있습니다(예 gimp: Trisquel의 ISO 이미지가 있는 경우 gimpISO 이미지에서 직접 가져와 Ubuntu에 설치할 수 있습니다!)

필요한 deb를 얻는 방법에 도움이 될 수 있는 중요 참고 사항( gimpiso의 예):-

  • 사용sudo apt-get install -s gimp | grep Inst | awk '{print $2}' > pkgreq 목록필수 패키지
  • 마지막 실행cat pkgreq | xargs sudo dpkg-repack --root=/mnt 얻기 위해그 빚!

노트:-이는 동일한 버전의 파생물 및 배포판(예: Trisquel 7.0 및 Ubuntu 14.04, xfce, kde 등과 같은 동일한 Ubuntu 파생물 버전)에서 성공하는 데 도움이 됩니다. 다른 버전 및/또는 파생물의 경우 종속성은 다음과 같아야 합니다. 해결되었습니다.

답변2

Ubuntu 서버 버전에는 iso에 .deb 패키지가 포함되어 있습니다. 데스크톱 버전과 서버 버전은 기본적으로 설치 방법이 다르지만 제가 아는 한 패키지는 본질적으로 동일하므로 또 다른 옵션은 해당 Ubuntu 버전의 서버 버전 iso 파일을 다운로드하는 것입니다.

그런 다음 -o 루프 옵션을 사용하여 iso 파일을 설치하면 "pool/main" 폴더에서 ".deb" 패키지를 찾을 수 있습니다.

Ubuntu는 Debian에서 파생되었으므로 Debian에서도 동일한 작업을 수행할 수 있습니다. 이 패키지는 같은 장소에서 찾을 수 있습니다.

관련 정보