CentOS(三)主机与虚拟机之间的文件共享

可参考:http://www.cnblogs.com/nick-pan/archive/2012/08/18/2645025.html

可参考:http://my.oschina.net/quanpower/blog/132359

可参考:http://www.it165.net/os/html/201410/9446.html
可参考:http://blog.chinaunix.net/uid-8305736-id-2033004.html

备注:如果不是root用户进来,各命令前增加sudo 命令;


主要是在虚拟机上安装扩展包,选定主机上指定目录为共享目录。

虚拟机是windows系统的,也同样在虚拟机上安装扩展包,同样是光驱选ISO文件,执行.exe安装,重启后进入虚拟机操作系统>>我的电脑可看到多了个网络驱动器,建议重启前先在主机上>>选中你的window虚拟机>>设置>>共享文件夹>>添加共享文件夹。如果没有看到网络驱动器,也可以在虚拟机我的电脑右击,选择映射网络驱动器。)

1)选择VBoxGuestAdditions.iso

在Virtual Box上选择虚拟机>>设置>>存储>>光盘>>分配光驱处选择iso文件;(虚拟机没有启动无法选择文件)

对于主机host是windows系统,可以在virtual box安装目录找到VBoxGuestAdditions.iso;

对于主机host是mac系统,可以打开Finder>>应用程序>>右击VirtualBox,选择显示包内容>>Contents\MacOS\VBoxGuestAdditions.iso;


2)在虚拟机Linux安装VBoxLinuxAdditions组件
安装系统组件

#yum install kernel-headers /*内核源代码头文件包*/
#yum install kernel-devel /*如果程序需要内核提供的功能,就需要内核的 C header 来编译程序, linux-devel 里面的东西就用上了。*/
#yum install gcc make

#yum install kernel* dkms gcc

#rpm -qa | grep kernel /*本机看到有两个版本的内核一个是2.6.32-368xxx,另一个是2.6.32-504xxx,将其中的旧版本删掉:#yum remove kernel-xxx版本号*/


#ls /usr/src/kernels /*看看装了哪几个内核版本,有几个版本时启动读秒时按回车可以选择版本启动*/

#uname -r   /*查看内核版本可执行命令*/

#echo export KERN_DIR=/usr/src/kernels/`uname -r`-`uname -m`/*竟然用1键左边的键`,真奇特!没有执行这一步可能会出现下面的异常*/

#ln -s /usr/src/kernels/`uname -r` /usr/src/linux  (其中版本号看当前所进入的内核,在输入kernels版本号时也可以用tab键协助快速输入)

安装VBoxLinuxAdditions组件

#mkdir /media/VirtualBoxGuestAdditions /*创建文件夹*/
#mount -r /dev/cdrom /media/VirtualBoxGuestAdditions/*加载指向自定义文件夹,#startx进入图形桌面是自动加载的*/

#ls /media/ /*可看到VBOXADDITIONS_xxx版本号的文件夹和自己建的文件夹*/

#cd /media/VirtualBoxGuestAdditions/

#sh ./VBoxLinuxAdditions.run /*运行安装*/


/*{异常处理:Building the main Guest Additions module [失败] 

#cat /var/log/vboxadd-install.log /*查看失败提示中的日志文件*/

第一种错误是没设置路径:Error: unable to find the sources of your current Linux kernel.Specify KERN_DIR=<directory> and run Make again

第二种错误是找不到路径,设了但没设置对,可以检查一下内核版本:Error: KERN_DIR does not point to a directory

第三种错误是没找到Perl命令:/bin/sh: perl: command not found/*执行#yum -y install perl 就可以了*/

}*/


3)挂载共享文件夹 

#reboot  /*重启*/
#mkdir /mnt/share /*在linux虚拟机新建共享文件夹*/ 
#mount -t vboxsf winshare /mnt/share  /*将主机host上的共享文件夹挂载到linux虚拟机*/

正常的话mount -t vboxsf winshare /mnt/share共享文件夹应该可以访问了 
#cd /mnt/share 
#ls -al


如果提示 /sbin/mount.vboxsf: mounting failed with the error: No such device 
可能是没有载入内核模块 vboxfs ,先查看下: 
#lsmod | grep vboxsf 
如果没有结果返回,说明 vboxsf没有载入,执行 
#sudo modprobe vboxsf 


要在CentOS虚拟机主机之间复制文件,您需要使用共享文件夹功能。共享文件夹是指将主机文件夹与虚拟机文件夹共享,使得虚拟机能够访问主机文件夹内的文件,并且虚拟机内的更改也会反映到主机上的文件夹内。 首先,在VMware中,打开虚拟机设置,选择“选项”中的“共享文件夹”,勾选“启用共享文件夹”和“始终启用”,选择要共享的主机文件夹,设置文件夹名称和路径。 接着,在CentOS虚拟机中,安装“open-vm-tools”软件包,该软件包提供了VMware虚拟机工具的功能,包括共享文件夹的访问。使用以下命令安装: sudo yum install open-vm-tools 安装完成后,在CentOS终端中输入以下命令即可挂载共享文件夹: sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs 这个命令将主机共享文件夹挂载到CentOS虚拟机的“/mnt/hgfs”目录下。现在,您可以通过在虚拟机中执行命令来访问主机共享文件夹中的文件: cd /mnt/hgfs/shared_folder 共享文件夹中的更改会自动同步到虚拟机主机之间。如果您需要在虚拟机主机之间复制文件,只需在虚拟机终端中使用cp或scp命令即可。例如,将主机共享文件夹中的文件复制到虚拟机中,使用以下命令: cp /mnt/hgfs/shared_folder/file.txt /home/user/ 这将把主机共享文件夹中的“file.txt”文件复制到CentOS虚拟机中的“/home/user/”目录下。 通过这种方式,您可以轻松地在CentOS虚拟机主机之间复制文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值