文章目录
Windows 安装 Linux 子系统
安装 WSL
什么是 WSL
WSL 是 Windows Subsystem for Linux 的缩写,意思是 linux 版的 window 子系统。
适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。
您可以:
- 在 Microsoft Store 中选择你偏好的 GNU/Linux 分发版。
- 运行常用的命令行软件工具(例如 grep、sed、awk)或其他 ELF-64 二进制文件。
- 运行 Bash shell 脚本和 GNU/Linux 命令行应用程序,包括:
- 工具:vim、emacs、tmux
- 语言:NodeJS、Javascript、Python、Ruby、C/C++、C# 与 F#、Rust、Go 等
- 服务:SSHD、MySQL、Apache、lighttpd、MongoDB、PostgreSQL。
- 使用自己的 GNU/Linux 分发包管理器安装其他软件。
- 使用类似于 Unix 的命令行 shell 调用 Windows 应用程序。
- 在 Windows 上调用 GNU/Linux 应用程序。
什么是 WSL 2
WSL 2 是适用于 Linux 的 Windows 子系统体系结构的一个新版本,它支持适用于 Linux 的 Windows 子系统在 Windows 上运行 ELF64 Linux 二进制文件。 它的主要目标是提高文件系统性能,以及添加完全的系统调用兼容性。
这一新的体系结构改变了这些 Linux 二进制文件与Windows 和计算机硬件进行交互的方式,但仍然提供与 WSL 1(当前广泛可用的版本)中相同的用户体验。
单个 Linux 分发版可以在 WSL 1 或 WSL 2 体系结构中运行。 每个分发版可随时升级或降级,并且你可以并行运行 WSL 1 和 WSL 2 分发版。 WSL 2 使用全新的体系结构,该体系结构受益于运行真正的 Linux 内核。
比较 WSL 1 和 WSL 2
从 WSL 1 更新到 WSL 2的主要原因包括:
- 提高文件系统性能,
- 支持完全的系统调用兼容性。
WSL 2 使用最新、最强大的虚拟化技术在轻量级实用工具虚拟机 (VM) 中运行 Linux 内核。 但是,WSL 2 不是传统的 VM 体验。
WSL 2 有 WSL 1 的优点,包括 Windows 和 Linux 之间的无缝集成,启动时间短,资源占用量少,并且无需 VM 配置或管理。 虽然 WSL 2 确实使用 VM,但 VM 是在幕后管理和运行的,因此你将具有与 WSL 1 相同的用户体验。
如果使用 WSL 2,文件密集型操作(如 git 克隆、npm 安装、apt 更新、apt 升级等)的速度都明显更快。
安装 WSL
1. 启用 Windows 功能
2. 安装 WSL 发行版
安装前请先设置好 WSL 版本,参考 5. 补充 部分
3. 单机菜单启动 WSL
4. 设置用户和密码(密码会隐藏字符)
5. 补充
以上过程已经安装好了 WSL ,这里做一些补充
- window 11默认的 WSL 版本是 2
WSL 1 版本可以下载 Linux 内核更新包,升级到 WSL 2
下载最新包 - 检查正在运行的 WSL 版本
wsl -l -v - 将默认版本设置为 WSL 1 或者 WSL 2
wsl --set-default-version 1
wsl --set-default-version 2 - 更改已安装的 WSL 版本 (我的镜像Linux发行版是Ubuntu-20.04)
wsl --set-version Ubuntu-20.04 1
wsl --set-version Ubuntu-20.04 2
WSL 的基本命令
- 更新 WSL
wsl --update - 检查 WSL 状态
wsl --status - 关闭
wsl --shutdown
关于 Ubuntu 系统的 root 账户
在Ubuntu
中,默认情况下,root
账户是被禁用的,没有设置密码。如果你需要执行具有root
权限的命令,通常会使用sudo
命令,它允许授权的用户以另一用户身份(通常是root
)来执行命令。
如果你确实需要切换到root
用户,你可以设置root
用户的密码,然后使用该密码登录。
- 输入以下命令,然后按回车键:
sudo passwd root
这个命令会提示你输入当前用户的密码,以验证你的身份。
接下来,它会让你为root
账户输入新密码。你需要输入密码两次来确认。
- 设置完密码之后,你可以使用
su
命令来切换到root
账户:
su root
这时系统会提示你输入刚才设置的root
密码。
- 需要注意的是,通常不推荐直接使用
root
账户,由于它拥有对系统的完全访问权限,任何误操作都可能造成系统不稳定或安全问题。相反,建议继续使用sudo
来执行需要提升权限的命令。
如果你只是想要一个具有root
权限的shell
会话,你可以使用以下命令:
sudo -i
这将提供一个root shell,而无需启用root账户。
Linux子系统和Windows系统的文件交互
- Windows
在Windows
系统中,使用快捷键win+e
打开资源管理器,在资源管理器地址栏中输入
\\wsl.localhost
或者输入
Linux
即可打开Linux子系统文件夹
- Linux
在Linux
中输入
cd /mnt
即可看到Windows系统文件夹
Linux子系统安装Java
首先Windows
系统下载jdk
的Linux
版本
我下载到了 c/Users/li/Downloads/almalinux
之后进入Linux
子系统执行 cd /mnt/c/Users/li/Downloads/almalinux
之后copy jdk
安装包 cp jdk-8u391-linux-x64.tar.gz /usr/local/
进入到/usr/local/
目录解压tar zxvf jdk-8u391-linux-x64.tar.gz
解压之后配置环境变量
- java 配置(未配置classpath)
vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_391
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile
完成以上步骤