Windows系统x86机器安装龙芯(loongarch64)3A5000虚拟机系统详细教程

本次介绍在window系统x86机器上安装loongarch64系统的详细教程。

1.安装环境准备。

  • 首先,你得有台电脑。

        配置别太差,至少4核8G内存,安装window10或者11都行(为啥不能是Window7,你要用也不是不行,你先解决win7补丁更新问题)。

  • 准备虚拟机工具软件QUME。

        官网下载地址:QEMU for Windows – Installers (64 bit),选择最新版本下载即可。

  • 准备 QEMU UEFI 固件文件。

        下载地址:https://mirrors.pku.edu.cn/loongarch/archlinux/images/QEMU_EFI_8.0.fd

  • 准备系统安装镜像。

        下载地址:北京大学开源镜像站

镜像名称:archlinux-2023.12.30-loong64.iso

 

安装QUEM工具。

双击安装下载的  qemu-w64-setup-20231224.exe 文件。

选择您的安装路径,路径中不要有中文。记住这个路径,后面配置环境要用。

然后install,直到完成。

继续配置系统的环境变量:

打开 环境变量

 找到 path

添加您安装的路径(我选择的是D:\QEMU),这里选择您自己安装的目录:

2.安装文件及脚本准备。


选择您需要保存虚拟机文件的地方,不能有中文路径。

我选择的保存的木兰是: F:\VM\Test_uos_loongarch64

将下载的 QEMU UEFI 固件文件 复制进文件夹中。

创建启动批处理文件:

将如下代码复制进去,然后保存:

@echo off
echo.
echo ---------------注意事项---------------
echo      1.路径中不要又中文。
echo      2.文件名称请勿取中文。
echo.
echo ---------------开始执行脚本---------------
echo.
echo 当前路径:请检查此路径是否包含中文。
echo      %CD%      
echo.
set efi_path=""
for /f "tokens=*" %%a in ('dir /b %CD%') do (for %%I in (%%a) do (if %%~xI == .qcow2 (set img_path=%%a) else if %%~xI == .fd (set efi_path=%%a))
)if %efi_path% == "" (echo       未检索到配置文件,请检查后再试!echo.goto :over_err
)echo 检索到配置文件:%efi_path%
:input_img_name
set /p img_name=请输入镜像名称(请输入英文或数字):
:remove_blank_img
if "%img_name:~0,1%"==" " (set "img_name=%img_name:~1%"goto :remove_blank_img
)
if "%img_name%" == "" (echo       输入的文件名错误,请重新输入!echo.goto :input_img_name
)
echo.
:input_img_size
set /p img_size=请输入镜像大小/GB:
:remove_blank_size
if "%img_size:~0,1%"==" " (set "img_size=%img_size:~1%"goto :remove_blank_size
)
if %img_size% == "" (echo       输入的文件大小错误,请重新输入!echo.goto :input_img_size
)set /a check_size=%img_size%
if %check_size% GTR 0 (echo 镜像大小%img_size%/GB.
) else (echo       输入的文件大小错误,请重新输入!echo.goto :input_img_size
)echo.
echo 即将创建镜像:%img_name%.qcow2
echo.
qemu-img.exe create -f raw %CD%\%img_name%.qcow2 %img_size%G
echo.
if EXIST %CD%/%img_name%.qcow2 (echo       生成文件成功:%CD%\%img_name%.qcow2echo.
) else (echo       生成镜像文件失败,请检查后再试!echo.goto :over_err
)echo.
echo ----------是否开始启动安装----------
echo ---------------1.启动安装---------------
echo ---------------2.结束脚本---------------
echo.:input_select_go
set /p select_num=请输入你的选择:
if %select_num% == 1 (echo       启动安装!echo.
)else if %select_num% == 2 (echo       结束脚本!echo.goto :over_err
)else (echo       选择错误,请重新输入!echo.goto :input_select_go
):input_isoPath_go
set isoPath=""
for /f "delims=" %%a in ('mshta "%~f0"') do SET isoPath=%%a
if "%isoPath%" == "" (echo       选择文件错误,请重新选择!echo.goto :input_isoPath_go
)
set sub_name=.iso
setlocal EnableDelayedExpansion
if "x!isoPath:%sub_name%=!"=="x%isoPath%" (echo       选择文件错误,请重新选择!echo.goto :input_isoPath_go
)
echo       选择镜像:%isoPath%
echo.
echo --------------执行安装程序中,请勿关闭--------------qemu-system-loongarch64 ^-m 8G ^-cpu la464-loongarch-cpu ^-machine virt ^-smp 4 ^-bios %efi_path% ^-serial stdio ^-device VGA ^-net nic -net user ^-device nec-usb-xhci,id=xhci,addr=0x1b ^-device usb-tablet,id=tablet,bus=xhci.0,port=1 ^-device usb-kbd,id=keyboard,bus=xhci.0,port=2 ^-hda %CD%\%img_name%.qcow2 ^-cdrom %isoPath% ^-boot once=d
echo --------------结束安装,下一次启动请执行 start.bat --------------
:over_err
pause<input type=file id=f>
<script>
f.click();new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(f.value);close();
</script>

修改文件后缀为.bat 

如果未显示后缀,则需要设置一下即可:

选择 是  修改完成。

3.开始执行安装脚本。


双击 create_install.bat 执行脚本。

如果cmd出现乱码情况,则是编码问题。

如图:

 则需要转下编码,安装 notepad++ 工具,然后打开文件:

然后点击 编码=>转换为ANSI码 保存 即可:

然后再次 双击 create_install.bat 执行脚本:

输入生成的系统名称:英文或数字

比如我输入:loongarch64

输入生成的系统大小:建议系统都必须 大于等于 60 G

比如我输入的:66 

然后选择输入: 1 

启动安装,选择您刚刚下载的.iso的 loongarch64 镜像文件。

然后 确定 等待安装,选择第一个,确定 Enter ,不要关闭命令窗口。 

等待安装界面,挺慢的。。。。到这个界面,开始安装。

选择 磁盘配置

然后选择 使用最佳的默认分区布局

然后 选择第二个 按 TAB 键选择

然后选择 ext4 模式

选择 是 (默认)

继续,选择 Root 密码

输入您要设置的root密码:

再次输入确认:

继续,选择 用户账户

选择 添加一个用户

输入要添加的用户名:

 输入新建用户的密码:

再次输入密码:

选择 是(默认) 设置为超级用户:

选择 确认并退出

继续选择 音频

选择 Pulseaudio

继续 选择  网络配置

选择 将 ISO 中的网络配置复制到安装中

继续选择 时区

输入 “/” ,然后输入 shanghai 然后选择上海

然后选择  安装

然后 按 Enter 继续:

等待安装..........

您是否想要 chroot 到新创建的系统内以进行安装后的配置?

选择 是(默认)

然后安装完成:

安装完成后,直接关闭cmd命令窗口或者直接关闭 QEMU窗口 。

或者

5.安装完成后,启动系统脚本。


在保存目录下新建 start.txt 文件。

打开txt文件,并复制粘贴以下代码模块:

@echo off
echo.
setlocal EnableDelayedExpansion
echo ----------开始检索配置文件----------
set img_path=""
set efi_path=""
for /f "tokens=*" %%a in ('dir /b %CD%') do (for %%I in (%%a) do (if %%~xI == .qcow2 (set img_path=%%a) else if %%~xI == .fd (set efi_path=%%a))
)if %efi_path% == "" (echo       未检索到配置文件,请检查后再试!echo.goto :over_err
)echo 检索到配置文件:%efi_path%if %img_path% == "" (echo       未检索到镜像文件,请检查后再试!echo.goto :over_err
)
echo 检索到镜像文件:%img_path%echo 启动中,请勿关闭..!qemu-system-loongarch64 ^-m 4G ^-cpu la464-loongarch-cpu ^-machine virt ^-smp 4 ^-bios %efi_path% ^-serial stdio ^-device VGA ^-net user,hostfwd=tcp::2222-:22 -net nic ^-device nec-usb-xhci,id=xhci,addr=0x1b ^-device usb-tablet,id=tablet,bus=xhci.0,port=1 ^-device usb-kbd,id=keyboard,bus=xhci.0,port=2 ^-hda %img_path%:over_err
pause

保存后,修改后缀未.bat文件。

然后双击 start.bat 执行启动:

同理,如果出现cmd乱码,请转下编码,安装 notepad++ 工具,然后打开文件,然后点击 编码=>转换为ANSI码 保存 即可。

启动成功界面:

然后输入 root + 密码 登陆。

6.打开ssh服务,设置ssh开机启动。
 

首先安装 ssh 环境:

sudo pacman -Sy net-tools

sudo pacman -S openssh

输入 Y 安装:

查看ssh状态:

systemctl status sshd.service

启动ssh:

systemctl start sshd

设置ssh开机启动:

systemctl enable sshd.service

初始环境应该未安装vim命令:

sudo pacman -S vim

开启ssh的root登录权限:

sudo vim /etc/ssh/sshd_comfig

vim操作命令,我不多说,需要自己百度,修改完成后,保存。

然后重启ssh服务:

systemctl restart sshd

7.使用工具连接ssh。


启动您的ssh连接工具。

 输入地址 127.0.0.1 端口 2222  因为在脚本中,本地2222端口映射到了虚拟机22端口。

输入账号 + 密码 

 连接成功界面:


————————————————

8.安装 图形界面 。       

 执行安装一些常用软件命令和图像界面:

sudo pacman -Sy wget vim git curl base linux linux-firmware base-devel zsh fish grub efibootmgr xfce4 xfce4-goodies lightdm neofetch dosfstools exfatprogs lightdm-gtk-greeter noto-fonts-cjk noto-fonts-emoji btrfs-progs xfsprogs f2fs-tools xfsprogs networkmanager nano fcitx5 fcitx5-configtool fcitx5-chinese-addons 

默认全部选定Enter(有输入Y 的地方输入Y):

 安装完成后,设置默认启动图形界面:

systemctl enable lightdm.service
systemctl enable NetworkManager.service

 

然后。输入 reboot 重启:重启后,登陆root 或者 你创建的账户都行

登陆成功,进入图形化界面:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/712126.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode:860.柠檬水找零

题意&#xff1a;按照支付顺序&#xff0c;进行支付&#xff0c;能够正确找零。 解题思路&#xff1a;贪心策略&#xff1a;针对支付20的客人&#xff0c;优先选择消耗10而不是消耗5&#xff0c;因为5可以用来找零10或20. 代码实现&#xff1a;有三种情况&#xff08;代表三种…

vscode中使用python的cv2.imread()读取图片为None

这是之前的代码&#xff1a; import cv2img_path c:\\Users\\LENOVO\\Desktop\\QQ截图20240228234801.jpg print(img_path) print(cv2.__version__)img cv2.imread(img_path) print(img)运行结果&#xff1a; c:\Users\LENOVO\Desktop\QQ截图20240228234801.jpg 3.4.1 None…

Linux下主线程 return 0 和 pthread_exit(NULL) 的区别

1. 背景 在Linux环境下&#xff0c;主线程以return 0结束时&#xff0c;程序会在主线程运行完毕后结束。而当主线程以pthread_exit(NULL)作为返回值时&#xff0c;主线程会等待子线程结束后才会退出程序。本文将详细探讨这两种方式的区别&#xff0c;并提供相应的代码示例。 …

String类的使用

String常用的构造方法 String的源码 内部是一个数组和hash值&#xff0c;涉及到常量池后续补充&#xff08;常量池&#xff1a;存储相同的字符时只会存储一租&#xff09; String的比较 equals()与&#xff1a;String里面为我们提供了许多方法&#xff0c;可直接调用&#xf…

2024最新-ubuntu22.04安装最新版QT6.6~6.8教程

​ 1. 在官网下载 online_installer&#xff1a; https://download.qt.io/archive/online_installers/4.7/qt-unified-linux-x64-4.7.0-online.run 或者直接镜像站下载&#xff1a; http://mirrors.ustc.edu.cn/qtproject/archive/online_installers/4.7/qt-unified-linux-x6…

数据结构之二叉树的精讲

&#x1d649;&#x1d65e;&#x1d658;&#x1d65a;!!&#x1f44f;&#x1f3fb;‧✧̣̥̇‧✦&#x1f44f;&#x1f3fb;‧✧̣̥̇‧✦ &#x1f44f;&#x1f3fb;‧✧̣̥̇:Solitary_walk ⸝⋆ ━━━┓ - 个性标签 - &#xff1a;来于“云”的“羽球人”。…

苹果汽车项目的败局:起步失误与方向迷茫

苹果汽车的发展方向内部分歧导致项目多年挣扎&#xff0c;最终在本周宣布终止。 Brian X. Chen 和 Tripp Mickle 从项目初期就开始关注苹果的汽车项目。 在过去十年中&#xff0c;许多参与苹果秘密汽车项目“泰坦”&#xff08;内部代号&#xff09;的员工戏称其为“泰坦尼克…

Python实现链表:从基础到应用

一、引言 链表是一种常见的数据结构&#xff0c;它由一系列节点组成&#xff0c;每个节点包含数据和指向下一个节点的指针。链表在内存中的存储不是连续的&#xff0c;这使得它在插入和删除操作上具有较高的效率。本文将使用Python语言来实现一个简单的链表&#xff0c;并展示其…

【前端面试题1】伪类与伪元素有什么区别

伪类与伪元素的区别&#xff1a; 1.伪类使用单冒号&#xff0c;而伪元素使用双冒号。如 :hover 是伪类&#xff0c;::before 是伪元素 2.伪元素会在文档流生成一个新的元素&#xff0c;但伪元素本身并不是DOM元素&#xff0c;并且可以使用 content 属性设置内容 CSS伪类与伪元…

卷积神经网络基本概念补充

卷积&#xff08;convolution&#xff09;、通道&#xff08;channel&#xff09; 卷积核大小一般为奇数&#xff0c;有中心像素点&#xff0c;便于定位卷积核。 步长&#xff08;stride&#xff09;、填充&#xff08;padding&#xff09; 卷积核移动的步长&#xff08;stride…

小白提示您:FaceTime诈骗持续高发,小伙伴们谨防诈骗!

前几天小白的iPhone突然接到了个FaceTime通话请求&#xff0c;说是某抖音账号需要续费啥的才能解锁某些功能。&#xff08;具体小白也记不太清了&#xff09; 这几天也有朋友说有个支付宝客服打FaceTime通话给他说快递出现了点问题&#xff0c;需要操作认证一下才能退款啥的。…

多线程万字详解

进程和线程是计算机程序执行的两个重要概念。 1.进程&#xff1a; 进程是操作系统分配资源的基本单位&#xff0c;每个进程都有自己独立的地址空间&#xff0c;每启动一个进程&#xff0c;系统就会为它分配内存。进程间通信比较复杂&#xff0c;需要用到IPC&#xff08;InterP…

js监听F11触发全屏事件

当用户使用 F11 键进行浏览器全屏时&#xff0c;由于此时并非通过浏览器提供的 Fullscreen API 进入全屏模式&#xff0c;因此无法通过 fullscreenchange 事件来监听全屏状态的变化。在这种情况下&#xff0c;可以通过监听 resize 事件来检测浏览器窗口大小的变化&#xff0c;从…

【学习日记】快速排序

思想 快速排序之所以快&#xff0c;一个重要原因就是其每一次遍历&#xff0c;都把本轮要排序的数字&#xff08;称为轴&#xff09;放到了最终的位置上快排使用分治思想&#xff0c;所以一般采用递归实现&#xff0c;非递归版本可以用栈根据第一点&#xff0c;我们需要一个函…

[渗透教程]-006-渗透测试-Metasploit

文章目录 1.Metasploit简介2.配置2.1方法1 推荐2.2方法23.使用4. Metasploitable2-linuxMetasploit攻击流程攻击实例步骤会话管理1.Metasploit简介 Metasploit是一个渗透测试平台,使您能够查找,利用和验证漏洞.是一个免费的可下载的,通过它可以很容易对计算机软件漏洞实施攻击.…

AttributeError_ ‘list‘ object has no attribute ‘view‘

问题描述 训练yolov9的时候遇到了下面的问题。 In loss_tal.py: pred_distri, pred_scores torch.cat([xi.view(feats[0].shape[0], self.no, -1) for xi in feats], 2).split( (self.reg_max * 4, self.nc), 1) The error is as follows&#xff1a; AttributeError: list …

JavaWeb之 Web概述

目录 前言1.1 Web和 JavaWeb的概念1.2 JavaWeb技术栈1.2.1 B/S架构1.2.2 静态资源1.2.3 动态资源1.2.4 数据库1.2.5 HTTP协议1.2.6 Web服务器 1.3 JavaWeb 学习内容 前言 博主将用 CSDN 记录 Java 后端开发学习之路上的经验&#xff0c;并将自己整理的编程经验和知识分享出来&a…

【Web自动化测试——代码篇十二】自动化测试模型——数据驱动测试和关键字驱动测试

&#x1f525; 交流讨论&#xff1a;欢迎加入我们一起学习&#xff01; &#x1f525; 资源分享&#xff1a;耗时200小时精选的「软件测试」资料包 &#x1f525; 教程推荐&#xff1a;火遍全网的《软件测试》教程 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1…

「优选算法刷题」:删除字符串中的所有相邻重复项

一、题目 给出由小写字母组成的字符串 S&#xff0c;重复项删除操作会选择两个相邻且相同的字母&#xff0c;并删除它们。 在 S 上反复执行重复项删除操作&#xff0c;直到无法继续删除。 在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。 示例&#xff1a; 输…

理解C#里面的集合有哪些?怎么用,什么是安全集合?

介绍 在C#中&#xff0c;集合是一种用于存储和操作多个元素的数据结构。它们提供了各种操作&#xff0c;如添加、删除、查找等&#xff0c;以及遍历集合中的元素。集合通常根据其实现方式和行为特征进行分类。 集合继承IEnumerable 在C#中&#xff0c;几乎所有的集合类型都实现…