小白配置WSL2环境遇到的坑汇总 | 青训营笔记

1,410 阅读3分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的的4篇笔记。作为一个纯纯的小白,linux系统基本上算是没用过。今天光配环境就遇到了很多很多坑,我想我把这些坑记录下来应该可以帮到很多和我一样的小白。在这篇笔记里总结以下自己遇到的坑,后续待更新,希望能对大家有所帮助。

安装WSL2

很多同学应该已经安装过windows的linux子系统过了,直接输入wsl --install,如果出现了大量的文字信息并且没有后续,说明已经安装过了 image.png

通过 wsl -l -v命令,查看已经安装的wsl的系统以及版本

PS C:\Users\LTY> wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu                 Running         1
  docker-desktop-data    Stopped         1
  docker-desktop         Stopped         1

其中*代表默认wsl系统,可以通过wsl -s <linux系统名称>来进行替换

这里我们要用的是Ubuntu,version是1代表wsl的版本为1,我们需要升级wsl至wsl2,可以使用wsl --set-default-version 2命令进行更改。这里会报一些错但我忘记截图了,主要原因就是没有下载 Linux 内核更新包下载下来简单进行安装即可 安装并修改默认系统的version为2后如下

PS C:\Users\LTY> wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu                 Running         2
  docker-desktop-data    Stopped         2
  docker-desktop         Stopped         2

修改非默认系统的wsl版本,可以通过命令wsl --set-version <distro name> 2

至此WSL2配置完成

为WSL2配置GO环境

下载linux版本的go安装包到本地,确保路径中无中文

image.png 打开linux终端,输入以下命令对该压缩包进行解压

tar -C /usr/local -xzf /mnt/c/lty/Go/go1.18.2.linux-amd64.tar.gz

tar即解压操作,/usr/local为解压的目的地址,/mnt/c/lty/Go/go1.18.2.linux-amd64.tar.gz是压缩包的位置

WSL下,windows的地址是通过mnt目录来进行索引的,比如目录C:\lty\GO在WSL中就是/mnt/c/lty/Go/

解压之后,下一步是修改环境变量,这里我踩了很多坑。 一开始我以为修改环境变量就是输入export GOPATH=xxx就了事的,但当我打开另一个bash窗口后,我发现我的go命令又不能用了,原来是要把修改环境变量的内容写入/etc/profile中,在对该文件进行source操作才可以。但又遇到了另一个问题,该文件只能在sudo状态下进行修改。

环境变量配置的详细步骤如下

  • 打开终端,输入命令sudo -i,并输入密码,进入root态

image.png

  • 输入命令vi /etc/profile进入该文档image.png
  • 点击键盘的insert按钮,进入insert模式,调整光标指最下方,输入以下命令。其中GOPATH大家可以修改为自己的工作目录,其他的和我一样即可。
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin

export GOPATH=/mnt/c/lty/Go
export PATH=$PATH:$GOPATH/bin
  • 按下esc按钮,输入命令:wq,即可保存并退出
  • 输入命令source /etc/profile
  • 输入命令go version,出现以下内容,即配置成功 image.png

安装kitex及thriftgo

直接安装的话我这边有报错

~$ go install github.com/cloudwego/kitex/tool/cmd/kitex@latest
go: github.com/cloudwego/kitex/tool/cmd/kitex@latest: module github.com/cloudwego/kitex/tool/cmd/kitex: Get "https://proxy.golang.org/github.com/cloudwego/kitex/tool/cmd/kitex/@v/list": dial tcp 142.251.43.17:443: i/o timeout

修改goproxy即可,这个比较老生常谈

export GO111MODULE=on 
export GOPROXY=https://goproxy.cn

直接输入export命令只能在该命令行窗口生效,如果想要一直生效的话,也可以仿效之前配置环境变量的方法把这两行命令加入profile中

使用VSCode进行代码编辑

接下来我们可以用windows的vscode远程连接到wsl下进行代码编辑

点击左侧按钮中的远程资源管理器按钮,连接至自己的wsl系统下

image.png

打开文件夹,输入我们要打开的工作空间路径,即可在wsl下使用vscode,但是相关的扩展需要重新安装

image.png

今天先到这吧,后续待更新