【Linux笔记】虚拟机内Linux内容复制到宿主机的Window文件夹(文件)中
Linux学习记录
本人使用虚拟机版本:VMware 16.1.1 build-17801498
CentOS镜像:CentOS-7-x86_64-DVD-2009.iso
Linux内核:Kernel 3.10.0-1160.119.1.el7.x86_64
一、共享文件夹
I、Windows宿主机上创建一个文件夹
目录:D:\Centos_iso\shared_files
II、在VMware中设置共享文件夹
1、打开VMware Workstation
2、选择需要设置的Linux虚拟机,点击“编辑虚拟机设置”。
3、在“选项”标签页中,选择“共享文件夹”。
4、点击“添加”按钮,选择之前创建的文件夹作为共享文件夹,并设置适当的访问权限。
III、在Linux虚拟机中挂载共享文件夹
根据VMware Tools的安装情况,共享文件夹会自动挂载到Linux虚拟机的目录(/mnt/hgfs)下
目录:/mnt/hgfs/shared_files
可能出现的问题:
CentOS重启后,进入mnt/hgfs目录下无挂载的共享文件。
这里需要用到VMware Tools重新手动挂载
首先、确保已安装VMware Tools
yum install open-vm-tools -y
然后确认虚拟机已安装共享文件夹,但/mnt/hgfs下没有显示
vmware-hgfsclient
执行手动挂载
vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other
或者
vmhgfs-fuse .host:/ /mnt/hgfs -o nonempty - o allow_other
或者
vmhgfs-fuse /mnt/hgfs -o nonempty
vmhgfs-fuse 命令的第一个参数应该是 VMware 提供的特殊路径,用于访问共享文件夹,而不是共享文件夹的名称。
在 VMware 的环境中,这个特殊路径通常是 .host:/,它代表宿主机的根目录(但实际上,对于共享文件夹,不需要指定 .host:/,即命令中的.host/写法并不是必需的,因为 vmhgfs-fuse 会自动处理这部分)。
命令不能在/mnt/hgfs目录下执行,否则仍然无结果,因为hgfs本就是挂载点
-o allow_other 选项允许其他用户访问挂载点。
-o nonempty 确保在挂载点非空时不会报错,通常用于mount 命令
设置重启自动挂载
编辑etc/fstab文件:vi etc/fstab
将命令到文件中添加:.host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other 0 0
此处:参考博文【Linux笔记】etc/fstab文件内容解析-CSDN博客
.host:/
表示宿主机的共享文件夹路径。
/mnt/hgfs
是虚拟机中用于挂载共享文件夹的目录。
fuse.vmhgfs-fuse
是文件系统类型,这里使用vmhgfs-fuse
模块通过FUSE挂载VMware的共享文件夹。
allow_other
是挂载选项,允许其他用户访问挂载的文件系统。最后两个字段分别用于
dump
和fsck
的考虑,这里都设置为0
,表示不进行备份和文件系统检查。
IV、复制内容到共享文件夹
Windows ->共享文件夹:Ctrl + C/V
Linux ->共享文件夹:
文件内容复制:参考博文【Linux笔记】如何将内容从一个文件复制到另一个文件-CSDN博客
整个文件复制:cp 源文件 共享文件夹
整个文件夹复制:cp -r 源目录 共享文件夹——存在报错如下:暂时还未找到解决方法
cp: cannot create symbolic link 共享文件夹/源目录: Operation not supported
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)