Fehlerbehebung „sudo go run main.go“-Fehler
Beim Versuch, „sudo go run main.go“ auszuführen, um Netzwerkpakete zu erfassen Wenn Sie „gopacket“ unter Ubuntu 16.04 verwenden, wird möglicherweise die Fehlermeldung „exec: go: ausführbare Datei nicht in $PATH gefunden“ angezeigt. Dieser Fehler tritt auf, weil die erforderlichen Umgebungsvariablen für den Root-Benutzer nicht festgelegt sind.
Lösung:
Anstatt „sudo go run ...“ zu verwenden, befolgen Sie diese Schritte:
1. Kompilieren Sie die Binärdatei ohne Sudo:
Verwenden Sie „go build“, um die main.go-Datei in eine ausführbare Binärdatei zu kompilieren. Zum Beispiel:
go build
2. Führen Sie die Binärdatei mit sudo aus:
Führen Sie die kompilierte Binärdatei mit sudo aus. Zum Beispiel:
sudo ./mycapt
Alternativ:
Verwenden Sie „go install“, um die Binärdatei auf Ihrem System zu installieren $GOPATH/bin-Verzeichnis.
go install
Führen Sie dann die Binärdatei mit sudo aus dem $GOPATH/bin-Verzeichnis aus:
sudo $GOPATH/bin/mycapt
Indem Sie die Binärdatei separat kompilieren und ausführen, stellen Sie sicher, dass die erforderlichen Umgebungsvariablen dem Root-Benutzer zur Verfügung stehen.
Das obige ist der detaillierte Inhalt vonWarum schlägt „sudo go run main.go' mit „exec: go: ausführbare Datei nicht in $PATH gefunden' unter Ubuntu 16.04 fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!