Tous les produits
Search
Centre de documentation

:Resolve the "error while loading shared libraries: libcrypto.so.1.1" on a Linux ECS instance

Dernière mise à jour :Aug 18, 2026

Description du problème

Le service SSH ne parvient pas à démarrer. Un message d'erreur indique que la bibliothèque partagée libcrypto.so.1.1 est manquante.

error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory.

Cause

Le service SSH et ses modules d'authentification chargent dynamiquement la bibliothèque partagée libcrypto.so.1.1 lors de l'exécution. Cette erreur survient si le fichier de bibliothèque ou sa cible de lien symbolique est manquant, déplacé ou corrompu. Sans cette dépendance, le service SSH ne peut pas démarrer.

Solutions

Important

Si un snapshot précédent du disque système est disponible, commencez par créer un nouveau snapshot pour sauvegarder vos données actuelles. Ensuite, restaurez le disque système à partir du snapshot précédent et vérifiez que le service SSH démarre correctement.

En l'absence de snapshot précédent, vous avez besoin d'une instance Elastic Compute Service (ECS) saine, exécutant le même système d'exploitation et située dans la même zone que l'instance problématique. Vous pouvez restaurer le fichier de bibliothèque manquant en attachant le disque système de l'instance problématique à l'instance saine.

Étape 1 : Détacher le disque système

Assurez-vous que l'instance problématique est à l'état Stopped, puis effectuez les étapes suivantes :

  1. Pour éviter toute perte de données, créez un snapshot du disque système.

  2. Accédez à Console ECS - Instances. Dans le coin supérieur gauche, sélectionnez la région et le groupe de ressources de l'instance cible.

  3. Cliquez sur l'ID de l'instance problématique pour ouvrir la page Instance Details, puis cliquez sur l'onglet Block Storage.

  4. Dans la colonne Actions du System Disk, choisissez 更多 > Detach.

  5. Dans la boîte de dialogue Detach Disk, confirmez les détails et cliquez sur OK. Le détachement du disque est réussi lorsque l'état de l'instance passe à No System Disk.

Étape 2 : Attacher le disque à une instance saine en tant que disque de données

Assurez-vous que l'instance saine est à l'état Running, puis effectuez les étapes suivantes :

  1. Attachez le disque système de l'instance problématique à l'instance saine.

    1. Cliquez sur l'ID de l'instance saine pour ouvrir sa page de détails.

    2. Cliquez sur l'onglet Block Storage, puis cliquez sur Attach Disk.

    3. Sur la page Attach to Instance, sélectionnez le disque système détaché dans la section Disk, puis cliquez sur Next.

    4. Sur la page Partition Disk and Create and Mount File Systems, sélectionnez Configure Later.

  2. Cliquez sur Connect, puis choisissez Workbench. Connectez-vous à l'instance comme indiqué pour ouvrir le terminal.

  3. Montez le système de fichiers.

    1. Identifiez le nom de la partition du disque problématique.

      sudo lsblk -f
      vda                                                      
      ├─vda1                                                   
      ├─vda2 vfat         7938-FA03                            /boot/efi
      └─vda3 ext4   root  33b46ac5-7482-4aa5-8de0-60ab4c3a4c78 /
      vdb                                                      
      ├─vdb1                                                   
      ├─vdb2 vfat         7938-FA03                            
      └─vdb3 ext4   root  33b46ac5-7482-4aa5-8de0-60ab4c3a4c78                                  

      Dans cet exemple, vdb est le disque problématique et vdb3 est la partition racine à monter. Les partitions sont les suivantes :

      • vdb1/vdb2 : Contiennent les fichiers de démarrage du système. Vous pouvez les ignorer.

      • vdb3 : Contient les fichiers du système d'exploitation et les données. Cette partition doit être montée.

    2. Créez un répertoire et montez le système de fichiers.

      sudo mkdir <mount_directory> && sudo mount /dev/<partition_name> <mount_directory>

      Paramètre

      Description

      <partition_name>

      Le nom de la partition racine du disque problématique que vous avez identifié à l'étape précédente.

      <mount_directory>

      Un chemin de répertoire personnalisé et vide commençant par /.

      Important

      Le montage du système de fichiers sur un répertoire non vide rend les fichiers originaux de ce répertoire inaccessibles.

      Par exemple, pour monter la partition cible vdb3 dans un nouveau répertoire nommé /test , exécutez sudo mkdir /test && sudo mount /dev/vdb3 /test .
    3. Vérifiez que le système de fichiers est monté.

      Exécutez la commande sudo lsblk . Si un répertoire de montage (MOUNTPOINT) apparaît pour la partition cible, le système de fichiers est monté.

Étape 3 : Réparer le fichier libcrypto.so.1.1

Cette rubrique utilise Alibaba Cloud Linux 3.2104 comme exemple. Sur l'instance saine, réparez le fichier de bibliothèque partagée dans le chemin monté.

  1. Recherchez le chemin vers libcrypto.so.1.1 .

    Le nom du fichier de bibliothèque peut varier selon le système d'exploitation. Recherchez le nom de fichier qui apparaît dans votre message d'erreur spécifique.
    sudo find / -name libcrypto.so.1.1

    Exemple de sortie :

    /usr/lib64/libcrypto.so.1.1

    La sortie d'exemple confirme que le fichier de bibliothèque se trouve dans le répertoire /usr/lib64/ .

  2. Vérifiez la cible du lien symbolique.

    ll /usr/lib64/libcrypto.so.1.1

    Exemple de sortie :

    lrwxrwxrwx. 1 root root 19 Nov 20  2024 /usr/lib64/libcrypto.so.1.1 -> libcrypto.so.1.1.1k

    Cet exemple montre que libcrypto.so.1.1 est un lien symbolique pointant vers le fichier libcrypto.so.1.1.1k . Par conséquent, copiez le fichier sain libcrypto.so.1.1.1k vers le même chemin sur le disque problématique.

  3. Restaurez le fichier de bibliothèque.

    Remplacez <mount_directory> par le répertoire de montage réel que vous avez créé.

    sudo cp /usr/lib64/libcrypto.so.1.1.1k <mount_directory>/usr/lib64/
    Selon l'exemple, vous devez exécuter sudo cp /usr/lib64/libcrypto.so.1.1.1k /test/usr/lib64/ .
  4. Définissez les autorisations correctes et recréez le lien symbolique.

    1. Définissez les autorisations et la propriété du fichier.

      Remplacez <mount_directory> par le répertoire de montage réel.

      # Set permissions to rwxr-xr-x
      sudo chmod 755 <mount_directory>/usr/lib64/libcrypto.so.1.1.1k
      
      # Set owner and group to root
      sudo chown root:root <mount_directory>/usr/lib64/libcrypto.so.1.1.1k
      Selon l'exemple, vous devez exécuter sudo chmod 755 /test/usr/lib64/libcrypto.so.1.1.1k et sudo chown root:root /test/usr/lib64/libcrypto.so.1.1.1k .
    2. Recréez le lien symbolique.

      sudo ln -sf /usr/lib64/libcrypto.so.1.1.1k <mount_directory>/usr/lib64/libcrypto.so.1.1
      Selon l'exemple, vous devez exécuter sudo ln -sf /usr/lib64/libcrypto.so.1.1.1k /test/usr/lib64/libcrypto.so.1.1 .

Étape 4 : Rattacher le disque à l'instance problématique en tant que disque système

  1. Démontez le système de fichiers.

    Remplacez <mount_directory> par le répertoire de montage réel.

    sudo umount <mount_directory>
    Selon l'exemple, vous devez exécuter sudo umount /test .
  2. Détachez le disque système réparé.

    1. Revenez à la console ECS et accédez à la page de détails de l'instance saine. Cliquez sur Block Storage .

    2. Dans la colonne Actions du disque système réparé, cliquez sur Detach .

    3. Dans la boîte de dialogue Detach Disk , cliquez sur OK .

  3. Rattachez le disque système réparé à l'instance d'origine.

    1. Accédez à la page de détails de l'instance problématique, cliquez sur l'onglet Block Storage , puis cliquez sur Attach Disk .

    2. Sur la page Attach to Instance , sélectionnez le disque système réparé comme Disk , configurez les Logon Credentials , puis cliquez sur Next .

    3. Sur la page Partition Disk and Create and Mount File Systems , sélectionnez Configure Later .

  4. Démarrez l'instance ECS.

Étape 5 : Vérifier les résultats

Connectez-vous à l'instance ECS problématique et redémarrez le service SSH pour vérifier qu'il fonctionne correctement.

Pour arrêter la facturation, vous pouvez libérer l'instance saine après avoir confirmé la restauration du service.

Recommandations

  • Manipulez les fichiers système critiques avec prudence : Avant de supprimer, déplacer ou modifier des fichiers système critiques, créez toujours un snapshot pour sauvegarder vos données. Ne supprimez pas les fichiers système que vous ne connaissez pas bien.

  • Utilisez des méthodes d'installation logicielle standard : Utilisez toujours le gestionnaire de paquets natif du système, tel que yum ou apt , pour installer ou désinstaller des logiciels. Cela garantit la gestion automatique des dépendances et aide à prévenir les dommages aux bibliothèques partagées.