searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

如何准备基于WSL2的OurBMC编译环境

2024-01-09 09:40:52
53
0

第一步:检查WSL2运行要求

在安装WSL2 之前,需要确定编译机器运行操作系统为 Windows 10 或者 Windows 11:

    1、对于Windows 10 x64 系统:版本 1903 或更高版本,采用 内部版本 18362 或更高版本。

    2、对于Windows 10 ARM64 系统:版本 2004 或更高版本,采用 内部版本 19041 或更高版本。

    3、低于18362 的版本不支持 WSL 2,请更新 Windows 版本或者选择VM编译环境。

若要检查 Windows 版本及内部版本号,选择 Win徽标键+R,然后键入“winver”,选择“确定”。

第二步:安装WSL2

在Windows功能中先启用“适用于 Linux 的 Windows 子系统”以及“Hyper-V”的可选功能,然后才能在 Windows 上安装 Linux 分发。

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

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

安装 WSL 2 之前还必须启用“虚拟机平台” 功能,以管理员身份打开 PowerShell 并运行:

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

重新启动计算机(此步不可跳过),以完成 WSL 安装并更新到 WSL 2。

计算器重启完成后,接下来从微软官网下载Linux内核更新包并安装,有两个选择:

    1)如果是X86_64位计算机,下载适用的WSL2 Linux内核更新包(wsl_update_x64.msi)

    2)如果使用的是ARM64计算机,下载ARM64包(wsl_update_arm64.msi)

运行下载好的更新包。 (双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)

安装完成后,请继续执行下一步 - 在安装新的 Linux 分发时,将 WSL 2 设置为默认版本。

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

wsl --set-default-version 2

第三步:安装Ubuntu(以 22.04为例)

在aka.ms微软官网手动下载Ubuntu 2204发行版包

使用 7-zip 等软件解压 Ubuntu2204-221101.AppxBundle/Ubuntu_2204.1.7.0_x64.appx 文件

(强烈建议在非系统盘解压该文件,这样WSL2的硬盘文件在后期将不会占用巨量的系统盘空间)

进入解压后的文件夹,执行exe文件。

若发现 ext4.vhdx 文件出现在exe的同级目录下,则表示安装成功。

在打开新安装的 Ubuntu 22.04 分发版时,将会要求你完成的第一步是创建帐户,包括用户名和密码。此用户名和密码限定使用于安装的单独的Linux分发版,与Windows用户名无关。

创建用户名和密码后,该帐户将是分发版的默认用户,并将在启动时自动登录。此帐户将被视为 Ubuntu 22.04 管理员,能够运行 sudo (Super User Do) 管理命令。

第四步:整备OurBMC编译环境

4.1、切换国内源 【因社区白名单限制,4.1章节内容无法完整上传,切换Ubuntu国内源(网易/清华/上海交通大学等)的方法请读者自行百度搜索】

<略>

sudo apt update

sudo apt upgrade

sudo apt autoremove

4.2、安装OurBMC编译和QEMU所需组件

sudo apt-get install -y git python3-distutils gcc g++ make file wget cpio build-essential libsdl1.2-dev texinfo gawk chrpath diffstat libpixman-1-dev dos2unix liblz4-tool zstd lz4 bzip2 openssh-server net-tools

4.3、Enable WSL2 SSH服务

sudo ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key

sudo ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key

sudo ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key

修改配置文件让sudo不需要输入密码

sudo vi /etc/sudoers

找到%sudo ALL=(ALL:ALL) ALL这一行,修改为%sudo ALL=(ALL:ALL) NOPASSWD:ALL ,保存退出

修改SSHD配置文件,允许无密码登陆

sudo vi /etc/ssh/sshd_config

打开PasswordAuthentication yes的注释,使其生效

修改bashrc文件,在文件最后添加语句 sudo service ssh restart,让SSH服务自启动

sudo vi ~/.bashrc

启动SSH服务

sudo service ssh start

4.4、配置GIT信息 (使用自己的昵称和邮箱)

git config --global user.name "Need-to-modify"

git config --global user.email "Need-to-modify@example.com"

至此,OurBMC的编译环境已整备完毕。

建议生成WSL2用户的SSH Key并且提交至Git服务器,用于代码的下载、更新与提交等任务。

ssh-keygen -t ed25519 -C "Need-to-modify@example.com"

ssh-keygen -t rsa -b 4096 -C "Need-to-modify@example.com"

 

TIPS:

1、【如何启动】开机后执行ubuntu-xxxx.exe即可启动WSL2(也可做成快捷方式放到桌面);

2、【如何SSH】WSL2(Ubuntu)启动后,可使用命令行工具(比如cmd.exe/Cmder/PowerShell/ MobaXterm等)SSH登陆该系统,执行指令为 ssh iasi@localhost (iasi为Ubuntu默认用户),PowerShell下的实际操作:

3、【文件共享】安装好WSL2后,可以使用 WIN+R 输入 \\wsl$ 访问WSL2 的磁盘内容

4、【如何重启】WSL 子系统是基于 LxssManager 服务运行的,只需要将 LxssManager 重启即可, 可以做成一个 bat 文件。(注意:必须在管理员权限下运行)

net stop LxssManager      ## 关闭LxssManager服务

net start LxssManager     ## 打开LxssManager服务

5、卸载/注销子系统卸载前请注意文件资料备份

wslconfig /l                       ## 显示已安装列表。

wslconfig /u Ubuntu        ## Ubuntu为上述列表中的名字 注销子系统

 

 

0条评论
0 / 1000