$GOPATHを変更した話
Goのインストール時に$GOPATHを~/workspace/goな感じにしたら扱いにくかったのでデフォルト~に戻して、元のディレクトリをrmしようとしたときに消せなかったのでメモ
terminal
$ echo $GOPATH #変更後
/Users/usr/go
$ rm -rf ~/workspace/go
rm: cannot remove '/Users/usr/workspace/go/pkg/mod/golang.org/x/crypto@v0.0.0-20190308221718-c2843e01d9a2/internal/subtle/aliasing.go': Permission denied
rm: cannot remove '/Users/usr/workspace/go/pkg/mod/golang.org/x/crypto@v0.0.0-20190308221718-c2843e01d9a2/internal/subtle/aliasing_test.go': Permission denied
rm: cannot remove '/Users/usr/workspace/go/pkg/mod/golang.org/x/crypto@v0.0.0-20190308221718-c2843e01d9a2/internal/subtle/aliasing_appengine.go': Permission denied
rm: cannot remove '/Users/usr/workspace/go/pkg/mod/golang.org/x/crypto@v0.0.0-20190308221718-c2843e01d9a2/internal/chacha20/chacha_s390x.s': Permission denied
[...]
パーミッションがREAD_ONLY
ゴミプロセスが掴んでるのかと思ったら仕様らしい
解決策
go modは以下で消せとのこと。
terminal
$ go clean -modcache
めんどくさいのでwパーミッションつけて消しました。
terminal
$ find ~/workspace/go/pkg/mod -exec chmod u+w {} \;
$ rm -rf ~/workspace/go
めでたし、めでたし。
Links