0. 引言
- 日常开发中往往需要考虑x86和arm两种系统环境,本文提供win10系统安装linux子系统,以及x86系统配置arm子系统的功能
- 本文在win10系统使用wsl安装子系统,使用qemu在x86系统配置arm环境
1. 在win10系统安装linux子系统
- 打开cmd,获取wsl可以安装的子系统列表,并选择一个安装,这里选择的是ubuntu22.04
- 等待安装完成后重启电脑,打开子系统
首次打开需要配置账号密码(该账号有sudo权限,可以切到root)
-
先配置apt源
- 参考链接
(觉得写得还可以麻烦点个赞,谢谢~)
- 参考链接
-
更新apt
apt-get update apt-get upgrade
-
把网络配置好
apt-get install net-tools apt-get install openssh-server # 编辑网络配置文件 vi /etc/ssh/sshd_config # 找到下面两行取消注释并配置 PermitRootLogin yes PermitEmptyPasswords no
-
配置ssh生效并检查,有 active 表示成功
systemctl start ssh systemctl status ssh
-
配置完成之后可以尝先给root改个密码,然后试下自己登录自己
ssh root@localhost
-
可以登录的话 exit 退出一下
-
-
尝试一下复制文件到本地
-
先创建一个文件
-
PC打开cmd尝试复制文件出来
-
2. 在x86系统中配置arm环境
-
先下载个arm镜像
wget https://cdimage.ubuntu.com/releases/22.04/release/ubuntu-22.04.2-live-server-arm64.iso
-
获取arm文件系统
mkdir myos mount ubuntu-22.04.2-live-server-arm64.iso myos/ cp myos/casper/ubuntu-server-minimal.squashfs . umount myos
-
配置arm系统的文件夹
unsquashfs ubuntu-server-minimal.squashfs apt-get install qemu-user-static cp /usr/bin/qemu-aarch64-static squashfs-root/usr/bin/
-
配置好apt源和代理
# 参考上面的apt-get源配置,注意这个是arm的源 vi ./squashfs-root/etc/apt/sources.list # 配置两个代理 vi ./squashfs-root/etc/resolv.conf # 补在上面打开的文件的最后 nameserver 8.8.8.8 nameserver 114.114.114.114
-
切换到arm子系统并配置
# 进入子系统 chroot squashfs-root/ # 测试是否能联网 curl www.baidu.com # 更新apt apt-get update apt-get upgrade # 安装网络相关软件 apt-get install net-tools openssh-server # 可以装一下常用软件 apt-get install -y g++ gfortran iproute2 iputils-ping libbz2-dev libsqlite3-dev \ libblas-dev libblas3 libopenblas-dev libssl-dev libxslt1-dev libffi-dev \ make net-tools openssh-server openssl pciutils sudo unzip vim wget \ xz-utils zlib1g zlib1g-dev cron cmake # 根据需要安装python wget www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz tar -zxf Python-3.9.2.tgz cd Python-3.9.2 ./configure --prefix=/usr/local/python3.9.2 --enable-shared make -j8 && make install -j8 cp /usr/local/python3.9.2/lib/libpython3.9.so.1.0 /usr/lib \ && ln -sf /usr/local/python3.9.2/bin/python3 /usr/bin/python \ && ln -sf /usr/local/python3.9.2/bin/python3 /usr/bin/python3 \ && ln -sf /usr/local/python3.9.2/bin/python3 /usr/bin/python3.9 \ && ln -sf /usr/local/python3.9.2/bin/python3 /usr/bin/python3.9.2 \ && ln -sf /usr/local/python3.9.2/bin/pip3 /usr/bin/pip3.9 \ && ln -sf /usr/local/python3.9.2/bin/pip3 /usr/bin/pip3.9.2
此时,可以将该系统当作arm系统使用。