C++学习笔记(9)基础环境准备-WSL2+Archlinux安装

该文详细介绍了如何在Windows系统中启用和配置WSL2,包括启动PowerShell,启用必要的功能,下载并安装ArchLinux,设置默认版本,修改系统配置,添加软件源,更新系统,创建用户并设置权限。

1.启动PowerShell
powershell.exe

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

3.启用虚拟平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

4.升级并重启系统
对于x64的系统要求win10版本为1903 或者更高
win + R 输入 winver 查看版本

5.下载WSL2升级包
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

6.安装wsl_update_x64.msi

7.设置WSL2为默认版本
wsl --set-default-version 2

8.下载LxRunOffline
https://github.com/DDoSolitary/LxRunOffline/releases
https://github.com/DDoSolitary/LxRunOffline/releases/download/v3.5.0/LxRunOffline-v3.5.0-msvc.zip

9.下载ArchLinux安装包
https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/latest/
https://mirrors.tuna.tsinghua.edu.cn/archlinux/iso/latest/archlinux-bootstrap-2021.05.01-x86_64.tar.gz

10.安装ArchLinux
.\LxRunOffline i -n ArchLinux -f d:/Backup/OS/Linux/Archlinux/archlinux-bootstrap-2021.05.01-x86_64.tar.gz -d C:\WSL\ArchLinux -r root.x86_64

11.设置ArchLinux默认为WSL2版本
wsl --set-version ArchLinux 2 

12.启动并进入ArchLinux
wsl -d ArchLinux

13.删除DHCP配置
rm /etc/resolv.conf

14.退出ArchLinux
exit

15.关闭ArchLinux
wsl --shutdown ArchLinux

16.重新启动并进入ArchLinux
wsl -d ArchLinux

17.在Windows系统中打开WSL2中ArchLinux中的/etc目录
cd /etc/ 
explorer.exe . 

18.修改pacman.conf,在这个文件最后加入
[archlinuxcn] 
Server = https://mirrors.tuna.tsinghua.edu.cn/archlinuxcn/$arch

19.进入目录 pacman.d ,编辑里面的mirrolist文件,将China的源注释去掉

20.进行系统更新
pacman-key --init 
pacman-key --populate 
pacman -S archlinuxcn-keyring 
pacman -Syy
pacman -S base base-devel vim git wget nano

21.设置Root用户密码
passwd

22.创建新用户
useradd -m -G wheel -s /bin/bash <用户名>
passwd <用户名>

23.将文件 /etc/sudoers 中的 wheel ALL=(ALL) ALL 那一行前面的注释去掉
nano /etc/sudoers

24.设置默认使用普通用户登录Archlinux
查看账户ID
id -u <用户名> 
退出ArchLinux
exit
设置默认登陆用户
lxrunoffline su -n <你的arch名字> -v <账户id> 

<think>好的,用户遇到了在特定内核版本5.15.167.4-microsoft的WSL2环境安装usbipd所需工具包的问题,提示找不到linux-tools-5.15.167.4-microsoft-standard-WSL2linux-cloud-tools相关的包。我需要帮他解决这个问题。 首先,根据引用[1]中的错误信息,用户尝试安装的包在默认的仓库里不存在。这可能是因为微软定制的内核对应的工具包没有包含在Ubuntu的官方仓库中。通常,linux-tools包是随着内核版本一起发布的,但WSL2的内核是微软特别定制的,可能和标准Ubuntu内核不同,所以官方仓库里没有对应的工具包。 接下来,我需要考虑可能的解决方案。常见的方法有几个: 1. **手动编译安装**:用户可能需要从微软的Linux内核源码仓库下载对应版本的源码,然后编译生成所需的工具包。这需要用户具备一定的编译知识,步骤可能包括下载源码、安装编译依赖、配置、编译和安装工具。不过,WSL2的内核源码是否公开可用,需要确认。 2. **使用通用包替代**:尝试安装通用版本的linux-tools或linux-cloud-tools,比如linux-tools-generic或者linux-cloud-tools-generic,这些包可能包含所需工具,但需要确认是否兼容微软的内核版本。不过根据引用[1]的错误,用户已经尝试过特定版本,可能通用包无法匹配内核版本导致无法使用。 3. **调整APT源或添加第三方仓库**:有时候特定的工具包可能存在于其他仓库中,但微软的WSL2内核可能没有对应的仓库,需要用户查找是否有第三方提供这些包。不过可能性较低,因为微软可能没有维护这样的仓库。 4. **联系微软支持或社区资源**:如果上述方法都不可行,可能需要查阅微软的官方文档或社区论坛,看看是否有其他用户遇到类似问题并找到了解决方法。 根据用户提供的信息,引用[3]显示用户正在编译AOSP,可能已经具备一定的开发环境,所以手动编译可能是可行的选项。需要指导用户如何获取内核源码,并编译所需的usbip工具。 另外,需要提醒用户在编译前安装必要的依赖,比如构建工具、头文件等。同时,编译后的工具可能需要手动配置路径或更新环境变量。 还需要考虑用户是否在WSL2中正确启用了USBIP功能,可能需要配置内核模块,但WSL2的内核默认可能没有加载相关模块,这可能需要更深入的配置,甚至重新编译内核,但这对普通用户来说可能过于复杂。 总结可能的步骤: 1. 检查是否有现成的包可用,尝试通用包。 2. 如果不行,手动下载内核源码,编译工具。 3. 安装编译后的工具,配置环境。 4. 测试usbipd是否正常工作。 需要注意用户的环境是Ubuntu发行版,所以具体命令需要适配Ubuntu,比如使用apt安装依赖,使用git克隆源码等。 最后,可能需要提醒用户如果手动编译无效,可能需要考虑其他替代方案,比如使用不同版本的WSL内核,或者等待微软提供对应的工具包。</think>根据您使用的WSL2内核版本 $5.15.167.4$-microsoft,安装usbipd工具包的解决方案如下: ### 一、问题根源 微软定制版WSL2内核的 $linux-tools$ 包未包含在标准Ubuntu仓库中,导致直接安装失败[^1]。其内核命名规范与标准Linux发行版存在差异: $$ linux-tools-\$(uname -r) \rightarrow linux-tools-5.15.167.4-microsoft-standard-WSL2 $$ ### 二、替代解决方案 #### 方案1:安装通用工具包 ```bash sudo apt install linux-tools-generic linux-cloud-tools-generic ``` 通过符号链接建立版本关联: ```bash sudo ln -s /usr/lib/linux-tools/*-generic/* /usr/local/bin/ ``` #### 方案2:手动编译安装(推荐) 1. 安装编译依赖: ```bash sudo apt install build-essential flex bison libssl-dev libelf-dev ``` 2. 获取内核源码: ```bash git clone https://github.com/microsoft/WSL2-Linux-Kernel.git --depth=1 -b linux-msft-wsl-5.15.y cd WSL2-Linux-Kernel/tools/usb/usbip ``` 3. 编译安装: ```bash make sudo cp libsrc/.libs/libusbip.a /usr/lib/ sudo cp src/usbip /usr/local/bin/ sudo cp src/usbipd /usr/local/sbin/ ``` ### 三、验证安装 ```bash usbipd --version # 预期输出应包含"usbipd (version 5.15.167.4)" ``` ### 四、环境配置 ```bash sudo modprobe usbip-core sudo modprobe usbip-host sudo usbipd -D ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值