web-dev-qa-db-fra.com

mise à jour automatique du port: "sources macPorts: l'exécution de la commande a échoué"

J'essaie de selfupdate mes Macports, mais je reçois le message suivant:

Error: /opt/local/bin/port: port selfupdate failed: Error synchronizing 
MacPorts sources: command execution failed

J'ai vérifié mon /opt/local/bin/macports et le répertoire n'existe pas. Au lieu de cela, il se trouve dans /opt/local/var. Serait-ce là le problème?

Courir avec -dt, J'obtiens ce qui suit:

[Users/user] > selfupdate
DEBUG: MacPorts sources location: /opt/local/var/macports/sources/rsync.macports.org/release/base
--->  Updating MacPorts base sources using rsync
rsync: failed to connect to rsync.macports.org: Connection refused (61)
rsync error: error in socket IO (code 10) at /SourceCache/rsync/rsync-42/rsync/clientserver.c(105) [receiver=2.6.9]
Command failed: /usr/bin/rsync -rtzv --delete-after rsync://rsync.macports.org/release/base/ /opt/local/var/macports/sources/rsync.macports.org/release/base
Exit code: 10
DEBUG: Error synchronizing MacPorts sources: command execution failed
    while executing
"macports::selfupdate [array get global_options] base_updated"
Error: /opt/local/bin/port: port selfupdate failed: Error synchronizing MacPorts sources: command execution failed

Qu'est-ce que l'erreur 61? Des idées pour résoudre ce problème?

71
darksky

J'étais derrière un pare-feu. J'ai essayé sur un réseau différent et cela a fonctionné.

44
darksky

J'ai eu ce même problème récemment et j'ai oublié d'exécuter la commande sous root. Si quelqu'un d'autre rencontre le problème, assurez-vous d'exécuter la commande comme suit:

Sudo port selfupdate
121
Eric K.

Il n'y a pas /opt/local/bin/macports. L'exécutable dont vous avez besoin est /opt/local/bin/port. (Les fichiers de port sont dans /opt/local/var/..., qui est correct.)

Basé sur command execution failed:

  • vous avez peut-être oublié d'exécuter en tant que root.
  • port propose les programmes suivants: rsync, tclsh, openssl, tar, chmod, chown. Sont-ils exécutables et dans le PATH? (Est /opt/local/bin dans votre PATH également?)

Si cela ne vous aide pas, exécutez le port avec -dt pour obtenir toutes sortes d'informations de débogage. Cela pourrait aider à trouver le problème. Ajoutez peut-être les parties intéressantes à votre question.

21
nobody

J'ai rencontré le même problème, mais j'ai utilisé cette méthode par la suite.

Aller à: $prefix/etc/macports/sources.conf (mon chemin est comme ça):

/opt/local/etc/macports/sources.conf 

commentez l'entrée rsync et ajoutez une nouvelle entrée comme suit:

#rsync://rsync.macports.org/release/tarballs/ports.tar [default]
https://distfiles.macports.org/ports.tar.gz [default]

Après cela, vous pouvez exécuter:

Sudo port -d sync

Il est également expliqué sur MacPorts.com .

16
beautifulcode

Mise à jour pour Mavericks: pour vous assurer que les outils de ligne de commande XCode sont installés, ouvrez un terminal et exécutez xcode-select –-install, puis suivez les instructions de la fenêtre contextuelle qui s'affiche:

  • accepter la licence

Bien sûr, cela s'ajoute aux autres conseils tels que la vérification de l'exécution de Sudo port selfupdate.

14
Miles

Si quelqu'un d'autre a ce problème et qu'il a récemment mis à jour XCode, la racine de mon problème est que les outils de ligne de commande ont été omis de la dernière version.

L'ouverture de XCode et l'installation des outils de ligne de commande via le panneau de préférences XCode ont corrigé cette erreur générée par MacPorts.

11
pbab_13

Si votre entreprise bloque l'accès via rsync, vous pouvez utiliser l'archive http. Expliqué ici

J'espère que cela t'aides.

EDIT: Maintenant, préférez utiliser homebrew

5
iGranDav

Moi aussi, j'ai eu la même erreur. C'est parce que la connexion réseau est rejetée. Si vous utilisez le WiFi ou la connexion publique de l'université/entreprise, le pare-feu refuserait la connexion.

Comme vous pouvez le voir sur la sortie de -dt "rsync: échec de connexion à rsync.macports.org: connexion refusée (61)"

Des solutions de contournement sont disponibles sur le site macports:

1) Utilisation de svn .

2) Si svn échoue également, vous pouvez essayer d'utiliser tarball quotidien .

Vous pouvez tester les modifications en exécutant "Sudo port -d sync"

Remarque: Si le https échoue, vous pouvez le remplacer par http. Mais il n'est pas recommandé de le faire, car vous allez chercher à partir d'une connexion non sécurisée.

2
JacksonIsaac

J'ai fait face au même problème. Le principal problème était mon réseau. Parce que le port NETWORK a été bloqué pour;

rsync: //rsync.macports.org/release/tarballs/ports.tar

Essayez d'utiliser un autre réseau.

2
Koza

pour quelqu'un qui a encore un problème, vous avez peut-être oublié d'accepter la licence Xcode:

# Sudo xcodebuild license

n'oubliez pas de regarder à travers et de taper "d'accord" à la fin.

1
rain cheng

Dans mon cas, le problème était interne à Macports! J'ai mis à jour rsync (celui fourni par Apple est ancien) avec Macports, puis Macports n'a pas pu l'utiliser (/ opt/local/bin/rsync) mais j'ai demandé à la place d'utiliser/usr/bin/rsync qui n'existe pas (ou a été effacé pour forcer à utiliser Macports rsync?). J'ai créé un lien doux entre les deux et maintenant ça marche à nouveau.

0
lorenzaccio