web-dev-qa-db-fra.com

libgcc_s.so.1 doit être installé pour que pthread_cancel fonctionne

Je suis passé à Ubuntu 12.04 aujourd'hui et quand j'étais sur le point de me connecter à mon ftp (qui utilise vsftpd), j'ai une erreur:

libgcc_s.so.1 doit être installé pour que pthread_cancel fonctionne

J'ai mis à jour et mis à jour tout ce que je peux trouver. Je ne sais pas ce qui ne va pas ...

Voici quelqu'un d'autre avec la même erreur: http://ubuntuforums.org/showthread.php?t=1937131

Personne?! Vraiment besoin d'aide :(

4
Patrik
  1. Installer: libpam-ldap
    Vous allez maintenant avoir cette erreur:
    500 OOPS: vsftpd: refusing to run with writable root inside chroot()

A cause de cette mise à jour en v2.3.4:

  • Ajoutez des vérifications plus strictes pour l'erreur de configuration liée à l'exécution avec un répertoire racine inscriptible dans un chroot (). Cela risque de mordre ceux qui ont allumé négligemment chroot_local_user, mais telle est la vie.
  1. Solutions:
    2.1. Supprimer l'accès en écriture au répertoire racine
    2.2. Ou rétrograder à une version plus ancienne. 2.3.2 peut être trouvé ici .
0
Patrik

Cela pourrait fonctionner: Sudo apt-get install libgcc1-dbg.

2
Rahul Bhartari

Le bug semble non résolu à la date (30 octobre). Basculez vers proftpd à la place. Il n'est pas difficile de migrer la base de données d'utilisateurs de vsftpd vers proftpd.

Au moins, c’est ce que j’avais à faire pour que mon serveur soit à nouveau opérationnel (et dès que possible)!

2
aizquier

J'ai eu le même problème, en utilisant vsftpd sur Ubunto 13.10, et aucune des suggestions n'a fonctionné.

Après beaucoup de recherches sur Google, je suis tombé sur le même problème dans le Redhat Bugzilla

Leur solution, qui a fonctionné pour moi: recompiler le paquet vsftpd après avoir modifié le fichier source defs.h (DEFINE VSFTP_AS_LIMIT doit être remplacée par la valeur "400UL * 1024 * 1024"). Je ne prétends pas comprendre ce que ça fait, mais maintenant tout fonctionne parfaitement pour moi.

Pour recompiler le paquet, procédez comme suit (il s’agit d’Ubuntu 13.10, mais devrait fonctionner de la même manière pour les autres versions):

  1. ajoutez des référentiels sources à /etc/apt/sources.list en ajoutant la ligne deb-src http://archive.ubuntu.com/ubuntu saucy main universe restricted
  2. Mettez à jour les listes de paquets: Sudo apt-get update
  3. Installez quelques utilitaires nécessaires à la compilation: Sudo apt-get install fakeroot build-essential
  4. Obtenez tout ce qui est nécessaire pour compiler vsftpd: Sudo apt-get build-dep vsftpd
  5. Obtenez les sources de vsftpd: apt-get source vsftpd (cela fonctionne comme un utilisateur non root)
  6. Remplacez VSFTP_AS_LIMIT dans le fichier defs.h par la valeur 400UL * 1024 * 1024.
  7. Validez les modifications ou la compilation échouera: dpkg-source --commit. Cela créera un nouveau fichier de correctif. Vous êtes ensuite invité à entrer un nom et des informations pour ce message.
  8. Reconstruisez vsftpd: fakeroot buildpackage. Il devrait compiler et créer un nouveau fichier .deb.
  9. Installez ce paquet nouvellement créé: dpkg --install vsftpd_3.0.2-1ubuntu2_AMD64.deb (changez le nom du fichier en conséquence)

Ça y est, a travaillé pour moi. Ce serait peut-être une bonne idée de mettre ce paquet en attente afin qu'il ne soit pas écrasé lorsqu'un nouveau paquet officiel sera publié par l'équipe Ubuntu.

Mise à jour: Je viens d'essayer ceci sur Ubuntu 12.04 LTS, a également fonctionné.

1
user234999