JavaScript is required to for searching.
Omitir Vínculos de navegación
Salir de la Vista de impresión
Guía del desarrollador para la creación de paquetes de aplicaciones     Oracle Solaris 10 1/13 Information Library (Español)
search filter icon
search icon

Información del documento

Prefacio

1.  Diseño de un paquete

2.  Creación de un paquete

3.  Mejora de las funciones de un paquete (tareas)

4.  Verificación y transferencia de un paquete

5.  Casos prácticos de creación de paquetes

Cómo solicitar entrada de información al administrador

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo prototype

La secuencia de comandos request

Creación de un archivo durante la instalación y cómo guardarlo durante la eliminación

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo prototype

El archivo space

La secuencia de comandos de acción de clase i.admin

La secuencia de comandos de eliminación r.cfgdata

Definición de dependencias y compatibilidades de paquetes

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo copyright

El archivo compver

El archivo depend

Modificación de un archivo mediante secuencias de comandos de acción de clase y clases estándar

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo prototype

La secuencia de comandos de acción de clase de instalación i.inittab

La secuencia de comandos de acción de clase de eliminación r.inittab

El archivo inittab

Modificación de un archivo mediante la clase sed y una secuencia de comandos postinstall

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo prototype

La secuencia de comandos de acción de clase sed Class Action Script (/etc/inittab)

La secuencia de comandos postinstall

Modificación de un archivo mediante la clase build

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo prototype

El archivo build

Modificación de archivos crontab durante la instalación

Técnicas

Aproximación

Archivos de casos prácticos

El comando pkginfo

El archivo prototype

La secuencia de comandos de acción de clase de instalación i.cron

La secuencia de comandos de acción de clase de eliminación r.cron

Archivo crontab n.º 1

Archivo crontab n.º 2

Instalación y eliminación de un controlador con secuencias de comandos de procedimientos

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo prototype

La secuencia de comandos request

La secuencia de comandos postinstall

La secuencia de comandos preremove

Instalación de un controlador mediante las secuencias de comandos de procedimientos y la clase sed

Técnicas

Aproximación

Archivos de casos prácticos

El archivo pkginfo

El archivo prototype

La secuencia de comandos de acción de clase sed Class Action Script (/etc/devlink.tab)

La secuencia de comandos de instalación postinstall

La secuencia de comandos de eliminación preremove

El archivo copyright

6.  Técnicas avanzadas para la creación de paquetes

Glosario

Índice

Modificación de archivos crontab durante la instalación

Este caso práctico modifica los archivos crontab durante la instalación del paquete.

Técnicas

Este caso práctico muestra las técnicas siguientes:

Aproximación

El modo más eficaz de modificar más de un archivo durante la instalación es definir una clase y ofrecer una secuencia de comandos de acción de clase. Si se ha servido de la aproximación a la clase build, debe entregar una secuencia de comandos de clase build para cada archivo crontab modificado. La definición de una clase cron proporciona una aproximación más general. Para editar los archivos crontab con esta aproximación, debe:

Archivos de casos prácticos

Un superusuario ejecuta las secuencias de comandos i.cron y r.cron que se describen a continuación. La modificación del archivo crontab de otro usuario puede tener resultados imprevistos. Si fuera necesario, cambie la entrada siguiente de cada secuencia de comandos:

crontab $user < /tmp/$$crontab ||

a

su $user -c "crontab /tmp/$$crontab" ||

El comando pkginfo

PKG=case7
NAME=Case Study #7
CATEGORY=application
BASEDIR=/opt
ARCH=SPARC
VERSION=Version 1.0
CLASSES=cron

El archivo prototype

i pkginfo
i i.cron
i r.cron
e cron /var/spool/cron/crontabs/root ? ? ?
e cron /var/spool/cron/crontabs/sys ? ? ?

La secuencia de comandos de acción de clase de instalación i.cron

# PKGINST parameter provided by installation service
while read src dest
do
user=`basename $dest` ||
exit 2
(crontab -l $user |
sed -e "/#$PKGINST$/d" > /tmp/$$crontab) ||
exit 2
sed -e "s/$/#$PKGINST/" $src >> /tmp/$$crontab ||
exit 2
crontab $user < /tmp/$$crontab ||
exit 2
rm -f /tmp/$$crontab
done
exit 0

La secuencia de comandos de acción de clase de eliminación r.cron

# PKGINST parameter provided by installation service
while read path
do
user=`basename $path` ||
exit 2
(crontab -l $user |
sed -e "/#$PKGINST$/d" > /tmp/$$crontab) ||
exit 2
crontab $user < /tmp/$$crontab ||
exit 2
rm -f /tmp/$$crontab
done
exit 

Archivo crontab n.º 1

41,1,21 * * * * /usr/lib/uucp/uudemon.hour > /dev/null
45 23 * * * ulimit 5000; /usr/bin/su uucp -c
"/usr/lib/uucp/uudemon.cleanup" >
/dev/null 2>&1
11,31,51 * * * * /usr/lib/uucp/uudemon.poll > /dev/null

Archivo crontab n.º 2

0 * * * 0-6 /usr/lib/sa/sa1
20,40 8-17 * * 1-5 /usr/lib/sa/sa1
5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A

Nota - Si la modificación de un grupo de archivos aumenta el tamaño total del archivo en más de 10K, proporcione un archivo space para que el comando pkgadd pueda permitir este aumento. Para obtener más información sobre el archivo space, consulte Reserva del espacio adicional en un sistema de destino.