Para crear un archivo de base de datos en la instalación y guardar una copia tras la eliminación de este caso práctico, debe completar las tareas siguientes:
Defina tres clases.
El paquete de este caso práctico precisa que las tres clases siguientes se definan en el parámetro CLASSES:
La clase estándar de none, que contiene un conjunto de procesos que pertenecen al subdirectorio bin.
La clase admin, que contiene un archivo ejecutable config y un directorio que contiene archivos de datos.
La clase cfgdata, que contiene un directorio.
Convierta al paquete en reubicable colectivamente.
Observe que en el archivo prototype ninguno de los nombres de ruta comienza por una barra inclinada o una variable de entorno. Esto indica que son reubicables colectivamente.
Calcule la cantidad de espacio que el archivo de base de datos necesita y cree un archivo space que entregar con el paquete. Este archivo avisa al comando pkgadd que el paquete necesita espacio extra y especifica cuánto.
Cree una secuencia de comandos de acción de clase para la clase admin (i.admin).
La secuencia de comandos de ejemplo inicializa una base de datos mediante archivos de datos que pertenecen a la clase admin. Para llevar a cabo esta tarea, hace lo siguiente:
Copia del archivo de datos de origen en el destino adecuado
Crea un archivo vacío con el nombre config.data y lo asigna a una clase de cfgdata
Ejecuta el comando bin/config (entregado con el paquete y ya instalado) para rellenar el archivo de base de datos config.data mediante los archivos de datos que pertenecen a la clase admin
Ejecuta el comando installf -f para terminar la instalación de config.data
No se precisa una acción especial para la clase admin en el tiempo de la eliminación por lo que no se crea una secuencia de comandos de acción de clase de eliminación. Esto significa que todos los archivos y directorios de la clase admin se suprimen del sistema.
Cree una secuencia de comandos de acción de clase de eliminación para la clase cfgdata (r.cfgdata).
La secuencia de comandos de eliminación hace una copia del archivo de la base de datos antes de que se suprima. No se precisa una acción especial para esta clase en el tiempo de la instalación, por lo que no se necesita una secuencia de comandos de acción de clase de instalación.
Recuerde que la entrada de información a una secuencia de comandos de eliminación es una lista de nombres de ruta que suprimir. Los nombres de ruta siempre aparecen en orden alfabético inverso. Esta secuencia de comandos de eliminación copia archivos en el directorio llamado $PKGSAV. Cuando todos los nombres de ruta se han procesado, la secuencia de comandos vuelve y suprime todos los directorios y archivos asociados a la clase cfgdata.
La salida de esta secuencia de comandos de eliminación es copiar config.data en $PKGSAV y después suprimir el archivo config.data y el directorio de datos.