在window10上运行Linux子系统 WSL(Windows Subsystem for Linux) 并使用

tech2025-03-07  10

另外,本文仅适用于win10 build 16215以及之后的版本,之前的版本可参考官方链接。

用 PowerShell 安装 Windows Subsystem for Linux

启用“虚拟机平台”可选组件

以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

安装 WSL

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

重启电脑

也可以在按下面方式安装

下载 Linux 内核更新包并安装

适用于 x64 计算机的 WSL2 Linux 内核更新包

将 WSL 2 设置为默认版本:以管理员身份打开 PowerShell 并运行:

wsl --set-default-version 2

安装所选的 Linux 分发版

在应用商店搜索wsl,找一个分版点击 获取

单击以下链接会打开每个分发版的 Microsoft Store 页面:

Ubuntu 16.04 LTSUbuntu 18.04 LTSUbuntu 20.04 LTSopenSUSE Leap 15.1SUSE Linux Enterprise Server 12 SP5SUSE Linux Enterprise Server 15 SP1Kali LinuxDebian GNU/LinuxFedora Remix for WSLPengwinPengwin EnterpriseAlpine WSL

点击启动,首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 然后,需要为新的 Linux 分发版创建用户帐户和密码。此时不需要设置关闭窗口即可。

在开始菜单里再次打开

更新密码:passwd

打开 PowerShell :输入 bash 进入 linux 系统,然后输入 exit 退出系统。

输入 wsl -l -v

是 WSL 2 版本

WSL 1 的 ubuntu系统根目录位置

C:\Users\yunan.hu\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs

使用

更新阿里源

安装 nodejs

尽量避免在 Ubuntu 上使用 apt-get 来安装 node.js, 如果已经这么做了,请手动移除

apt-get purge nodejs && apt-get autoremove && apt-get autoclean

下载最新 nodejs 文件 http://nodejs.cn/download/

拷贝下载的文件到 /home 目录

cp /mnt/c/Users/yunan.hu/Downloads/node-v14.15.0-linux-x64.tar.xz /home

解压并安装

tar xf node-v14.15.0-linux-x64.tar.xz cd node-v14.15.0-linux-x64/ ln -s /home/node-v14.15.0-linux-x64/bin/npm /usr/local/bin/ ln -s /home/node-v14.15.0-linux-x64/bin/node /usr/local/bin/

重新打开 linux 窗口

执行 node -v 和 npm -v

安装 flyway

wget -qO- https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/7.3.0/flyway-commandline-7.3.0-linux-x64.tar.gz | tar xvz && sudo ln -s `pwd`/flyway-7.3.0/flyway /usr/local/bin

安装 postgres 数据库

apt-get install postgresql

修改配置文件:/etc/postgresql/12/main/postgresql.conf

修改 #listen_addresses=‘localhost’ 为 listen_addresses=’*’

port = 5433 #防止和 window 下的冲突

/etc/postgresql/12/main/pg_hba.conf

在 IPv4下方添加

host    all             all             0.0.0.0/0               trust

重启服务:service postgresql restart

vscode 安装 Remote - WSL 插件

安装好用vscode 打开工程,并点击下面按钮

选择用 wsl 重新打开文件夹

之后在 terminal 里执行 npm 命令即可。(注意:连接本地数据库用 localhost 可能需要换成 ip 地址)

 

最新回复(0)