JavaScript is required to for searching.
Ignorar Links de Navegao
Sair do Modo de Exibio de Impresso
Guia do desenvolvedor de empacotamento de aplicativos     Oracle Solaris 10 1/13 Information Library (Português (Brasil))
search filter icon
search icon

Informação sobre o documento

Prefácio

1.  Criando um Pacote

2.  Construindo um Pacote

3.  Melhorando a funcionalidade de um pacote (Tarefas)

4.  Verificando e transferindo um pacote

5.  Estudos de caso de criação de pacote

Solicitando entrada do administrador

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo prototype

O script request

Criando um arquivo na instalação e salvando-o durante a remoção

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo prototype

O arquivo space

O script de ação de classe i.admin

O script de remoção r.cfgdata

Definindo compatibilidades e dependências de pacotes

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo copyright

O arquivo compver

O arquivo depend

Modificando um arquivo usando classes padrão e scripts de ação de classe

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo prototype

O script de ação de classe de instalação i.inittab

O script de ação de classe de remoção r.inittab

O arquivo inittab

Modificando um arquivo usando a classe sed e um script postinstall

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo prototype

O script de ação de classe sed (/etc/inittab)

O script postinstall

Modificando um arquivo usando a classe build

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo prototype

O arquivo build

Modificando arquivos crontab durante a instalação

Técnicas

Abordagem

Arquivos de estudo de caso

O comando pkginfo

O arquivo prototype

O script de ação de classe de instalação i.cron

O script de ação de classe de remoção r.cron

Arquivo crontab #1

Arquivo crontab #2

Instalando e removendo um driver com scripts de procedimento

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo prototype

O script request

O script postinstall

O script preremove

Instalando um driver usando a classe sed e scripts de procedimento

Técnicas

Abordagem

Arquivos de estudo de caso

O arquivo pkginfo

O arquivo prototype

O script de ação de classe sed (/etc/devlink.tab)

O script de instalação postinstall

O script de remoção preremove

O arquivo copyright

6.  Técnicas avançadas para a criação de pacotes

Glossário

Índice

Solicitando entrada do administrador

O pacote deste estudo de caso possui três tipos de objetos. O administrador pode escolher qual dos três tipos instalar e onde colocar os objetos na máquina de instalação.

Técnicas

Este estudo de caso demonstra as seguintes técnicas:

Abordagem

Para configurar a instalação seletiva neste estudo de caso, você deve concluir as seguintes tarefas:

Arquivos de estudo de caso

O arquivo pkginfo

PKG=ncmp
NAME=NCMP Utilities
CATEGORY=application, tools
BASEDIR=/
ARCH=SPARC
VERSION=RELEASE 1.0, Issue 1.0
CLASSES=""
NCMPBIN=/bin
NCMPMAN=/usr/man
EMACS=/usr/emacs

O arquivo prototype

i pkginfo
i request
x bin $NCMPBIN 0755 root other
f bin $NCMPBIN/dired=/usr/ncmp/bin/dired 0755 root other
f bin $NCMPBIN/less=/usr/ncmp/bin/less 0755 root other
f bin $NCMPBIN/ttype=/usr/ncmp/bin/ttype 0755 root other
f emacs $NCMPBIN/emacs=/usr/ncmp/bin/emacs 0755 root other
x emacs $EMACS 0755 root other
f emacs $EMACS/ansii=/usr/ncmp/lib/emacs/macros/ansii 0644 root other
f emacs $EMACS/box=/usr/ncmp/lib/emacs/macros/box 0644 root other
f emacs $EMACS/crypt=/usr/ncmp/lib/emacs/macros/crypt 0644 root other
f emacs $EMACS/draw=/usr/ncmp/lib/emacs/macros/draw 0644 root other
f emacs $EMACS/mail=/usr/ncmp/lib/emacs/macros/mail 0644 root other
f emacs $NCMPMAN/man1/emacs.1=/usr/ncmp/man/man1/emacs.1 0644 root other
d man $NCMPMAN 0755 root other
d man $NCMPMAN/man1 0755 root other
f man $NCMPMAN/man1/dired.1=/usr/ncmp/man/man1/dired.1 0644 root other
f man $NCMPMAN/man1/ttype.1=/usr/ncmp/man/man1/ttype.1 0644 root other
f man $NCMPMAN/man1/less.1=/usr/ncmp/man/man1/less.1 0644 inixmr other

O script request

trap 'exit 3' 15
# determine if and where general executables should be placed
ans=`ckyorn -d y \
-p "Should executables included in this package be installed"
` || exit $?
if [ "$ans" = y ]
then
   CLASSES="$CLASSES bin"
   NCMPBIN=`ckpath -d /usr/ncmp/bin -aoy \
   -p "Where should executables be installed"
   ` || exit $?
fi
# determine if emacs editor should be installed, and if it should
# where should the associated macros be placed
ans=`ckyorn -d y \
-p "Should emacs editor included in this package be installed"
` || exit $?
if [ "$ans" = y ]
then
   CLASSES="$CLASSES emacs"
   EMACS=`ckpath -d /usr/ncmp/lib/emacs -aoy \
   -p "Where should emacs macros be installed"
   ` || exit $?
fi

Observe que um script request pode sair sem deixar nenhum arquivo no sistema de arquivos. Em instalações em versões do Oracle Solaris anteriores à 2.5 e versões compatíveis (onde nenhum script checkinstall pode ser usado), o script request é o lugar correto para testar o sistema de arquivos de todas as formas necessárias para garantir que a instalação será bem-sucedida. Quando o script request existir com o código 1, a instalação sairá perfeitamente.

Estes arquivos de exemplo mostram o uso de caminhos paramétricos para estabelecer vários diretórios base. No entanto, o método preferido envolve o uso do parâmetro BASEDIR que é gerenciado e validado pelo comando pkgadd. Sempre que vários diretórios base forem usados, tenha especial cuidado em prover a instalação de várias versões e arquiteturas na mesma plataforma.