내 Linux 배포판에서 설치 가능한 ISO를 만드는 방법

내 Linux 배포판에서 설치 가능한 ISO를 만드는 방법

나만의 배포판을 만들기 위해 Ubuntu의 핵심 사용자 정의를 수행했습니다. 하지만 설치 가능한 ISO를 만드는 방법을 모르겠습니다. 이 작업을 수행하는 방법을 아는 사람이 있나요?

답변1

두 단계:

  1. 변경 사항을 패키지화하세요.
  2. ISO에 패키지를 포함하십시오.

디자인 포장

나는 귀하의 패키지에 다섯 가지 항목이 포함되기를 원합니다.

  1. 새 구성 파일
  2. 기존 구성 파일의 스크립트 사용자 정의
  3. 스크립트 명령
  4. 필수 종속성
  5. 편리한 의존성

새로운 프로파일은 소프트웨어 패키지의 일부로 쉽게 설치할 수 있습니다. 가방에 추가하기만 하면 됩니다. /etc/sudoers또는 등의 파일을 변경한 경우 변경 사항을 또는 /etc/apt/sources.list에 적용해 보십시오 . sudo로 배포된 버전을 재정의할 것으로 예상하여 자체 버전을 배포하지 마세요 . 패키지가 충돌하여 설치에 실패합니다./etc/sudoers.d//etc/apt/sources.list.d//etc/sudoers

기존 구성 파일을 정말로 변경해야 하는 경우 해당 파일을 스크립트에 추가하세요 postinst. prerm스크립트의 변경 사항을 실행 취소해 보세요 . 여기 몇 가지 예가 있어요.

echo "192.168.1.1    router" >> /etc/hosts
sed 's/PasswordAuthentication yes/PasswordAuthentication no/' -i /etc/ssh/sshd_config

명령(예: useradd또는 realm)을 실행해야 하는 경우 postinst.

이 패키지에 종속성을 추가할 수도 있습니다. 을 변경하는 경우 스크립트가 작동하기 전에 파일이 설치되었는지 확인 /etc/ssh/sshd_config해야 할 수도 있습니다 . openssh-server각 파일을 소유한 패키지를 찾을 수 있습니다 dpkg -S /path/to/file.

사용자 정의 구성에서 원하는 패키지에 대한 종속성을 추가할 수도 있습니다. chromium을 좋아하고 이 이미지를 사용할 때마다 chromium을 설치해야 한다는 것을 알고 있다면 계속해서 chromium에 대한 종속성을 추가하여 apt-get나중에 수동으로 설치할 필요가 없도록 하세요.

포장 만들기

소프트웨어 패키지를 만드는 데 사용할 수 있는 일부 도구는 다음과 같습니다.dh_make또는cpack.

dh_make즐겨찾는 파일을 추가할 수 있도록 템플릿이 만들어지며, 이 템플릿은 파일을 dpkg-buildpackage생성 하는 데 사용됩니다. *.deb모든 옵션을 이해하는 것은 다소 어렵고 연구하고 이해하는 데 시간이 걸리지만 이것이 기본 Debian/Ubuntu 패키지가 생성되는 방식입니다.

cpack파일을 사용하여 CMakeLists.txt규칙을 정의합니다. 다음 명령을 사용하여 패키지에 파일을 추가합니다.install()명령과CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA역할을 정의하는 데 도움이 될 것입니다. 특히 간단한 패키지를 사용하면 배우기가 더 쉽습니다 cpack.

패키지가 있으면 새 Ubuntu를 부팅하고(chroot 또는 vm을 사용하여) dpkg -i시스템이 요구 사항을 충족하면 성공한 것입니다. 이제 기본 우분투 설치를 수행하고 이 단일 패키지를 설치하여 사용자 정의할 수 있습니다.

ISO 포장

하지만 한 단계 더 나아가고 싶으신 것 같습니다. 해당 명령을 실행하는 것이 아니라 바로 사용자 정의 기능을 사용하고 싶으신 것입니다. 당신은 할 수 있습니다!

Debian이나 Ubuntu와 같은 방식으로 설치 CD를 생성해야 하지만, 디스크에 자체 패키지를 추가하고 자동으로 설치되도록 설정해야 합니다.

SimpleCDD아마도 데비안 기반 ISO를 만드는 가장 간단한 도구일 것입니다. 하지만 우분투에서 얼마나 잘 작동할지는 잘 모르겠습니다. LiveCD 사용자 정의가장 가능성 있는 해결책인 것 같습니다.

관련 정보