2010-03-04 2 views
0

Linux RPM (Adding License Agreement in RPM package)과 비슷한 질문을했습니다. 이제 솔라리스 패키지에 대한 동일한 쿼리가 있습니다. 가능한 경우 유용한 링크/세부 정보를 얻을 수 없습니다. 그러나 정확히 같은 일을하는 꾸러미를 찾았지만 구현 방법은 언급하지 않았습니다.Solaris 패키지에 사용자 라이센스 계약 추가

$pkgadd -d . SUNWsamfsr SUNWsamfsu 

Processing package instance from 

Sun SAM and Sun SAM-QFS software Solaris 10 (root)(i386) 4.6.5,REV=5.10.2007.03.12 

Sun SAMFS - Storage & Archiving Management File System 

Copyright (c) 2007 Sun Microsystems, Inc. 

All Rights Reserved. 


----------------------------------------------------- 

In order to install SUNWsamfsr, you must accept the terms of 
the Sun License Agreement. 
Enter "y" if you do, "n" if you don't, or "v" to view agreement. y 

-The administrator commands will be executable by root only (group bin). 

If this is the desired value, enter "y". If you want to change 
the specified value enter "c". y 
... 
... 

어떤 아이디어가 Solaris 패키지에 구현 되나요?

답변

0

나는 그것을 해결하는 방법을 발견했다.

자동 추출 바이너리가이를 수행하는 방법입니다.

최종 사용자 라이센스를 처음으로 표시하고 사용자 동의 여부와 상관없이 사용자 입력을받는 셸 스크립트를 만듭니다.

사용자가 동의하면 쉘 스크립트에 포함 된 바이너리 (solaris 패키지 파일)를 추출하여 설치하십시오.
고양이 pkg_file_name >> your_shell_script

패키지의 압축을 풀고 설치한다 : :

shell script contents 
exit 0 
PKG_DATA 

패키지 파일을 추가 :

먼저 마커를 추가, 설치 pacakge를 포함하려면 말 PKG_DATA 수 있습니다

ARCHIVE=awk '/^__PKG_DATA__/ {print NR + 1; exit 0; }' $0 
outname=install.$$ 
tail -n+$ARCHIVE $0 > $outname 

echo "Extracting..." 
pkgadd -d $outname 
rm -f $outname #we dont need it anymore 

exit 0 

PKG_DATA 
<pkg file data here> 
+0

Usefule 링크 : http://www.linuxjournal.com/content/add-binary-payload-your-shell-scripts http://www.linuxjournal.com/node/ 1005818 – Adil

0

checkinstall 스크립트를 사용하여 구현할 것입니다.

"exit 3"스크립트에서 패키지 설치가 정상적으로 종료됩니다.

요청 스크립트를 작성하고 checkinstall 스크립트에서이를 참조해야하기 때문에 사소한 일이 아닙니다.

http://docs.oracle.com/cd/E18752_01/html/817-0406/ch1designpkg-24309.html#ch1designpkg-4

+0

사실'checkinstall'은 비 대화식으로되어 있습니다. 'request'는 대화 형이며 패키지 설치 중에 실행됩니다. checkinstall에서'request'를 실행할 필요가 없습니다. – Kenster

+0

그건 분명히 충분하지는 않지만 내가 의미하는 바입니다. 요청 스크립트를 사용하여 사용자와 상호 작용하고 checkinstall에서 3을 종료하십시오. 참고로, request 스크립트는 checkinstall에서 사용될 변수를 설정합니다. 그게 요청이 디자인 된 방식입니다. pacakge를 설치하기 전에 http://docs.sun.com/app/docs/doc/806-7008/6jftmsc2v?a=view – jlliagre

+0

라이센스 동의서를 표시하고 동의해야합니다. – Adil

관련 문제