밑바닥부터 시작하는 리눅스(Linux From Scratch)

3일차: 패키지 및 패치 준비

@thiskorea 2024. 12. 17. 08:17

https://www.notion.so/3-15e41aecc52a80018072fdc970fb7fd1?pvs=4


목표

  • LFS 시스템 빌드에 필요한 패키지와 패치를 준비합니다.
  • 패키지 다운로드, 저장 디렉토리 설정, 필요한 패치 파일 준비 과정을 번역.

3. 패키지와 패치

3.1 서론

LFS 시스템을 빌드하려면 특정 버전의 패키지와 패치가 필요합니다. 이 장에서는 필요한 파일 목록을 제공하고, 다운로드 및 관리 방법을 안내합니다.


3.2 모든 패키지

LFS 시스템 빌드에 필요한 패키지와 버전 목록은 아래와 같습니다:

  1. Binutils-2.43.1
  2. GCC-14.2.0
  3. Glibc-2.40
  4. Linux API Headers
  5. Bash-5.2.32
  6. Coreutils-9.5

전체 패키지 목록은 LFS 웹사이트 또는 책의 부록에 제공됩니다.

다운로드 방법:

  • 모든 패키지를 LFS 패키지 저장소에서 다운로드합니다.
  • 패치 파일도 함께 다운로드합니다.

3.3 디렉토리 구조 설정

패키지와 패치를 저장할 디렉토리를 준비합니다. 다음 명령을 사용하세요:

mkdir -v $LFS/sources
chmod -v a+wt $LFS/sources
  • $LFS/sources: 모든 패키지와 패치를 저장하는 디렉토리.
  • chmod -v a+wt: 디렉토리에 모든 사용자가 쓰기 권한을 가지도록 설정.

3.4 파일 다운로드

필요한 모든 패키지와 패치를 다운로드한 뒤, $LFS/sources 디렉토리에 저장합니다. 파일은 정확한 버전을 사용해야 하며, 손상되지 않았는지 확인해야 합니다.

파일 검증:

  • 각 파일의 SHA256 해시 값을 확인하여 다운로드한 파일이 손상되지 않았는지 점검합니다. 명령어는 다음과 같습니다:
    • md5sums 파일은 패키지와 함께 제공됩니다.
  • sha256sum -c md5sums

3.5 필요한 패치

일부 패키지는 빌드 오류를 방지하거나 기능을 추가하기 위해 패치가 필요합니다. 예를 들어:

  • Bash: 특정 환경에서의 호환성을 위한 패치.
  • Glibc: 보안 수정 사항.

패치 파일은 패키지와 동일한 저장소에서 다운로드할 수 있습니다.


요약

3일차 작업에서는 LFS 빌드에 필요한 모든 패키지와 패치를 다운로드하고 디렉토리를 설정했습니다.

  • $LFS/sources 디렉토리를 생성.
  • 패키지와 패치 파일을 정확한 버전으로 다운로드.
  • 해시 검증을 통해 파일 무결성을 확인.

4일차 작업

다음으로 환경 설정 및 초기 빌드 준비를 진행합니다. 이 과정에서는 빌드를 위한 제한된 디렉토리 레이아웃을 생성하고 기본적인 빌드 환경을 설정합니다. 😊