Ich kann conda nicht finden, aber nur, wenn ich sudo benutze

0

Ich habe gerade Anaconda (Python 2.7-Version) installiert /usr/local/bin

Ich fügte /usr/local/bin/anaconda2/bin/dem Pfad hinzu.

Wenn ich jetzt condavon der Eingabeaufforderung aus starte, läuft es einwandfrei (kann aber nichts ohne installieren, sudoda es sich in dem Verzeichnis befindet).

Jedoch wenn ich den gleichen Befehl mit sudoihm laufen lasse , kann nicht finden conda.

Weiß jemand warum das so ist?

Ohne sudo:

$ conda
usage: conda [-h] [-V] command ...

conda is a tool for managing and deploying applications, environments and packages.

Options:

positional arguments:
  command

Mit sudo:

$ sudo conda
sudo: conda: command not found
Gewähren
quelle

Antworten:

1

Versuchen Sie conda mit seinem absoluten Pfad aufzurufen:

 sudo /path/to/conda

Sie haben Ihrem Benutzer $ path wahrscheinlich einen Conda-Speicherort hinzugefügt, jedoch nicht dem sudo-Konto

Wenn dies funktioniert, können Sie den $ -Pfad für den Root-Benutzer genauso ändern, wie Sie es für Ihren Benutzer getan haben

sudo export PATH=$PATH:/usr/local/bin

BEARBEITEN: Export funktioniert nicht mit sudo, aber Sie können Ihren Pfad in / etc / sudoers (secure_path) ändern

Félicien
quelle
Ah danke. Es funktioniert mit dem absoluten Pfad mit sudo. Wenn ich jedoch versuche, den Pfad mit sudo hinzuzufügen, wird mir mitgeteilt, dass der Befehl sudo: export: nicht gefunden wurde. Sicherlich muss der Export standardmäßig auf dem Pfad von sudo sein?
Grant
Sie haben Recht, der Export funktioniert nicht mit sudo, da es sich um einen eingebauten Shell-Befehl handelt
Félicien,
Probieren Sie sudo -E conda
Félicien
@Grant exportist eine eingebaute Shell - sudo exportschlägt also im Wesentlichen aus dem Grund fehl, dass sudo cd nicht ausführen kann . Es würde sowieso nicht helfen, da sudo seine eigenen secure_pathin der /etc/sudoersDatei definierten verwendet.
Steeldriver
0

Am Ende hatte ich eine ähnliche Situation. Beim Versuch, conda zu aktualisieren, waren Berechtigungen erforderlich, die ich nicht vergeben konnte, da sie mit sudo nicht so gut angezeigt wurden. Daher habe ich versucht, meinem Benutzer Berechtigungen zu erteilen, wie in diesem Beitrag vorgeschlagen, aber mit miniconda3. Nachdem das Update erneut ausgeführt wurde, funktionierte es.

Johann Cruz
quelle