요즘 wsl을 이용해서 이것 저것 많이 해보는데, 대부분 잘 동작하지만, 간혹 잘 안되는 경우가 있습니다. 오늘도 간혹 잘 안되는 경우를 만났습니다.
Ubuntu에서 대게는(저는) 라이브러리를 설치는 apt를 사용하지만, heroku cli 같은 경우는 snap을 통한 설치만을 가이드하고 있어서, snap으로 설치를 하려고 했습니다.
$ sudo snap install heroku --classic
error: cannot communicate with server: Post http://localhost/v2/snaps/heroku: dial unix /run/snapd.socket: connect: no such file or directory
터미널에는 예상치 못한... 서버와 연결할 수 없다는 에러가 출력됩니다. 혹시 snap이 이상한건가 싶어 서비스 상태를 살펴보니, 정상은 아니구나 싶었습니다. 몇번의 이런 경험이 있었기에, wsl에서 뭔가 문제가 있나 찾아봤습니다.
관련된 이슈를 몇개 찾았는데, 그 중에서 해결방법을 찾았습니다.
daemonize, dbus-user-session, fontconfig를 설치하고, 몇가지를 더 하라고 했는데, 우선은 따라해봤습니다.
$ sudo apt-get update && sudo apt-get install -yqq daemonize dbus-user-session fontconfig
$ sudo daemonize /usr/bin/unshare --fork --pid --mount-proc /lib/systemd/systemd --system-unit=basic.target
$ exec sudo nsenter -t $(pidof systemd) -a su - $LOGNAME
명령을 실행하니, 해보니 정말로 snap을 통해서 설치를 할 수 있었습니다. ( heroku CLI에서 맞는 버전을 찾을 수 없어서 설치를 완료하지는 못했습니다. wsl-x64라고 인식되어 설치를 할 수 없네요. ) 이슈 내용을 보니, 관련해서 뭔가를 하고 있으니, 다음 버전 또는 언젠가는 이문제는 해결되리라 생각됩니다.
윈도우에서 wsl을 사용해서 익숙한 ubuntu를 사용할 수 있는 것은 정말 좋은 일인데, 아직까지는 호환되지 않는 것도 좀 있고, 지원하지 않는 것도 있어, 그리고 그런 것들을 미리 예상할 수 없어서 불편합니다. 완벽히 돌아가는 ubuntu distro가 나와 조만간 이런 불편함이 사라지길 바래 봅니다.
참고 : https://github.com/microsoft/WSL/issues/5126
WSL2- Ubuntu 20.04 Snap store doesn't work due to systemd dependency · Issue #5126 · microsoft/WSL
I just reinstalled ubuntu on WSL2 from scratch in order to upgrade to 20.04 with a clean slate. The main issue I've noticed has to do with a lot of packages moving to snap rather than being mai...
github.com
추가 : heroku CLI를 wsl에서 사용하는 것은 어렵지 않았습니다. snap을 사용하지 않고, install 쉘로 설치하면 됩니다.
$ curl https://cli-assets.heroku.com/install.sh | sh
https://dev.to/twiddlewakka/heroku-cli-on-wsl-26fp
Installing the Heroku CLI on WSL
Wait, wait, let me guess... You're running WSL. You're trying to install Heroku...
dev.to