소스에서 apt-get을 빌드할 수 있나요? [폐쇄]

소스에서 apt-get을 빌드할 수 있나요? [폐쇄]

커널 이미지와 빈 파일 시스템이 있고 여기에 데스크탑, 일부 기본 유틸리티 및 소프트웨어와 같은 프로그램을 채워야 합니다.

apt-get이 작업을 수행하기 위해 설치할 수 있는 방법이 있습니까? 정확히 어떻게 작동하는지 잘 모르겠습니다 apt-get. 따라서 정의된 배포판 등이 없기 때문에 몇 가지 문제가 있을 수 있습니다.

가능하다면 빌드에 필요한 소스 코드는 어디서 구할 수 있나요?

답변1

apt소스 코드는 다음에서 확인할 수 있습니다.살사, 그러나 소스에서 배포판을 부팅하기 위한 기반으로 설계되지 않았습니다. 데비안( apt기반) 배포판을 부팅하려면 다음과 같은 것을 사용해야 합니다.debootstrap, 실행하려면 꽤 많은 프로그램이 필요합니다(비록 파일 시스템이 비어 있지 않지만 기본 Linux 도구가 포함되어 있기 때문에 아마도 필요한 모든 것이 이미 있을 것입니다). 일반적으로 이런 방식으로 시스템을 부팅하려면 다른 데비안 스타일 시스템을 사용하거나 설치 프로그램을 실행해야 합니다.

부트스트래핑을 통해 자신을 개선하기 위해 소스 코드에서 시스템을 구축하려면 다음을 살펴봐야 합니다.처음부터 리눅스.

답변2

apt-get소스에서 빌드 할 수 있습니다 . 데비안 패키지의 소스 코드는 항상 다음에서 구할 수 있습니다.포장 페이지(컴포넌트의 일부 패키지 제외 non-free) 그러나 이것은 당신에게 도움이 되지 않습니다.

Linux 커널을 실행하는 시스템에 Debian 또는 Ubuntu를 설치하려면 다음을 사용하십시오.부팅 방지 프로그램. Debootstrap은 기본 시스템을 다운로드하고 설치합니다. debootstrap을 실행하지 않는 시스템에 설치하려면 2단계 모드를 사용하십시오. 먼저 debootstrapUnix 시스템(Debian일 필요는 없으며 기본 Unix 쉘 유틸리티를 사용할 수 있음 --foreign)에서 그런 다음 결과 파일을 대상 루트에 복사하십시오. 체계. 데비안의 바이너리--archwgetbusyboxbusybox-static파일을 아카이브로 패키징하는 것과 같이 도움이 될 수 있습니다 busybox tar -xzf -.

답변3

다른 사람들이 언급했듯이, debootstrap또는 cdebootstrap갈 길입니다.

복사하려는 경우 Essential: yes패키지 목록에 표시된 모든 패키지와 직접 및 간접 종속성을 다운로드한 다음 해당 패키지에 포함된 파일을 대상 파일 시스템에 추출합니다. 이는 ar, tar및 으로 수행할 수 있습니다 xz.

아직 설치된 파일이 제대로 등록되지는 않았지만 패키지 관리자를 실행할 수 있는 기능적인 시스템에는 이 정도면 충분합니다 dpkg. 이렇게 하려면 dpkg대상 파일 시스템 내에서 실행하고 동일한 패키지를 설치하도록 지시해야 합니다(파일을 효과적으로 덮어쓰려면).

관련 정보