QEMU,基础命令2
这里涉及到一个知识点-文件概念
什么是文件概念呢,就是你必须对系统内置存储文件目录有一定的了解,光靠手机上的文件管理器是不行的(大部分无法解压7z,更不用说我们后面要讲的tar.gz格式了)
首先,想要使用QEMU运行一个操作系统,需要一个合适的镜像,镜像是文件系统存储的一种形式,我们把系统封存在镜像里面,然后使用QEMU挂在运行,镜像起到一个系统盘的作用,QEMU最常见的镜像格式是qcow,qcow2,img等等,像电脑上的vmware虚拟机,也是采用镜像的方式,他的常见格式是vmdk,还有vbox虚拟机,他的常见格式是vdi, 这里推荐尽量使用qcow2作为主流格式
选好一个要运行的镜像,你需要知道你的镜像位置以及路径,一般的安卓内置存储都是在/sdcard路径下面,可能会有特殊的设备不同,这里强烈建议安装一个ES文件浏览器por,我们需要搞清楚我们的镜像文件的路径,并且记住他
进入ES文件浏览器,他的顶上会显示你当前内置存储路径
图片上的是一般内置存储的路径,如果是使用linux deploy可以再/属性/允许挂载android上的资源/然后添加挂载点,输入以下路径即可
如果是使用userland或Utermux那就方便一点,里面部署完成linux应该会自动给你挂载上安卓的内置存储,你只需要在跟目录找一找,使用cd命令进入某个目录,然后输ls直到里面的目录名称和es文件浏览器内的目录文件夹名称一样即可
接下来是部署命令,找到你要运行的镜像,一般镜像的作者都会说明镜像的配置信息,比如网络声音显卡CPU等等,由于本教程是新手教程,我们先从简单的命令行配置开始
QEMU分为系统模式(qemu-system)和用户模式(qemu-user)
系统模式是指模拟一个操作系统(包括完整的主板以及硬件)
用户模式是指运行一个应用程序(例如wine就是依赖这个来运行)
我们需要模拟一个操作系统,当然是要启用它的系统模式
我们就模拟常见的X86架构的windows
想要模拟x86我们需要第1个核心部分的命令:
qemu-system-i386
注释:i386代表的是x86硬件平台架构,x64则代表x86_64
这条命令的大概意思呢是这样的:
QEMU进入系统模式!现在命令你立刻模拟x86架构的硬件
命令行第1步,就是先输写这个命令,你需要告诉QEMU你要模拟的架构是什么
第2步,你需要告诉QEMU你的镜像在哪里?
那么具体怎么告诉呢? 你需要把镜像以磁盘的方式挂载给QEMU
假设我的内置存储在linux下的路径就是/sdcard,镜像名称叫做win7mini格式是qcow2那么接下来
我们接着第1步面临的后面来书写
qemu-system-i386 -hda /sdcard/win7mini.qcow2
这条命令的意思是:将路径为/sdcard/下的win7mini.qcow2挂载为磁盘A
注意事项:QEMU对命令行的表达方式极为严格,在输入每一条命令时必须用空格隔开,然后在第2条命令开头加上“-”这样才是正确的表达式,如果都糊在一块那么QEMU将会翻脸不认人
举例:[命令一](空格)-[命令二]
就类似于我们上面的命令:qemu-system-i386就代表命令一,我们需要再在后面加上空格和一个"-"号 命令二代表的是hda /sdcard/win7mini.qcow2
我们现在已经告诉了QEMU我们需要运行的架构,以及镜像位置,接下来是需要告诉他,我们的运行内存应该设定多少,就相当于电脑上的内存条中的内存(检称ram)
这一步很简单,只需要加上参数 -m xxxxM 我们在接着之前的命令,继续往下写
qemu-system-i386 -hda /sdcard/win7mini.qcow2 -m 800M
这条命的意思是:分配800MB给虚拟机用来作为启动系统的ram
给多少内存要根据你的手机ram进行酌情分配,建议不要给太多,否则会造成杀后台
注意符号空格及大小写!!!
[命令一](空格)-[命令二](空格)-[命令三]
提示:-m后面还有一个空格,必须要先把这个空格给出后才可以写数据,单位:G或M
错误示范:xxx -m1024M
正确示例:xxx -m 1024M
告诉他内存信息硬盘以及架构后,我们需要给他设定一个图形输出,因为我们是在命令行界面,命令行界面是无法进行图形输出的,因此我们需要设定一个输出的方式以及端口,这里推荐使用VNC,虚拟机的连接方式有三种,具体可以查看我之前的视频《安卓手机虚拟机APQ使用详细教程》,里面分了很多P,其中有一个是专门讲连接方式的特点的,我们使用最简单的vnc连接,我们需要加上一条命令: -vnc