Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah \"sudo go menjalankan main.go\" Gagal dengan \"exec: go: fail boleh laku tidak ditemui dalam $PATH\" pada Ubuntu 16.04?

Mengapakah \"sudo go menjalankan main.go\" Gagal dengan \"exec: go: fail boleh laku tidak ditemui dalam $PATH\" pada Ubuntu 16.04?

Susan Sarandon
Susan Sarandonasal
2024-11-17 06:54:03726semak imbas

Why Does

Menyelesaikan masalah "sudo go run main.go" Ralat

Apabila cuba melaksanakan "sudo go run main.go" untuk menangkap paket rangkaian menggunakan "gopacket" pada Ubuntu 16.04, anda mungkin menemui mesej ralat "exec: go: executable file not found in $PATH." Ralat ini timbul kerana pembolehubah persekitaran yang diperlukan tidak ditetapkan untuk pengguna akar.

Penyelesaian:

Daripada menggunakan "sudo go run ...," ikuti ini langkah:

1. Susun Binari tanpa sudo:

  • Gunakan "go build" untuk menyusun fail main.go ke dalam binari boleh laku. Contohnya:

    go build

2. Jalankan Binari dengan sudo:

  • Laksanakan binari yang disusun dengan sudo. Contohnya:

    sudo ./mycapt

Sebagai alternatif:

  • Gunakan "go install" untuk memasang binari ke dalam sistem anda $GOPATH/bin direktori.

    go install
  • Kemudian jalankan binari dengan sudo daripada direktori $GOPATH/bin:

    sudo $GOPATH/bin/mycapt

Dengan menyusun dan menjalankan binari secara berasingan, anda memastikan pembolehubah persekitaran yang diperlukan tersedia kepada pengguna akar.

Atas ialah kandungan terperinci Mengapakah \"sudo go menjalankan main.go\" Gagal dengan \"exec: go: fail boleh laku tidak ditemui dalam $PATH\" pada Ubuntu 16.04?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn