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

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

Este estudo de caso cria um arquivo de banco de dados no tempo de instalação e salva um cópia do banco de dados quando o pacote é removido.

Técnicas

Este estudo de caso demonstra as seguintes técnicas:

Abordagem

Para criar um arquivo de banco de dados na instalação e salvar uma cópia na remonação neste estudo de caso, você deve realizar as tarefas seguintes:

Arquivos de estudo de caso

O arquivo pkginfo

PKG=krazy
NAME=KrAzY Applications
CATEGORY=applications
BASEDIR=/opt
ARCH=SPARC
VERSION=Version 1
CLASSES=none cfgdata admin

O arquivo prototype

i pkginfo
i request
i i.admin
i r.cfgdata
d none bin 555 root sys
f none bin/process1 555 root other
f none bin/process2 555 root other
f none bin/process3 555 root other
f admin bin/config 500 root sys
d admin cfg 555 root sys
f admin cfg/datafile1 444 root sys
f admin cfg/datafile2 444 root sys
f admin cfg/datafile3 444 root sys
f admin cfg/datafile4 444 root sys
d cfgdata data 555 root sys

O arquivo space

# extra space required by config data which is
# dynamically loaded onto the system
data 500 1

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

# PKGINST parameter provided by installation service
# BASEDIR parameter provided by installation service
while read src dest
do
   cp $src $dest || exit 2
done
# if this is the last time this script will be executed
# during the installation, do additional processing here.
if [ "$1" = ENDOFCLASS ]
then
# our config process will create a data file based on any changes
# made by installing files in this class; make sure the data file
# is in class `cfgdata' so special rules can apply to it during
# package removal.
   installf -c cfgdata $PKGINST $BASEDIR/data/config.data f 444 root
   sys || exit 2
   $BASEDIR/bin/config > $BASEDIR/data/config.data || exit 2
   installf -f -c cfgdata $PKGINST || exit 2
fi
exit 0

Isso ilustra uma instância rara na qual installf é apropriada em um script de ação de classe. Pelo fato do arquivo space ser usado para reservar espaço em um sistema de arquivos específico, este novo arquivo pode ser adicionado seguramente, mesmo se não estiver incluído no arquivo pkgmap.

O script de remoção r.cfgdata

# the product manager for this package has suggested that
# the configuration data is so valuable that it should be
# backed up to $PKGSAV before it is removed!
while read path
do
# path names appear in reverse lexical order.
   mv $path $PKGSAV || exit 2
   rm -f $path || exit 2
done
exit 0