Linux下虚拟机和宿主机简单文件交换方法(以QEMU虚拟机为例)

题外话:虚拟机之所以以为虚拟机,那它当然是不能直接和宿主机一样控制物理硬件的,特别是对物理磁盘的访问。在虚拟机与宿主机之间进行文件交换,要么把两者视同为两台不同的电脑,通过网络共享来访问,要么就利用两者都可访问的存储设备,比如U盘,来间接的进行文件交换,以下文字要讲的,是通过网络方式。

如果去网上查资料,那么,于windows下的这种情况,一般是通过网上邻居来访问,而在Linux,就会是用Samba,windows下的我没有试过,而Samba,的确是很“三八”,至少我觉得很难搞定。

在windows系统下使用QEMU虚拟机软件的时候,它的Win外壳程序QEMU Manager提供了一个不错的方式——FTP访问,QEMU Manager自带一个小的FTP服务,专门用于这个功能的实现,所以,在Linux下,没有QEMU Manager可以用,就要自己模拟这样的一种方式。

虚拟机和宿主机文件交换方法(以下文字所指定虚拟机为QEMU)

一,宿主机安装FTP服务,可以选用bftpd,这个比较的简单快捷,安装完后,配置文件在/etc/bftpd.conf,配置文件中有一项是当ftp被访问时,定位到“home目录”,所以,如果你在宿主机上的登录用户名为host,则在配置文件的用户配置中加入:

user host {

 ANONYMOUS_USER=”yes”

}

当然,用户也可以是访问需要密码的,这个可以自己设定,这样子设定以后,当从虚拟机端ftp登录时,访问目录会是宿主机上你的“home目录”。

二、虚拟机端ftp软件,可以选用lftp,安装一下,不用作什么设定。

三、QEMU提供一个固定的IP作为宿主机和虚拟机之间的通讯之用,10.0.2.2,所以,要进行文件交换时,只要:

lftp 10.0.2.2 -u host

之后用ls命令,可以看到,所例文件为宿主机“home目录”下的文件,之后可以用put或get命令进行文件的交换。

本文由:Alpha 分享 转载请注明出处http://mtoou.info/linux-xunizhuji-wenjian/ 电脑技术博客

虚拟机磁盘映像文件损坏解决方法,环境:WinXP+VMware7.1+Ubuntu8.04

问题描述

编译嵌入式linux内核时,在make menuconfig之后使用make命令,结果由于虚拟机分配的硬盘太小,出现错误。不得不中断编译过程。

VMware虚拟机
VMware虚拟机

但中断编译过程后点击虚拟机却没有反应,于是长按电源键强制关机。开机后打开VM7.1,重新启动Ubuntu8.04.1.vmdk却出现如下错误:

Can not open the disk ‘E:\VM\Ubuntu8.04.1\Ubuntu8.04.1.vmdk’ of one of the snapshot disks it depends on.

Reason: The specified virtual disk needs repair

软件环境

宿主机:Windows XP SP3、虚拟机:VMware虚拟机7.1版,虚拟机中的操作系统:Ubuntu8.04(内存512M,硬盘20G)

虚拟机磁盘映像文件损坏解决方案

  1. 在VM安装目录下找到vmware-vdiskmanager. exe。如果没有此文件,可点击http://kb.vmware.com/selfservice/viewAttachment.do?attachID=1023856-vdiskmanager-windows-7.0.1.exe.zip&documentID=102385 链接直接下载,下载解压后将其改为vmware-vdiskmanager. exe,并复制到VM的安装目录。
  2. 关闭虚拟机并退出VM7.1程序,重启电脑。
  3. 电脑重启后:点击“开始”à“运行”,输入cmd回车,进入windows的命令窗口;进入到VM的安装目录,并输入以下命令

vmware-vdiskmanager –R  E:\VM\Ubuntu8.04.1\Ubuntu8.04.1.vmdk

其中E:\VM\Ubuntu8.04.1\Ubuntu8.04.1.vmdk是出错的vmdk文件的目录。修复成功后会有was corrupted and has been successful repaired的提示。

备注及说明

  • 如果在3.⑶.②运行后,出现类似SSLLoadShareLibrary:Failed to load library libeay32.dll.126的类似错误,则很可是因为没有将vmware-vdiskmanager. exe文件复制到VM的安装目录下,将其复制到VM安装目录下即可。
  • 可参考如下网址:http://net-art.iteye.com/blog/1038723

本文由:麦田里的单车 分享,转载请注明出处http://mtoou.info/xuniji-jinxiangwenjian-x/ 穆童电脑知识博客

Putty登录不上虚拟机安装的Linux问题,五大方法页总汇

①、Linux下查看sshd服务是否启动,ps -ef | grep sshd,如果没有启动,则启动它/etc/rc.d/init.d/sshd start

②用setup命令设置linux网段,使得与本机处于同一个网段,设置后service network restart生效

③使用putty登录,采用sshd服务,端口为22

④如果还是登录不上虚拟机的linux,则查看你要ssh/telnet的系统是否做过安全设置,比如限定某些特定IP才能登录,最好先在linux系统中查查有没有类似的设定看看有没有设置hosts.allow与hosts.deny两个文件均在/etc/目录下优先级为先检查hosts.deny,再检查hosts.allow,后者设定可越过前者限制,例如:

  1. 限制所有的ssh,
    除非从218.64.87.1上来。
    hosts.deny:
    in.sshd:ALL
    hosts.allow:
    in.sshd:218.64.87.1
  2. 封掉218.64.87.1
    hosts.deny
    in.sshd:218.64.87.1

⑤、如果仍然登录不了,查看虚拟机的链接方式,设置为Bridge模式(桥模式)虚拟机常用的几种网络连接方式分别为Bridge模式、NAT模式、Host-Only模式:

Bridge模式(桥模式)

这种模式是在新建虚拟机的时候默认选择的,是将虚拟主机的虚拟网卡桥接到一个Host主机的物理网卡上面,实际上是将Host主机的物理网卡设置为混杂模 式,从而达到侦听多个IP的能力。在这种模式下,虚拟主机的虚拟网卡直接与Host主机的物理网卡所在的网络相连,可以理解为虚拟机和Host主机处于对 等的地位,在网络关系上是平等的,没有谁主谁次、谁前谁后之分。

NAT模式

这种模式下Host主机的“网络连接”中会出现了一个虚拟的网卡VMnet8(默认情况下)。如果你做过2000/2003的NAT服务器的实验就会理 解:Host主机上的VMnet8虚拟网卡就相当于连接到内网的网卡,Host主机上的物理网卡就相当于连接到外网的网卡,而虚拟机本身则相当于运行在内 网上的计算机,虚拟机内的虚拟网卡则独立于Virtual Ethernet Switch(VMnet8)。在这种方式下,VMware自带的DHCP服务会默认地加载到Virtual Ethernet Switch(VMnet8)上,这样虚拟机就可以使用DHCP服务。更为重要的是,VMware自带了NAT服务,提供了从Host主机的VMnet8 虚拟网卡到外网的地址转换。所以这种情况是一个实实在在的NAT服务器在运行,只不过是供虚拟机用的NAT罢了。

Host-Only模式

这种模式是一种封闭的方式,适合在一个独立的环境中进行各种网络实验。这种方式下Host主机的“网络连接”中出现了一个虚拟的网卡VMnet1(默认情 况下)。和NAT唯一的不同的是:此种方式下,没有地址转换服务。因此这种情况下,虚拟机只能访问到主机,这也是Host-Only的名字的意义。默认情 况下该模式也会有一个DHCP服务加载到Virtual Ethernet Switch(VMnet1)上。这样连接到Virtual Ethernet Switch(VMnet1)上的虚拟机仍然可以设置成DHCP,主要是方便系统的配置。 本文分享者:雪山骑士 转载请务必注明出处:http://mtoou.info/putty-xuniji-linux/

Virtualbox增大虚拟磁盘空间的简单方法

最近遇到的问题,在刚开始建立Virtualbox虚拟机的时候,只分了10G来装xp,C盘只有4G,到现在不够用了。而Virtualbox没有修改虚拟磁盘大小的功能。所以自己想了个办法来增加扩大磁盘空间,步骤如下(以我的xp为倒,总大小10G,C盘4G,D盘6G):

  1. 新建立一个虚拟磁盘文件,大小为你自己所需要的。比如我新建立一个30G的。
  2. 在Virtualbox中对xp的虚拟机设置,再挂载一个虚拟磁盘镜像(我新建立的30G)。
  3. 把虚拟机从光盘或者iso启动,用一个winpe的或者是带有ghost工具的启动盘。我用的是pe。
  4. 在pe中启动ghost,选择disk to disk的方式。在克隆过程中,可以自己调节新硬盘的C盘与D盘的大小,只要不比以前10G上建立的小就成。等待ghost完成。
  5. 再在xp虚拟中设置中去掉10G的虚拟磁盘,只保留30G那个并设为第一ide主通道就是了。