JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Guide du développeur de l'empaquetage d'applications     Oracle Solaris 10 1/13 Information Library (Français)
search filter icon
search icon

Informations document

Préface

1.  Conception d'un package

2.  Création d'un package

3.  Amélioration de la fonctionnalité d'un package (opérations)

4.  Vérification et transfert d'un package

5.  Création d'un package : Etudes de cas

Demande de participation de l'administrateur

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier prototype

Script request

Création d'un fichier lors de l'installation et enregistrement du fichier lors de la suppression

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier prototype

Fichier space

Script d'action de classe i.admin

Script de suppression r.cfgdata

Définition des compatibilités et des dépendances d'un package

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier copyright

Fichier compver

Fichier depend

Modification d'un fichier à l'aide de classes standard et de scripts d'action de classe

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier prototype

Script d'action de classe d'installation i.inittab

Script d'action de classe de suppression r.inittab

Fichier inittab

Modification d'un fichier à l'aide de la classe sed et d'un script postinstall

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier prototype

Script d'action de classe sed (/etc/inittab)

Script postinstall

Modification d'un fichier à l'aide de la classe build

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier prototype

Fichier de version

Modification de fichiers crontab au cours de l'installation

Techniques

Démarche

Fichiers de l'étude de cas

Commande pkginfo

Fichier prototype

Script d'action de classe d'installation i.cron

Script d'action de classe de suppression r.cron

Premier fichier crontab

Deuxième fichier crontab

Installation et suppression d'un pilote à l'aide de scripts de procédure

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier prototype

Script request

Script postinstall

Script preremove

Installation d'un pilote à l'aide de la classe sed et de scripts de procédure

Techniques

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

Fichier prototype

Script d'action de classe sed (/etc/devlink.tab)

Script d'installation postinstall

Script de suppression preremove

Fichier copyright

6.  Techniques avancées de création de packages

Glossaire

Index

Installation et suppression d'un pilote à l'aide de scripts de procédure

Ce package installe un pilote.

Techniques

Cette étude de cas illustre les techniques suivantes :

Pour plus d'informations sur ces scripts, reportez-vous à Rédaction de scripts de procédure.

Démarche

Fichiers de l'étude de cas

Fichier pkginfo

PKG=bufdev
NAME=Buffer Device
CATEGORY=system
BASEDIR=/
ARCH=INTEL
VERSION=Software Issue #19
CLASSES=none

Fichier prototype

Pour installer un pilote lors de l'installation, vous devez inclure les fichiers d'objets et de configuration du pilote dans le fichier prototype.

Dans cet exemple, le module exécutable du pilote est nommé buffer ; la commande add_drv opère sur ce fichier. Le noyau utilise le fichier de configuration, buffer.conf pour aider à configurer le pilote.

i pkginfo
i request
i postinstall
i preremove
f none $KERNDIR/buffer 444 root root
f none $KERNDIR/buffer.conf 444 root root

Remarquez les points suivants dans le fichier prototype de cet exemple :

Script request

trap 'exit 3' 15
# determine where driver object should be placed; location
# must be an absolute path name that is an existing directory
KERNDIR=`ckpath -aoy -d /kernel/drv -p \
“Where do you want the driver object installed”` || exit $?

# make parameters available to installation service, and
# so to any other packaging scripts
cat >$1 <<!

CLASSES='$CLASSES'
KERNDIR='$KERNDIR'
!
exit 0

Script postinstall

# KERNDIR parameter provided by `request' script
err_code=1                    # an error is considered fatal
# Load the module into the system
cd $KERNDIR
add_drv -m '* 0666 root sys' buffer || exit $err_code
# Create a /dev entry for the character node
installf $PKGINST /dev/buffer0=/devices/eisa/buffer*:0 s
installf -f $PKGINST

Script preremove

err_code=1                    # an error is considered fatal
# Unload the driver
rem_drv buffer || exit $err_code
# remove /dev file
removef $PKGINST /dev/buffer0 ; rm /dev/buffer0
removef -f $PKGINST