Rumah >pembangunan bahagian belakang >Golang >Mengapakah \'sudo go run main.go\' Gagal pada Ubuntu?

Mengapakah \'sudo go run main.go\' Gagal pada Ubuntu?

Patricia Arquette
Patricia Arquetteasal
2024-11-16 11:11:03542semak imbas

Why Does

Menyahpepijat "sudo go run main.go" Ralat Pelaksanaan pada Ubuntu

Melaksanakan "sudo go run main.go" dalam Ubuntu 16.04 persekitaran sering membawa kepada ralat "fail boleh laku tidak ditemui dalam $PATH." Ini berpunca daripada fakta bahawa pembolehubah persekitaran tidak dipelihara untuk pengguna root secara lalai. Untuk menangani isu ini, ikut langkah di bawah:

Lumpuhkan Tetapan Semula Persekitaran:

1. Edit fail /etc/sudoers.
2. Cari baris yang berbunyi "Defaults env_reset" dan tukarkannya kepada "Defaults !env_reset".

Walau bagaimanapun, kaedah ini mungkin tidak menyelesaikan masalah.

Pendekatan Betul:

Pendekatan yang disyorkan ialah membina binari tanpa sudo dan laksanakan binari dengan sudo. Langkah untuk berbuat demikian:

1. Navigasi ke direktori yang mengandungi main.go.
2. Bina binari menggunakan go build.
3. Laksanakan binari menggunakan sudo, cth.:

sudo ./mycapt

Sebagai alternatif, anda boleh menggunakan go install dan kemudian laksanakan binari menggunakan:

sudo $GOPATH/bin/mycapt

Dengan mengikuti ini langkah, pembolehubah persekitaran akan dikekalkan dan anda akan dapat melaksanakan perduaan Go dengan jayanya dengan kebenaran sudo.

Atas ialah kandungan terperinci Mengapakah \'sudo go run main.go\' Gagal pada Ubuntu?. 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