21.3.2. %pre-install 스크립트
pre-install 스크립트의 명령은 다음 작업이 완료된 후 실행됩니다.
- 시스템이 분할됨
- 파일 시스템은 /mnt/sysroot에 생성 및 마운트됨
- 네트워크가 부팅 옵션 및 Kickstart 명령에 따라 구성되었습니다.
%pre-install 각 섹션은 %pre-install로 시작하고 %end로 끝나야 합니다.
%pre-install 스크립트를 사용하여 설치를 수정하고 패키지 설치 전에 보장된 ID가 있는 사용자 및 그룹을 추가할 수 있습니다.
설치에 필요한 수정 사항에 대해 %post 스크립트를 사용하는 것이 좋습니다. %post 스크립트가 필요한 수정 사항에 대한 짧은 경우에만 %pre-install 스크립트를 사용합니다.
pre-install 스크립트는 chroot 환경에서 실행되지 않습니다.
21.3.2.1. %pre-install 스크립트 섹션 옵션 링크 복사링크가 클립보드에 복사되었습니다!
다음 옵션을 사용하여 pre-install 스크립트의 동작을 변경할 수 있습니다. 옵션을 사용하려면 스크립트 시작 시 %pre-install 행에 추가합니다. 예를 들면 다음과 같습니다.
%pre-install --interpreter=/usr/libexec/platform-python
-- Python script omitted --
%end
동일한 인터프리터 또는 다른 인터프리터와 함께 %pre-install 섹션이 여러 개 있을 수 있습니다. Kickstart 파일에 나타나는 순서에 따라 평가됩니다.
--interpreter=Python과 같은 다른 스크립팅 언어를 지정할 수 있습니다. 시스템에서 사용 가능한 모든 스크립팅 언어를 사용할 수 있습니다. 대부분의 경우
/usr/bin/sh,/usr/bin/bash및/usr/libexec/platform-python입니다.platform-python인터프리터는 Python 버전 3.6을 사용합니다. 새 경로와 버전의 Python 스크립트를 이전 RHEL 버전에서 변경해야 합니다. 또한platform-python은 시스템 툴을 위한 것입니다. 설치 환경 외부의python36패키지를 사용합니다. Red Hat Enterprise Linux의 Python에 대한 자세한 내용은 Python 소개 를 참조하십시오.--erroronfail-
스크립트가 실패하면 오류를 표시하고 설치를 중지합니다. 오류 메시지는 실패의 원인이 기록되는 위치로 안내합니다. 설치된 시스템은 불안정하고 부팅 불가능한 상태가 될 수 있습니다.
inst.nokill옵션을 사용하여 스크립트를 디버깅할 수 있습니다. --log=스크립트의 출력을 지정된 로그 파일에 기록합니다. 예를 들면 다음과 같습니다.
%pre-install --log=/mnt/sysroot/root/ks-pre.log