我在联想笔记本电脑中内置了SD卡读取器,并且已将VirtualBox和Debian压缩安装到VM中,但似乎无法在SD卡上查看EXT4分区或任何分区!
我问了这个问题: 通过将SD卡安装在另一台计算机上来更改IP设置
建议的答案包括将SD卡安装在虚拟机中。
我在联想笔记本电脑中内置了SD卡读取器,并且已将VirtualBox和Debian压缩安装到VM中,但似乎无法在SD卡上查看EXT4分区或任何分区!
我问了这个问题: 通过将SD卡安装在另一台计算机上来更改IP设置
建议的答案包括将SD卡安装在虚拟机中。
Answers:
我的笔记本电脑有内置的读卡器,没有显示为USB设备。为了使其正常工作,我必须先将EXT4分区挂载为RAW,然后再将其分配给VM,然后再引导VM。
我注意到的第一件事是,如果我在“ 计算机管理”下打开“ 磁盘管理”实用程序-右键单击“我的电脑”,然后选择“ 管理”,那么您应该能够将SD卡视为磁盘,并且由于Kibbee提到我的磁盘也具有三个分区,我猜想是更大的分区中间分区是我一直追求的分区。
要在VirtualBox中挂载原始分区,您需要知道磁盘和分区号。我首先使用Windows命令行实用程序Diskpart和list disk
命令确认了这些信息(在我的笔记本电脑上,在磁盘管理中,SD卡显示为#1)
为了正确识别分区,我以VirtualBox命令listpartitions
为例:
vboxmanage internalcommands listpartitions -r awdisk \\.\PhysicalDrive1
对我来说,输出是:
Number Type StartCHS EndCHS Size (MiB) Start (Sect)
1 0x0c 16 /0 /1 1023/3 /32 75 2048
2 0x83 1023/3 /32 1023/3 /32 1590 157696
3 0x82 1023/3 /32 1023/3 /32 191 3416064
由此,我猜测分区2是我试图访问的EXT4分区。
为了使原始分区可用于Linux来宾,VirtualBox允许您提交createrawvmdk
命令,以创建扩展名为.vmdk的文件,然后可以从VM的存储设置中将其指定为现有磁盘。同样,这里以我为例:
vboxmanage internalcommands createrawvmdk -filename
C:\VirtualMachines\Debian\disk1_part2.vmdk -rawdisk \\.\PhysicalDrive1
-partitions 2
(您可以忽略“ -partitions 2”参数来启用设备上的所有分区。)
启动虚拟机之前
现在,您可以启动VM并可以访问EXT4分区。
如果满足以下条件:
则即使您是管理员,上述操作也可能失败。这是由于非管理员无法访问原始设备。
我看到了4种可能的解决方案,但都不是很好的解决方案:
要做到这一点,我用了一个SD卡读卡器,类似这一个。我在当地的一元商店里买了一家,这是最便宜的商店。虽然我认为几乎所有的USB读卡器都可以使用。
插入并启动虚拟机后,转到Virtual Box的“设备”菜单,然后选择USB,然后找到您的USB设备。我的显示为“ Generic-USB2.0-CRW [8687]”。您的设备名称可能不同。插入电源后,它会自动安装驱动器并为2个分区中的每一个弹出一个窗口(不包括交换分区)。如果您没有遇到这种情况,则该设备在我的计算机上将被识别为/ dev / sdb,具有三个分区:
boot: /dev/sdb1
root: /dev/sdb2 <-- This is the EXT 4 one with the /etc/network/interfaces file
swap: /dev/sdb3
虚拟机上的设备名称可能不同,并且如果将Raspberry SD卡使用的不是Debian,则分区可能会有所不同。如果您没有随身携带的SD卡读卡器,则可能需要尝试将SD卡放入相机,然后将其附加到Virtual Box。只是使用我的电子书阅读器(Kobo)进行了测试,并且只显示了vfat(引导)分区,这可能会或可能不会起作用。