U盘插入电脑上,分两种情况传到虚拟机里。
一是,如果虚拟机设置为u盘设备直连的话,宿主系统看不到u盘,结果是u盘直接插入 openbsd 系统了,内核就提示u盘插入,并给出硬盘名称,例如消息: sd0 ....,如果你没有消息提示,运行 dmesg 命令,看最后的地方有没有关于 u盘的信息。
二是,虚拟机没有设置u盘直连,点击虚拟机连接u盘,这时宿主系统退出 u盘,虚拟机将 u盘接入 openbsd 系统中,你将看到消息,或者同样通过 dmesg 看到消息。
看到 u盘的消息后,就知道U盘的设备名称了。假设是 sd0, 那么接着运行 disklabel sd0 ,看卡 sd0 是怎么分区的,c 代表整个硬盘,剩下的代表分区,a、b、i等,组合起来就是分区名称: sd0a、sd0b、sd0c、sd0i 等,其中 sd0c 代表整个硬盘。同时 disklabel 显示分区的分区类型。
找到分区名称之后,mount 指令。openbsd 5.4 之后,openbsd 在执行 mount 时,会自动分析分区的格式化类型,所以不必指定分区类型。windows 的 nt 格式也支持,读没有问题,写就不好说了。
举一个完整的例子:window7 系统,虚拟机软件 vmware,16g u盘格成 ntfs 格式,u盘上有一个文件 test。虚拟机openbsd已经启动,电脑插入 u 盘,windows7 弹出对话框,关闭。右键点击 vmware 状态栏的硬盘标志,点击“连接 u 盘“,这时 windows7 退出 u盘,虚拟机openbsd 立刻看到消息:sd0 at SCSIbus ...,然后 disklabel sd0,看到有 c 和 i 两个分区,c 不能mount ,i 可以,且是 NTFS 格式。运行mount /dev/sd0i /mnt ,这样之后, 在 /mnt/ 下就看见 test 文件了。