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

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

Este estudo de caso modifica um arquivo existente durante a instalação do pacote usando classes padrão e scripts de ação de classe. Usa um dos três métodos de modificação. Os outros dois métodos estão descritos em Modificando um arquivo usando a classe sed e um script postinstall e Modificando um arquivo usando a classe build. O arquivo modificado é /etc/inittab .

Técnicas

Este estudo de caso demonstra como usar os scripts de ação de classe de instalação e de remoção. Para obter informações, consulte Escrevendo scripts de ação de classe.

Abordagem

Para modificar /etc/inittab durante a instalação usando classes e scripts de ação de classe, você deve realizar as tarefas seguintes:

Este estudo de caso é mais complicado do que o estudo de caso a seguir, consulte Modificando um arquivo usando a classe sed e um script postinstall. Em vez de fornecer dois arquivos, são necessários três arquivos e o arquivo /etc/inittab integrado é, em realidade, apenas um espaço reservado contendo um fragmento da entrada que será inserida. Poderia ter sido colocado no arquivo i.inittab exceto que o comando pkgadd deve ter um arquivo para passar ao arquivo i.inittab. O procedimento de remoção também deve ser colocado em outro arquivo (r.inittab). Embora este método funcione bem, é melhor reservá-lo para os casos que envolvam instalações complicadas de vários arquivos. Consulte Modificando arquivos crontab durante a instalação.

O programa sed usado em Modificando um arquivo usando a classe sed e um script postinstall oferece suporte a várias instâncias de pacote desde que o comentário no final da entrada inittab esteja baseado em uma instância de pacote. O estudo de caso em Modificando um arquivo usando a classe build mostra uma abordagem mais dinâmica para editar /etc/inittab durante a instalação.

Arquivos de estudo de caso

O arquivo pkginfo

PKG=case5
NAME=Case Study #5
CATEGORY=applications
BASEDIR=/opt
ARCH=SPARC
VERSION=Version 1d05
CLASSES=inittab

O arquivo prototype

i pkginfo
i i.inittab
i r.inittab
e inittab /etc/inittab ? ? ?

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

# PKGINST parameter provided by installation service
while read src dest
do
# remove all entries from the table that
# associated with this PKGINST
sed -e "/^[^:]*:[^:]*:[^:]*:[^#]*#$PKGINST$/d" $dest >
/tmp/$$itab ||
exit 2
sed -e "s/$/#$PKGINST" $src >> /tmp/$$itab ||
exit 2
mv /tmp/$$itab $dest ||
exit 2
done
if [ "$1" = ENDOFCLASS ]
then
/sbin/init q ||
exit 2
fi
exit 0

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

# PKGINST parameter provided by installation service
while read src dest
do
# remove all entries from the table that
# are associated with this PKGINST
sed -e "/^[^:]*:[^:]*:[^:]*:[^#]*#$PKGINST$/d" $dest >
/tmp/$$itab ||
exit 2
mv /tmp/$$itab $dest ||
exit 2
done
/sbin/init q ||
exit 2
exit 0

O arquivo inittab

rb:023456:wait:/usr/robot/bin/setup