Divide and Conquer

[에러해결] go tool compile: fork/exec /usr/lib/go-1.18/pkg/tool/linux_amd64/compile: resource temporarily unavailable 본문

성장캐/분산컴퓨팅

[에러해결] go tool compile: fork/exec /usr/lib/go-1.18/pkg/tool/linux_amd64/compile: resource temporarily unavailable

10살 2024. 5. 29. 18:13
728x90

s23710660@swye:~/sequential_mapreduce/src/mapreduce$ go test -run TestBasic ./...
go tool compile: fork/exec /usr/lib/go-1.18/pkg/tool/linux_amd64/compile: resource temporarily unavailable
go tool compile: fork/exec /usr/lib/go-1.18/pkg/tool/linux_amd64/compile: resource temporarily unavailable
go tool compile: fork/exec /usr/lib/go-1.18/pkg/tool/linux_amd64/compile: resource temporarily unavailable
s23710660@swye:~/sequential_mapreduce/src/mapreduce$

위 에러는 GO 언어의 테스트 중에 자원이 일시적으로 사용할 수 없을 때 발생
→ 시스템의 리소스 제한을 확인하고, 사용중인 프로세스를 꺼주면 된다

아래 명령어는 신중히 사용할 것

# s23710660 사용자가 열어 놓은 .nfs 파일 찾기
lsof -u s23710660 | grep .nfs*

# 전체 시스템에서 s23710660 사용자가 소유한 .nfs 파일을 찾아 삭제
find /home/s23710660/sequential_mapreduce/src/mapreduce -user s23710660 -type f -name '.nfs*' -exec rm -f {} +

# .nfs 파일을 사용하는 모든 프로세스를 종료
lsof /home/s23710660/sequential_mapreduce/src/mapreduce/.nfs* | awk '{print $2}' | tail -n +2 | xargs -I {} kill -9 {}

# 삭제 재시도
find /home/s23710660/sequential_mapreduce/src/mapreduce -user s23710660 -type f -name '.nfs*' -exec rm -f {} +

# 내가 실행하는 프로세스만
ps -u s23710660

# 나의  go 및 mapreduce.test 프로세스를 확인
ps -u s23710660 | grep go
ps -u s23710660 | grep mapreduce.test

# s23710660 사용자의 모든 go랑 mapreduce.test 프로세스를 종료
ps -u s23710660 | grep mapreduce.test | awk '{print $1}' | xargs kill -9
ps -u s23710660 | grep go | awk '{print $1}' | xargs kill -9
ps -u s23710660

find /home/s23710660/sequential_mapreduce/src/mapreduce -user s23710660 -type f -name '.nfs*' -exec rm -f {} +

# 다시 실행
go test -count=1 -run TestBasic -timeout 150s ./...

아니 학교 서버라 안 될 때도 있나? 이거 똑같이 했는데 안 되는 경우도 있네

 

반응형
Comments