JavaScript is required to for searching.
Ignorer les liens de navigation
Quitter l'aperu
Guide d'administration système : administration de base
search filter icon
search icon

Informations document

Préface

1.  Oracle Solaris Management Tools (présentation)

2.  Utilisation de la console de gestion Solaris (tâches)

3.  Utilisation d'Oracle Java Web Console (tâches)

4.  Gestion des comptes utilisateur et des groupes (présentation)

5.  Gestion des comptes utilisateur et des groupes (tâches)

6.  Gestion de la prise en charge client-serveur (présentation)

7.  Gestion des clients sans disque (tâches)

8.  Présentation de l'arrêt et de l'initialisation d'un système

9.  Arrêt et initialisation d'un système (présentation)

10.  Arrêt d'un système (tâches)

11.  Modification du comportement d'initialisation d'Oracle Solaris (tâches)

12.  Initialisation d'un système Oracle Solaris (tâches)

13.  Gestion des archives d'initialisation d'Oracle Solaris (tâches)

14.  Dépannage de l'initialisation d'un système Oracle Solaris (tâches)

15.  x86 : Initialisation avec le GRUB (référence)

16.  x86 : Initialisation d'un système qui ne met pas en oeliguvre GRUB (tâches)

17.  Utilisation de la commande regadm d'enregistrement automatique Oracle Solaris (tâches)

18.  Gestion des services (présentation)

19.  Gestion des services (tâches)

20.  Gestion des logiciels (présentation)

21.  Gestion des logiciels à l'aide des d'outils d'administration système d'Oracle Solaris (tâches)

22.  Gestion des logiciels à l'aide des commandes de package Oracle Solaris (tâches)

Gestion des packages logiciels à l'aide des commandes de package (liste des tâches)

Utilisation des commandes de package pour la gestion des packages logiciels

Ajout de packages logiciels (pkgadd)

Ajout d'un package logiciel à un répertoire spool

Ajout de packages logiciels à un répertoire spool (pkgadd)

Affichage des informations sur tous les packages installés (pkginfo)

Vérification de l'intégrité des packages logiciels installés (pkgchk)

Vérification de l'intégrité des objets installés (pkgchk -p, pkgchk -P)

Suppression des packages logiciels

Suppression des packages logiciels (pkgrm)

23.  Gestion des patchs

A.  Services SMF

Index

Utilisation des commandes de package pour la gestion des packages logiciels

Les procédures suivantes expliquent comment gérer les packages logiciels en utilisant les commandes de package.

Ajout de packages logiciels (pkgadd)

  1. Connectez-vous en tant que superutilisateur ou endossez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations sur les rôles, reportez-vous à la section Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Supprimez tous les packages déjà installés portant le même nom que les packages que vous êtes en train d'ajouter.

    Cette étape permet de s'assurer que le système conserve une trace des logiciels qui ont été ajoutés et supprimés. Parfois, il peut s'avérer utile de conserver plusieurs versions de la même application sur le système. Pour connaître des stratégies de conservation de plusieurs copies d'un logiciel, reportez-vous à la section Directives de suppression de packages (pkgrm). Pour plus d'informations sur les tâches, reportez-vous à la section Suppression des packages logiciels (pkgrm) .

  3. Ajout d'un package logiciel au système.
    # pkgadd -a admin-file 
    -d device-name pkgid ...
    -a admin-file

    (Facultatif) Indique un fichier d'administration que la commande pkgadd doit vérifier au cours de l'installation. Pour plus d'informations sur l'utilisation d'un fichier d'administration, reportez-vous à la section À l'aide d'un fichier d'administration.

    -d nom-périphérique

    Spécifie le chemin absolu vers les packages. device-name peut être le chemin d'accès à un périphérique, un répertoire ou un répertoire spool. Si vous ne spécifiez pas le chemin de l'emplacement du package, la commande pkgadd vérifie le répertoire spool par défaut (/var/spool/pkg). Si le package ne s'y trouve pas, l'installation échoue.

    pkgid

    (Facultatif) Correspond au nom d'un ou de plusieurs packages à installer (séparés par des espaces). En cas d'omission, la commande pkgadd installe tous les packages disponibles à partir du périphérique, répertoire ou répertoire spool spécifié.

    Si la commande pkgadd rencontre un problème au cours de l'installation du package, elle affiche un message relatif au problème, suivi de cette invite :

    Do you want to continue with this installation?

    Répondez par yes, no ou quit (oui, non, quitter). Si plus d'un package a été spécifié, tapez no pour arrêter l'installation du package concerné. La commande pkgadd continue à installer les autres packages. Entrez quit pour arrêter l'installation.

  4. Vérifiez que le package a été installé correctement.
    # pkgchk -v pkgid

    Si aucune erreur ne se produit, une liste des fichiers installés est renvoyée. Dans le cas contraire, la commande pkgchk signale l'erreur.

Exemple 22-1 Ajout de packages logiciels à partir d'un CD monté

L'exemple suivant illustre l'installation du package SUNWpl5u à partir d'un CD Oracle Solaris 10 monté. L'exemple montre également comment vérifier que les fichiers du package ont été installés correctement.

# pkgadd -d /cdrom/cdrom0/Solaris_10/Product SUNWpl5u

    .
    .
    .
Installation of <SUNWpl5u> was successful.
# pkgchk -v SUNWpl5u
/usr
/usr/bin
/usr/bin/perl
/usr/perl5
/usr/perl5/5.8.4
.
.
.

Cet exemple montre le chemin à utiliser si vous n'exécutez pas au moins la version 10/08 de Solaris 10.

# pkgadd -d /cdrom/cdrom0/s0/Solaris_10/Product SUNWpl5u

    .
    .
    .
Installation of <SUNWpl5u> was successful.
# pkgchk -v SUNWpl5u
/usr
/usr/bin
/usr/bin/perl
/usr/perl5
/usr/perl5/5.8.4
.
.
.

Exemple 22-2 Installation de packages logiciels à partir d'un serveur de packages distant

Si les packages que vous souhaitez installer sont disponibles à partir d'un système distant, vous pouvez monter manuellement le répertoire qui contient les packages (au format package) et installer les packages sur le système local.

L'exemple suivant illustre l'installation de packages logiciels à partir d'un système distant. Dans cet exemple, supposons que le système distant nommé package-server contienne des packages logiciels dans le répertoire /latest-packages. La commande mount monte les packages localement sur /mnt. La commande pkgadd installe le package SUNWpl5u.

# mount -F nfs -o ro package-server:/latest-packages /mnt
# pkgadd -d /mnt SUNWpl5u
    .
    .
    .
Installation of <SUNWpl5u> was successful.

Si l'automonteur est en cours d'exécution sur votre site, vous n'avez pas besoin de monter le serveur de packages distant manuellement. Au lieu de cela, utilisez le chemin d'accès de l'automonteur, dans ce cas, /net/package-server/latest-packages, en tant qu'argument de l'option -d.

# pkgadd -d /net/package-server/latest-packages SUNWpl5u
    .
    .
    .
Installation of <SUNWpl5u> was successful.

Exemple 22-3 Installation de packages logiciels à partir d'un serveur de packages distant en spécifiant un fichier d'administration

Cet exemple est similaire à l'exemple précédent, à la différence près qu'il utilise l'option -a et spécifie un fichier d'administration nommé noask-pkgadd, qui est illustré dans la section Éviter l'interaction des utilisateurs lors de l'ajout de packages (pkgadd). Dans cet exemple, supposons que le fichier d'administration noask-pkgadd se trouve dans l'emplacement par défaut, à savoir /var/smap/install/admin.

# pkgadd -a noask-pkgadd -d /net/package-server/latest-packages SUNWpl5u

    .
    .
    .
Installation of <SUNWpl5u> was successful.

Exemple 22-4 Installation de packages logiciels à partir d'une URL HTTP

L'exemple suivant illustre l'installation d'un package à l'aide d'une URL HTTP en tant que nom de périphérique. L'URL doit pointer vers un package au format flux.

# pkgadd -d http://install/xf86-4.3.0-video.pkg

## Downloading...
..............25%..............50%..............75%..............100%
## Download Complete


The following packages are available:
  1  SUNWxf86r     XFree86 Driver Porting Kit (Root)
                   (i386) 4.3.0,REV=0.2003.02.28
  2  SUNWxf86u     XFree86 Driver Porting Kit (User)
                   (i386) 4.3.0,REV=0.2003.02.28

.
.
.

Ajout d'un package logiciel à un répertoire spool

Pour des raisons de commodité, vous pouvez copier fréquemment les packages installés dans un répertoire spool. Si vous copiez les packages dans le répertoire spool par défaut, /var/spool/pkg, vous n'avez pas besoin de spécifier l'emplacement d'origine du package (argument -d device-name) lorsque vous utilisez la commande pkgadd. Par défaut, la commande pkgadd vérifie le répertoire /var/spool/pkg pour tous les packages qui sont spécifiés dans la ligne de commande. Notez que la copie des packages dans un répertoire spool ne revient pas à installer les packages sur un système.

Ajout de packages logiciels à un répertoire spool (pkgadd)

  1. Connectez-vous en tant que superutilisateur ou endossez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations sur les rôles, reportez-vous à la section Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Supprimez tous les packages déjà mis en spool portant les mêmes noms que les packages que vous ajoutez.

    Pour obtenir des informations sur la suppression de packages mis en spool, reportez-vous à l'Exemple 22-16.

  3. Ajoutez un package logiciel à un répertoire spool.
    # pkgadd -d device-name 
    -s spooldir pkgid ...
    -d nom-périphérique

    Spécifie le chemin absolu vers les packages. device-name peut être le chemin d'accès à un périphérique, un répertoire ou un répertoire spool.

    -s spooldir

    Spécifie le nom du répertoire spool dans lequel le package sera mis en spool. Vous devez spécifier un répertoire (spooldir).

    pkgid

    (Facultatif) Correspond au nom d'un ou de plusieurs packages à ajouter au répertoire spool (séparés par des espaces). En cas d'omission, la commande pkgadd copie tous les packages disponibles.

  4. Vérifiez que le package a été copié avec succès dans le répertoire spool.
    $ pkginfo -d spooldir
    | grep pkgid

    Si pkgid a été copié correctement, la commande pkginfo renvoie une ligne d'informations concernant le pkgid. Sinon, la commande pkginfo renvoie l'invite système.

Exemple 22-5 Configuration d'un répertoire spool à partir d'un CD monté

L'exemple suivant illustre le transfert du package SUNWman d'un CD Oracle Solaris 10 SPARC monté vers le répertoire spool par défaut (/var/spool/pkg).

# pkgadd -d /cdrom/cdrom0/Solaris_10/Product -s /var/spool/pkg SUNWman

Transferring <SUNWman> package instance

Exemple 22-6 Configuration d'un répertoire spool à partir d'un serveur de packages logiciels distant

Si les packages que vous souhaitez copier sont disponibles à partir d'un système distant, vous pouvez monter manuellement le répertoire qui contient les packages (au format package) et copier les packages dans le répertoire spool local.

L'exemple suivant illustre les commandes de ce scénario. Dans cet exemple, supposons que le système distant nommé package-server contienne des packages logiciels dans le répertoire /latest-packages. La commande mount permet de monter le répertoire de packages localement sur /mnt. La commande pkgadd copie le package SUNWpl5p de /mnt vers le répertoire spool par défaut (/var/spool/pkg).

# mount -F nfs -o ro package-server:/latest-packages /mnt
# pkgadd -d /mnt -s /var/spool/pkg SUNWpl5p
Transferring <SUNWpl5p> package instance

Si l'automonteur est en cours d'exécution sur votre site, vous ne devez pas monter le serveur de packages distant manuellement. Au lieu de cela, utilisez le chemin d'accès de l'automonteur, dans ce cas, /net/package-server/latest-packages, en tant qu'argument de l'option -d.

# pkgadd -d /net/package-server/latest-packages -s /var/spool/pkg SUNWpl5p

Transferring <SUNWpl5p> package instance

Exemple 22-7 Installation de packages logiciels à partir du répertoire spool par défaut

L'exemple suivant illustre l'installation du package SUNWpl5p à partir du répertoire spool par défaut. Si aucune option n'est utilisée, la commande pkgadd recherche les packages nommés dans le répertoire /var/spool/pkg.

# pkgadd SUNWpl5p
    .
    .
    .
Installation of <SUNWpl5p> was successful.

Affichage des informations sur tous les packages installés (pkginfo)

Exemple 22-8 Liste des packages installés

Cet exemple illustre l'affichage de tous les packages installés sur un système local, qu'il s'agisse d'un système autonome ou d'un serveur. La sortie indique la catégorie principale, le nom du package et la description du package.

$ pkginfo
system      SUNWaccr       System Accounting, (Root)
system      SUNWaccu       System Accounting, (Usr)
system      SUNWadmap      System administration applications
system      SUNWadmc       System administration core libraries
.
.
.

Exemple 22-9 Affichage des informations détaillées sur les packages logiciels

Cet exemple illustre l'affichage de tous les packages installés sur un système en spécifiant le format long, qui inclut toutes les informations disponibles sur les packages indiqués.

$ pkginfo -l SUNWcar
  PKGINST:  SUNWcar
      NAME:  Core Architecture, (Root)
  CATEGORY:  system
      ARCH:  i386.i86pc
   VERSION:  11.10.0,REV=2005.01.21.16.34
   BASEDIR:  /
    VENDOR:  Oracle Corporation
      DESC:  core software for a specific hardware platform group
    PSTAMP:  on10ptchfeatx20110211045100
  INSTDATE:  Mar 03 2011 10:57
   HOTLINE:  Please contact your local service provider
    STATUS:  completely installed
     FILES:        2 installed pathnames
                   2 shared pathnames
                   2 directories

Vérification de l'intégrité des packages logiciels installés (pkgchk)

  1. Connectez-vous en tant que superutilisateur ou endossez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations sur les rôles, reportez-vous à la section Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Vérifiez l'état d'un package installé.
    • Pour vérifier les attributs et le contenu des fichiers, tapez la commande suivante :

      # pkgchk -a| -c -v pkid ...
    • Pour spécifier le chemin d'accès absolu du répertoire spool, tapez la commande suivante :

      # pkgchk -d spooldir pkgid ...
    -a

    Indique d'auditer uniquement les attributs des fichiers (les autorisations), plutôt que les attributs et le contenu des fichiers. Il s'agit de la valeur par défaut.

    -c

    Indique d'auditer uniquement le contenu des fichiers, plutôt que le contenu et les attributs des fichiers. Il s'agit de la valeur par défaut.

    -v

    Spécifie le mode détaillé, qui affiche le nom des fichiers au fur et à mesure qu'ils sont traités.

    -d spooldir

    Spécifie le chemin d'accès absolu du répertoire spool.

    pkgid

    (Facultatif) Correspond au nom d'un ou de plusieurs packages (séparés par des espaces). Si vous ne spécifiez pas un pkgid, tous les packages logiciels installés sur le système sont vérifiés.

Exemple 22-10 Vérification du contenu des packages logiciels installés

L'exemple suivant illustre la vérification du contenu d'un package.

# pkgchk -c SUNWbash

Si aucune erreur ne se produit, l'invite système est renvoyée. Dans le cas contraire, la commande pkgck signale l'erreur.

Exemple 22-11 Vérification des attributs des fichier des packages logiciels installés

L'exemple suivant illustre la vérification des attributs des fichiers d'un package.

# pkgchk -a SUNWbash

Si aucune erreur ne se produit, l'invite système est renvoyée. Dans le cas contraire, la commande pkgck signale l'erreur.

Exemple 22-12 Vérification des packages logiciels installés dans un répertoire spool

L'exemple suivant illustre la vérification d'un package logiciel qui a été copié dans un répertoire spool (/export/install/packages).

# pkgchk -d /export/install/packages
## checking spooled package <SUNWadmap>
## checking spooled package <SUNWadmfw>
## checking spooled package <SUNWadmc>
## checking spooled package <SUNWsadml>

Les vérifications effectuées sur un package mis en spool sont limitées, car toutes les informations ne peuvent pas être auditées tant que le package n'a pas été installé.

Vérification de l'intégrité des objets installés (pkgchk -p, pkgchk -P)

Cette procédure explique l'utilisation de la commande pkgchk pour vérifier l'intégrité des objets installés. La nouvelle option -P vous permet de spécifier un chemin partiel. Cette option a été ajoutée pour vous aider à mapper les fichiers avec les packages. Utilisez cette option avec l'option -l pour répertorier les informations sur les fichiers qui contiennent le chemin partiel. Utilisez l'option -p pour vérifier l'intégrité des objets installés en spécifiant le chemin d'accès complet. Pour plus d'informations, reportez-vous à la page de manuel pkgchk(1M).

  1. Connectez-vous en tant que superutilisateur ou endossez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations sur les rôles, reportez-vous à la section Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Vérification de l'intégrité d'un objet installé.
    • Pour vérifier l'intégrité d'un objet installé pour un ou plusieurs chemins d'accès complets, saisissez la commande suivante :

      # pkgchk -lp path-name
    • Pour vérifier l'intégrité d'un objet installé pour un ou plusieurs chemins d'accès partiels, tapez la commande suivante :

      # pkgchk -lP partial-path-name
    -p path

    Vérifie l'exactitude du ou des chemin d'accès répertoriés uniquement. La variable path peut être un chemin ou plusieurs chemins séparés par des virgules. Indique d'auditer uniquement les attributs des fichiers (les autorisations), plutôt que les attributs et le contenu des fichiers. Il s'agit de la valeur par défaut.

    -P partial-path

    Vérifie l'exactitude du ou des chemins d'accès partiels répertoriés uniquement. La variable partial-path peut être un ou plusieurs chemins d'accès partiels séparés par des virgules. Correspond à tous les chemins d'accès qui contiennent la chaîne contenue dans le chemin partiel. Indique d'auditer uniquement le contenu des fichiers, plutôt que le contenu et les attributs des fichiers. Il s'agit de la valeur par défaut.

    -l

    Répertorie les informations sur les fichiers sélectionnés qui constituent un package. Cette option n'est pas compatible avec les options -a, -c, -f, -g et -v. Spécifie le mode détaillé, qui affiche le nom des fichiers au fur et à mesure qu'ils sont traités.

Exemple 22-13 Vérification de l'intégrité d'un objet installé en spécifiant un chemin d'accès complet

Cet exemple illustre l'utilisation de la commande pkgchk -lp pour vérifier le contenu/les attributs d'un objet sur un système de fichiers en spécifiant le chemin d'accès complet. L'option -l répertorie les informations sur les fichiers sélectionnés qui constituent un package.

# pkgchk -lp /usr/sbin/pkgadd
Pathname: /usr/sbin/pkgadd
Type: regular file
Expected mode: 0555
Expected owner: root
Expected group: sys
Expected file size (bytes): 867152
Expected sum(1) of contents: 45580
Expected last modification: Jul 02 02:20:34 2004
Referenced by the following packages:
        SUNWpkgcmdsu   
Current status: installed

Exemple 22-14 Vérification de l'intégrité d'un objet installé en spécifiant un chemin partiel

Cet exemple montre comment utiliser la commande pkgchk -lP pour vérifier le contenu/les attributs d'un objet sur un système de fichiers en spécifiant un chemin partiel, tel qu'un nom de fichier ou de répertoire. L'option -l répertorie les informations sur les fichiers sélectionnés qui constituent un package.

# pkgchk -lP /sbin/pkgadd
Pathname: /usr/sbin/pkgadd
Type: regular file
Expected mode: 0555
Expected owner: root
Expected group: sys
Expected file size (bytes): 867152
Expected sum(1) of contents: 45580
Expected last modification: Jul 02 02:20:34 2004
Referenced by the following packages:
        SUNWpkgcmdsu   
Current status: installed

Pathname: /usr/sbin/pkgask
Type: linked file
Source of link: ../../usr/sbin/pkgadd
Referenced by the following packages:
        SUNWpkgcmdsu   
Current status: installed

Suppression des packages logiciels

Pour supprimer ou désinstaller un package logiciel, utilisez l'outil associé que vous avez utilisé pour ajouter ou installer un package logiciel. Par exemple, si vous avez utilisé l'interface graphique d'installation d'Oracle Solaris pour installer le logiciel, utilisez cette même interface pour le désinstaller.


Attention

Attention - N'utilisez pas la commande rm pour supprimer des packages logiciels. En effet, cela entraîne des inexactitudes dans la base de données qui assure le suivi de tous les packages installés sur le système.


Suppression des packages logiciels (pkgrm)

  1. Connectez-vous en tant que superutilisateur ou endossez un rôle équivalent.

    Les rôles contiennent des autorisations et des commandes privilégiées. Pour plus d'informations sur les rôles, reportez-vous à la section Configuring RBAC (Task Map) du System Administration Guide: Security Services.

  2. Supprimez un package installé.
    # pkgrm pkgid ...

    pkgid identifie le nom d'un ou de plusieurs packages à supprimer, séparés par des espaces. En cas d'omission, la commande pkgrm supprime tous les packages disponibles.

Exemple 22-15 Suppression des packages logiciels

Cet exemple illustre la suppression d'un package.

# pkgrm SUNWctu

The following package is currently installed:
   SUNWctu         Netra ct usr/platform links (64-bit)
                   (sparc.sun4u) 11.9.0,REV=2001.07.24.15.53

Do you want to remove this package? y

## Removing installed package instance <SUNWctu>
## Verifying package dependencies.
## Processing package information.
## Removing pathnames in class <none>
.
.
.

Exemple 22-16 Suppression d'un package logiciel mis en spool

Cet exemple illustre la suppression d'un package mis en spool.

# pkgrm -s /export/pkg SUNWaudh
The following package is currently spooled:
   SUNWaudh        Audio Header Files
                   (sparc) 11.10.0,REV=2003.08.08.00.03
Do you want to remove this package? y
Removing spooled package instance <SUNWaudh>