go 프로젝트를 만들려고합니다 make
. 프로덕션에 배포될 때까지는 모든 것이 정상입니다. 배포하는 사용자가 소유자가 아니기 때문에 sudo
. 을 사용해야 하는데 sudo
시스템을 이용해서 볼 수가 없습니다.
이 상황을 재현하기 위해 make를 사용할 필요가 없으며 간단히 다음을 사용하면 됩니다.go version
현재 사용자 환경을 사용해 보았습니다. 예: sudo -E go version
성공하지 못했습니다.
그런 다음 루트로 go를 설치해 보십시오. 성공하지 못했습니다.
마지막으로 .NET의 모든 구성 파일에 대해 전역적으로 golang 경로를 설정해 보십시오 /etc/profile
. 아직도 운이 없습니다.
시스템 과 관련하여 sudo
프로필 설정을 건너뛴 것 같습니다. 그러나 인터넷 검색은 나에게 아무것도 가져 오지 않았습니다. 도와주세요!
미리 감사드립니다!
업데이트 1
언제sudo go version
sudo: go: 명령을 찾을 수 없습니다
언제sudo bash -c "type go"
bash: 0행: 유형: go: 찾을 수 없음
출력은 다음과 sudo -l
같습니다
Matching Defaults entries for deploy on host16-32:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin
User deploy may run the following commands on host16-32:
(ALL : ALL) ALL
(ALL) ALL
답변1
당신의 말에 따르면논평, go 문서에 따르면 다음과 같습니다.
기존 /usr/local/go 트리에 아카이브의 압축을 풀지 마십시오. 이로 인해 Go 설치가 중단되는 것으로 알려져 있습니다.
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz
다음 줄을 다음 줄에 추가하세요 /etc/profile
.
export PATH=$PATH:/usr/local/go/bin
참고: 구성 파일에 대한 변경 사항은 다음에 컴퓨터에 로그인할 때까지 적용되지 않을 수 있습니다.