Red Hat Training

A Red Hat training course is available for Red Hat Satellite

6.2. RHN Satellite Server에 패키지 업로드

RHN Push 애플리케이션을 사용하면 조직은 RHN Satellite Server를 통해 비공개 RHN 채널에 할당된 사용자 정의 패키지를 제공할 수 있습니다. RHN Satellite Server가 공식적인 Red Hat Enterprise Linux 패키지만을 제공하고자 하는 경우 RHN Push를 설치할 필요가 없습니다.
RHN Push를 사용하시려면, rhnpush 패키지와 패키지가 의존하는 기타 패키지를 설치하십시오. 이 패키지는 등록된 RHN Satellite Server 시스템에서 up2date rhnpush 명령을 입력하여 설치하실 수 있습니다.
RHN Push는 RHN Satellite Server 데이터베이스에 RPM 헤더 정보를 업로드하고 그 RPM을 RHN Satellite Server 패키지 리포지터리에 저장합니다. RHN Proxy Server의 RHN Package Manager와는 달리 RHN Push는 RHN Satellite Server 데이터베이스 외부에 패키지 정보 및 헤더 정보를 배포하지 않습니다.

참고

Satellite가 Solaris OS 시스템을 지원하도록 설치되었다면, Solaris 클라이언트에서 RHN Push를 사용하여 Solaris 패키지 내용물을 사용자 정의 Solaris 채널에 업로드하실 수 있습니다.

6.2.1. RHN Push 애플리케이션 설정하기

RHN Push 설치시 중앙 설정 파일은 /etc/sysconfig/rhn/rhnpushrc에 설치됩니다. 이 파일에는 표 6.2. “rhnpush 옵션”에 있는 모든 옵션 값이 들어 있습니다.
rhnpush 명령을 입력한 디렉토리에 따라 다른 설정을 적용하는데 있어서 이 설정 파일들이 유용하게 사용됩니다. 현재 디렉토리의 설정 파일 (./.rhnpushrc)이 사용자의 홈 디렉토리의 설정 파일 (~/.rhnpushrc) 보다 우선시되며, 사용자의 홈 디렉토리의 설정은 중앙 설정 파일 (/etc/sysconfig/rhn/rhnpushrc) 보다 우선시됩니다.
예를 들어 현재 디렉토리 설정 파일은 다음을 지정하는 경우에 사용합니다:
  • 배치할 소프트웨어 채널
  • 호출할 사용자 이름을 포함시키기 위한 홈 디렉토리 설정 파일
  • 패키지를 수신하는 서버를 식별하기 위한 중앙 설정 파일
표 6.2. “rhnpush 옵션”에는 rhnpush 명령의 모든 명령행 옵션이 있습니다:

표 6.2. rhnpush 옵션

옵션 설명
-v --verbose 보다 상세하게 결과를 출력합니다. 이 옵션은 여러개 함께 사용 가능합니다. 즉 -vv, -vvv과 같이 결과를 보다 상세하게 보기 위해 사용할 수 있습니다.
-d, --dir DIRECTORY 이 디렉토리에서 패키지를 처리합니다.
-c, --channel=CHANNEL_LABEL 패키지를 받을 채널을 지정합니다. 이 옵션은 필수이며 이는 채널 이름과 같지 않다는 점에 유의하십시오. -c 옵션을 사용하여 채널을 여러개 지정하실 수 있습니다 (예: -c CHANNEL_ONE -c CHANNEL_TWO).
-n, --count N_HEADERS_PER_CALL 호출 당 숫자 만큼의 헤더를 처리합니다. 이 값은 반드시 정수이어야하며, 기본값은 25입니다.
-l, --list 지정된 채널 목록만 출력합니다.
-r, --reldirRELATIVE_DIRECTORY 각 파일에 이 상대 경로를 결합시킵니다.
-o, --orgidORGANIZATION_ID 조직의 ID 번호를 포함시킵니다. 이 값은 반드시 정수여야 합니다.
-u , --username USERNAME 지정된 채널에 관리 권한이 있는 사용자의 RHN 사용자명을 포함시킵니다. 이 사용자명을 지정하지 않으시면, rhnpush가 채널 관리자의 사용자명을 요청할 것입니다. 사용자명과 암호는 얼마간 (기본 5분) ~/.rhnpushcache 파일에 캐시 저장됩니다. 새 사용자명과 암호를 사용하시려면 --new-cache 옵션을 사용하십시오.
-p , --password PASSWORD 지정된 채널에 관리 권한이 있는 사용자의 RHN 암호를 포함시킵니다. 이 암호를 지정하지 않으시면, rhnpush가 채널 관리자의 사용자명을 요청할 것입니다. 사용자명과 암호는 얼마간 (기본 5분) ~/.rhnpushcache 파일에 캐시 저장됩니다. 새 사용자명과 암호를 사용하시려면 --new-cache 옵션을 사용하십시오.
-s, --stdin ls 명령과 같은 표준 입력에서 패키지 목록을 읽어옵니다.
-X, --exclude GLOB 이 glob 표현식에 일치하는 패키지를 제외시킵니다.
--force 해당 패키지 이름과 버전이 이미 채널에 있는 경우에도 패키지 업로드 작업을 실행합니다. 이 옵션을 사용하지 않고 기존 패키지를 업로드 시도할 경우 오류가 발생합니다.
--nosig 패키지가 서명되지 않은 경우에도 실패하지 않습니다.
--new-cache RHN Push가 사용자명과 암호 캐시를 버리고, 새 사용자명과 암호를 요청하여 수용하도록 명령합니다. 처음에 잘못 입력하신 경우 이 옵션이 유용합니다.
--newest 서버에 있는 패키지와 비교하여 보다 최신인 패키지만 푸시합니다. 소스 패키지는 절대로 서로 버전을 비교하지 않는다는 점에서 특별합니다. 소스 버전은 관련 바이너리 패키지에 따라서 최신 버전을 알 수 있습니다. RHN Push에 이 옵션을 함께 사용하시면 소스 패키지가 패키지를 업로드하지만, 관련 바이너리 패키지가 업로드되기 전에는 RHN 웹 인터페이스에서 소스 패키지가 나타나지 않습니다. 이 옵션은 --source 옵션과 반대됩니다. --source --newest 옵션은 관련 바이너리 패키지가 먼저 업로드되지 않아도 새로운 패키지를 가진 독립형 소스 패키지를 업데이트합니다.
--header 헤더만 업로드합니다.
--source 지정된 소스 패키지를 업로드합니다. 이 옵션을 사용하여 업로드하시면 소스 패키지를 기존 바이너리 패키지와 연관된 특별한 소스 패키지가 아닌 평범한 독립형 패키지로 처리됩니다. 예를 들어 소스 제어 관리와는 별도로 개발자와 테스터를 윈한 애플리케이션 소스를 배포하고자 할 경우 이 옵션을 사용하시면 됩니다.
--server SERVER 패키지를 업로드할 서버를 지정합니다. http://localhost/APP 변수는 필수이므로 반드시 입력하셔야 합니다.
--test 푸시된 패키지 목록만 출력하고, 실제로 푸시하지는 않습니다.
-h, --help 옵션에 대한 간단한 설명을 보여줍니다.
-?, --usage 사용법 요약 정보를 보여줍니다.

참고

이 명령행 옵션들은 rhnpush 맨페이지: man rhnpush에서도 설명되어 있습니다.