

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Gérez les logiciels sur votre AL2 instance
<a name="managing-software"></a>

La distribution de base d’Amazon Linux contient les packages logiciels et les utilitaires nécessaires aux opérations de base du serveur.

Ces informations s'appliquent à AL2. Pour plus d'informations AL2023, consultez la section [Gérer les packages et les mises à jour du système d'exploitation AL2023 dans](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html) le *guide de l'utilisateur Amazon Linux 2023*.

Il est important de garder les logiciels à jour. Beaucoup de packages dans une distribution Linux sont souvent mis à jour pour résoudre les bogues, ajouter des fonctions et protéger contre le code malveillant. Pour de plus amples informations, veuillez consulter [Mettre à jour le logiciel de l'instance sur votre AL2 instance](install-updates.md).

Par défaut, AL2 les instances sont lancées avec les référentiels suivants activés :
+ `amzn2-core`
+ `amzn2extra-docker`

Bien que de nombreux packages soient disponibles dans ces référentiels et mis à jour par AWS, il se peut que vous souhaitiez installer un package contenu dans un autre référentiel. Pour de plus amples informations, veuillez consulter [Ajouter des référentiels sur une instance AL2](add-repositories.md). Pour obtenir de l’aide pour trouver et installer des packages dans les référentiels activés, consultez [Rechercher et installer des packages logiciels sur une AL2 instance](find-install-software.md).

Les logiciels ne sont pas tous disponibles dans les packages logiciels stockés dans les référentiels. Certains logiciels doivent être compilés sur une instance à partir de son code source. Pour de plus amples informations, veuillez consulter [Préparation à la compilation du logiciel sur une AL2 instance](compile-software.md).

AL2 les instances gèrent leurs logiciels à l'aide du gestionnaire de packages yum. Le gestionnaire de packages yum peut installer, supprimer et mettre à jour les logiciels ainsi que gérer l’ensemble des dépendances pour chaque package.

**Topics**
+ [Mettre à jour le logiciel de l'instance sur votre AL2 instance](install-updates.md)
+ [Ajouter des référentiels sur une instance AL2](add-repositories.md)
+ [Rechercher et installer des packages logiciels sur une AL2 instance](find-install-software.md)
+ [Préparation à la compilation du logiciel sur une AL2 instance](compile-software.md)

# Mettre à jour le logiciel de l'instance sur votre AL2 instance
<a name="install-updates"></a>

Il est important de garder les logiciels à jour. Les packages dans une distribution Linux sont souvent mis à jour pour résoudre les bogues, ajouter des fonctions et protéger contre le code malveillant. Lorsque vous lancez et vous vous connectez pour la première fois à une instance Amazon Linux, il se peut que vous voyez un message vous demandant de mettre à jour des packages logiciels à des fins de sécurité. Cette section explique comment mettre à jour l’ensemble d’un système ou juste un seul package.

Ces informations s'appliquent à AL2. Pour plus d'informations AL2023, consultez la section [Gérer les packages et les mises à jour du système d'exploitation AL2023 dans](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html) le *guide de l'utilisateur Amazon Linux 2023*.

Pour plus d'informations sur les modifications et les mises à jour apportées AL2, consultez les [notes AL2 de publication](https://docs.aws.amazon.com/AL2/latest/relnotes/relnotes-al2.html).

Pour plus d'informations sur les modifications et les mises à jour apportées AL2023, consultez les [notes AL2023 de publication](https://docs.aws.amazon.com/linux/al2023/release-notes/relnotes.html).

**Important**  
Si vous avez lancé une instance EC2 qui utilise une AMI Amazon Linux 2 dans un sous-réseau IPv6 réservé, vous devez vous connecter à l'instance et exécuter. `sudo amazon-linux-https disable` Cela permet à votre AL2 instance de se connecter au yum référentiel dans S3 IPv6 via le service de correctif HTTP.

**Pour mettre à jour tous les packages d'une AL2 instance**

1. (Facultatif) Lancez une session **screen** dans votre fenêtre shell. Il se peut que vous connaissiez parfois une interruption du réseau qui peut déconnecter la connexion SSH à votre instance. Si ce problème arrive pendant une longue mise à jour logicielle, cela peut laisser l’instance dans un état récupérable bien que désorienté. Une session **screen** vous permet de continuer à exécuter la mise à jour même si votre connexion est interrompue et vous pouvez vous reconnecter à la session plus tard sans problème.

   1. Exécutez la commande **screen** pour démarrer la session.

      ```
      [ec2-user ~]$ screen
      ```

   1. Si votre session est déconnectée, reconnectez-vous à votre instance et énumérez les écrans disponibles.

      ```
      [ec2-user ~]$ screen -ls
      There is a screen on:
      	17793.pts-0.ip-12-34-56-78	(Detached)
      1 Socket in /var/run/screen/S-ec2-user.
      ```

   1. Reconnectez-vous à l’écran à l’aide de la commande **screen -r** et l’ID du processus de la commande précédente.

      ```
      [ec2-user ~]$ screen -r 17793
      ```

   1. Lorsque vous avez terminé d’utiliser **screen**, servez-vous de la commande **exit** pour fermer la session.

      ```
      [ec2-user ~]$ exit
      [screen is terminating]
      ```

1. Exécutez la commande **yum update**. Le cas échéant, vous pouvez ajouter l’indicateur `--security` pour appliquer uniquement les mises à jour de sécurité.

   ```
   [ec2-user ~]$ sudo yum update
   ```

1. Vérifiez les packages énumérés, saisissez **y**, puis appuyez sur Entrée pour accepter les mises à jour. La mise à jour de tous les packages d’un système peut prendre plusieurs minutes. Les résultats **yum** montrent le statut de la mise à jour pendant son exécution.

1. (Facultatif) [Redémarrez votre instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-reboot.html) pour vous assurer que vous utilisez les derniers packages et bibliothèques issus de votre mise à jour ; les mises à jour du noyau ne sont pas chargées tant qu'un redémarrage n'est pas effectué. Les mises à jour de n’importe quelle bibliothèque `glibc` devraient aussi être suivies d’un redémarrage. Pour les mises à jour des packages qui contrôlent les services, il peut s’avérer suffisant de redémarrer les services pour récupérer les mises à jour, mais un redémarrage du système assure que toutes les mises à jour précédentes des packages et des bibliothèques sont terminées.

**Pour mettre à jour un seul package sur une AL2 instance**

Utilisez cette procédure pour mettre à jour un seul package (et ses dépendances) et non l’ensemble du système.

1. Exécutez la commande **yum update** avec le nom du package que vous souhaiteriez mettre à jour.

   ```
   [ec2-user ~]$ sudo yum update openssl
   ```

1. Vérifiez les détails relatifs aux packages énumérés, saisissez **y**, puis appuyez sur Entrée pour accepter les mises à jour. Il peut arriver qu’il y ait plus d’un package énuméré s’il existe des dépendances de packages qui doivent être résolues. Les résultats **yum** montrent le statut de la mise à jour pendant son exécution.

1. (Facultatif) [Redémarrez votre instance](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-reboot.html) pour vous assurer que vous utilisez les derniers packages et bibliothèques issus de votre mise à jour ; les mises à jour du noyau ne sont pas chargées tant qu'un redémarrage n'est pas effectué. Les mises à jour de n’importe quelle bibliothèque `glibc` devraient aussi être suivies d’un redémarrage. Pour les mises à jour des packages qui contrôlent les services, il peut s’avérer suffisant de redémarrer les services pour récupérer les mises à jour, mais un redémarrage du système assure que toutes les mises à jour précédentes des packages et des bibliothèques sont terminées.

# Ajouter des référentiels sur une instance AL2
<a name="add-repositories"></a>

Ces informations s'appliquent à AL2. Pour plus d'informations AL2023, consultez la section [Mises à niveau déterministes via des référentiels versionnés dans AL2023 le guide](https://docs.aws.amazon.com/linux/al2023/ug/deterministic-upgrades.html) de l'utilisateur *Amazon Linux 2023.*

Par défaut, AL2 les instances sont lancées avec les référentiels suivants activés :
+ `amzn2-core`
+ `amzn2extra-docker`

S’il existe de nombreux packages disponibles dans ces référentiels qui sont mis à jour par Amazon Web Services, il est toutefois possible que vous trouviez un package dans un autre référentiel que vous souhaitez installer.

Pour installer un package d’un référentiel différent avec la commande **yum**, vous devez ajouter les détails relatifs au référentiel au fichier `/etc/yum.conf` ou à son propre fichier `repository.repo` dans le répertoire `/etc/yum.repos.d`. Vous pouvez le faire manuellement, mais la plupart des référentiels yum ont leur propre fichier `repository.repo` sur l’URL de leur référentiel.

**Pour déterminer quels référentiels yum sont déjà installés**  
Utilisez la commande suivante pour répertorier les référentiels yum installés :

```
[ec2-user ~]$ yum repolist all
```

La sortie obtenue répertorie les référentiels installés et indique l’état de chacun. Les référentiels activés affichent le nombre de packages qu’ils contiennent.

**Pour ajouter un référentiel yum à /etc/yum.repos.d**

1. Recherchez l’emplacement du fichier `.repo`. Il variera selon le référentiel que vous ajoutez. Dans cet exemple, le fichier `.repo` se trouve à l’adresse `https://www.example.com/repository.repo`.

1. Ajoutez le référentiel à l’aide de la commande **yum-config-manager**.

   ```
   [ec2-user ~]$ sudo yum-config-manager --add-repo https://www.example.com/repository.repo
   Loaded plugins: priorities, update-motd, upgrade-helper
   adding repo from: https://www.example.com/repository.repo
   grabbing file https://www.example.com/repository.repo to /etc/yum.repos.d/repository.repo
   repository.repo                                      | 4.0 kB     00:00
   repo saved to /etc/yum.repos.d/repository.repo
   ```

Après avoir installé un référentiel, vous devez l’activer, comme décrit dans la procédure suivante.

**Pour activer un référentiel yum dans /etc/yum.repos.d**  
Utilisez la commande **yum-config-manager** avec l’indicateur `--enable repository`. La commande suivante active le référentiel EPEL (Extra Packages for Enterprise Linux) à partir du projet Fedora. Par défaut, ce référentiel est présent dans `/etc/yum.repos.d` sur les instances Amazon Linux AMI, mais il n’est pas activé.

```
[ec2-user ~]$ sudo yum-config-manager --enable epel
```

Pour plus d'informations et pour télécharger la dernière version de ce package, consultez [https://fedoraproject. org/wiki/EPEL](https://fedoraproject.org/wiki/EPEL).

# Rechercher et installer des packages logiciels sur une AL2 instance
<a name="find-install-software"></a>

Vous pouvez utiliser un outil de gestion des packages pour trouver et installer des packages logiciels. Dans Amazon Linux 2, l'outil de gestion des packages logiciels par défaut estYUM. Dans AL2023, l'outil de gestion des progiciels par défaut estDNF. Pour plus d'informations, consultez l'[outil de gestion des packages](https://docs.aws.amazon.com/linux/al2023/ug/package-management.html) dans le *guide de l'utilisateur Amazon Linux 2023*.

## Rechercher des packages logiciels sur une AL2 instance
<a name="find-software"></a>

Vous pouvez utiliser la commande **yum search** pour rechercher les descriptions des packages qui sont disponibles dans vos référentiels configurés. Elle est particulièrement utile si vous ne connaissez pas le nom exact du package que vous voulez installer. Il suffit de joindre la recherche de mots clés à la commande ; pour les recherches de plusieurs mots, entourez la requête de recherche avec des guillemets.

```
[ec2-user ~]$ yum search "find"
```

Voici un exemple de sortie.

```
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
============================== N/S matched: find ===============================
findutils.x86_64 : The GNU versions of find utilities (find and xargs)
gedit-plugin-findinfiles.x86_64 : gedit findinfiles plugin
ocaml-findlib-devel.x86_64 : Development files for ocaml-findlib
perl-File-Find-Rule.noarch : Perl module implementing an alternative interface to File::Find
robotfindskitten.x86_64 : A game/zen simulation. You are robot. Your job is to find kitten.
mlocate.x86_64 : An utility for finding files by name
ocaml-findlib.x86_64 : Objective CAML package manager and build helper
perl-Devel-Cycle.noarch : Find memory cycles in objects
perl-Devel-EnforceEncapsulation.noarch : Find access violations to blessed objects
perl-File-Find-Rule-Perl.noarch : Common rules for searching for Perl things
perl-File-HomeDir.noarch : Find your home and other directories on any platform
perl-IPC-Cmd.noarch : Finding and running system commands made easy
perl-Perl-MinimumVersion.noarch : Find a minimum required version of perl for Perl code
texlive-xesearch.noarch : A string finder for XeTeX
valgrind.x86_64 : Tool for finding memory management bugs in programs
valgrind.i686 : Tool for finding memory management bugs in programs
```

Les demandes de recherche de plusieurs mots entre guillemets donnent uniquement des résultats qui correspondent à la requête exacte. Si vous ne voyez pas le package attendu, simplifiez votre recherche en utilisant un mot clé, puis analyser les résultats. Vous pouvez aussi des synonymes des mots clés pour élargir votre recherche.

Pour plus d'informations sur les packages pour AL2, consultez les rubriques suivantes :
+ [AL2 Bibliothèque d'extras](al2-extras.md)
+ [Référentiel de packages](ec2.md#package-repository)

## Installation de packages logiciels sur une AL2 instance
<a name="install-software"></a>

Dans AL2, l'outil de gestion de packages yum recherche différents packages logiciels dans tous vos référentiels activés et gère toutes les dépendances du processus d'installation du logiciel. Pour plus d'informations sur l'installation de packages logiciels dans AL2023, consultez [la section Gestion des packages et des mises à jour du système d'exploitation](https://docs.aws.amazon.com/linux/al2023/ug/managing-repos-os-updates.html) dans le *guide de l'utilisateur Amazon Linux 2023*.

**Pour installer un package à partir d’un référentiel**  
Utilisez la **yum install *package*** commande en *package* remplaçant par le nom du logiciel à installer. Par exemple, pour installer le navigateur web à base de texte **links**, saisissez la commande suivante.

```
[ec2-user ~]$ sudo yum install links
```

**Pour installer les fichiers du package RPM que vous avez téléchargé**  
Vous pouvez également utiliser **yum install** pour installer les fichiers du package RPM que vous avez téléchargé sur Internet. Pour cela, il vous suffit de joindre le nom du chemin d’un fichier RPM à la commande d’installation au lieu du nom d’un package de référentiel.

```
[ec2-user ~]$ sudo yum install my-package.rpm
```

**Pour lister les packages installés**  
Pour afficher la liste des packages installés sur votre instance, utilisez la commande suivante.

```
[ec2-user ~]$ yum list installed
```

# Préparation à la compilation du logiciel sur une AL2 instance
<a name="compile-software"></a>

Les logiciels open source sont disponibles sur Internet qui n’ont pas été précompilés et mis à disposition pour le téléchargement à partir d’un référentiel de packages. Il est possible que vous découvriez un package logiciel que vous devrez compiler vous-même, à partir de son code source. Pour que votre système puisse compiler des logiciels dans AL2 et Amazon Linux, vous devez installer plusieurs outils de développement, tels que **make****gcc**, et**autoconf**.

Comme la compilation de logiciels n’est pas une tâche que chaque instance Amazon EC2 nécessite, ces outils ne sont pas installés par défaut, mais ils sont disponibles dans un groupe de packages appelé « Development tools » (Outils de développement) qui s’ajoute facilement à une instance avec la commande **yum groupinstall**.

```
[ec2-user ~]$ sudo yum groupinstall "Development Tools"
```

Les packages de code source des logiciels sont souvent disponibles en téléchargement (à partir de sites Web tels que [https://github.com/](https://github.com/)et [http://sourceforge.net/](https://sourceforge.net/)) sous forme de fichier d'archive compressé, appelé tarball. Ces tarballs portent généralement l’extension de fichier `.tar.gz`. Vous pouvez décompresser ces archives avec la commande **tar**.

```
[ec2-user ~]$ tar -xzf software.tar.gz
```

Après avoir décompressé et désarchivé le package de code source, vous devriez rechercher un fichier `README` ou `INSTALL` dans le répertoire du code source qui peut vous fournir plus d’instructions pour la compilation et l’installation du code source. 

**Pour récupérer le code source des packages Amazon Linux**  
Amazon Web Services fournit le code source pour les packages gérés. Vous pouvez télécharger le code source pour n’importe quel package installé avec la commande **yumdownloader --source**.

Exécutez la **yumdownloader --source *package*** commande pour télécharger le code source de*package*. Par exemple, pour télécharger le code source du package `htop`, saisissiez la commande suivante.

```
[ec2-user ~]$ yumdownloader --source htop

Loaded plugins: priorities, update-motd, upgrade-helper
Enabling amzn-updates-source repository
Enabling amzn-main-source repository
amzn-main-source                                                                                              | 1.9 kB  00:00:00     
amzn-updates-source                                                                                           | 1.9 kB  00:00:00     
(1/2): amzn-updates-source/latest/primary_db                                                                  |  52 kB  00:00:00     
(2/2): amzn-main-source/latest/primary_db                                                                     | 734 kB  00:00:00     
htop-1.0.1-2.3.amzn1.src.rpm
```

L’emplacement du fichier RPM source est dans le répertoire à partir duquel vous avez exécuté la commande.