上一篇
物理机虚机传文件
- 物理机
- 2025-08-02
- 3
机与虚机传文件可通过安装VMware Tools后直接拖拽,或设置共享文件夹实现互传,若遇安装问题,可调整虚拟机设置或
通过SSH和Xftp传输(以Kali Linux为例)
- 登录并提权为root用户:在虚拟机中登录到操作系统后,将当前用户权限提升至root级别,这是为了确保后续操作有足够的权限来启动和管理相关服务。
- 启动SSH服务:执行命令
service ssh start
来启动SSH服务;接着使用service ssh status
查看其运行状态,确认是否成功启动;再通过update-rc.d ssh enable
将其设置为开机自启,这样每次系统重启时SSH服务都会自动运行,如果启动失败,可能是由于未配置SSH服务导致的,此时需要进一步配置。 - 配置SSH服务:打开SSH配置文件(路径通常为
/etc/ssh/sshd_config
),进行以下修改:找到第33行的PermitRootLogin without-password
,将其改为PermitRootLogin yes
并去掉前面的注释符号(#);对于第57行的#PasswordAuthentication yes
,去掉注释符号,如果原本是no则改为yes,保存并退出该文件,最后重启SSH服务使配置生效。 - 查找IP地址并建立SSH连接:在虚拟机中使用
ifconfig
命令获取本机的IP地址,然后在物理机上打开Xshell等终端模拟软件,输入刚才查到的IP地址、用户名(一般为root)、密码(即提权时使用的密码),从而建立起与虚拟机的SSH连接。 - 使用Xftp传输文件:成功建立SSH连接后,可以利用Xftp工具在物理机和虚拟机之间传输文件,这种方式适合传输各种类型的文件,且相对稳定可靠。
利用共享文件夹功能
- 关闭虚拟机:先将正在运行的虚拟机关闭,以便进行后续的设置操作。
- 编辑虚拟机设置:选择要设置的虚拟机,进入其设置界面,找到“共享文件夹”选项并进行相应配置。
- 启用共享文件夹并选择映射方式:选择“总是启用”,并在Windows客户机中勾选“映射为网络驱动器”,点击“添加”,然后按照向导提示逐步操作。
- 选择要共享的文件夹或文件:根据自己的需求,选择一个特定的文件夹或文件作为共享资源,可以选择桌面作为一个范例,完成选择后,勾选“启用此共享”,然后点击“完成”。
- 验证结果:开启虚拟机,在虚拟机系统中打开“此电脑”,会发现有一个网络位置,打开这个网络位置,就可以看到之前设置好的共享文件了,这种方法操作简单直观,特别适合初学者快速实现文件共享。
借助EveryThing工具
- 准备大文件:提前准备好需要在物理机和虚拟机之间传输的大文件。
- 配置EveryThing的HTTP服务器功能:打开EveryThing软件,点击工具菜单下的选项,进入HTTP服务器的配置页面,在这里启用HTTP服务器,并根据实际需求进行参数设置。
- 发布服务并下载目标文件:通过浏览器访问发布的服务地址(如http://localhost:8888),按照提示输入验证信息,选中需要上传的文件,右键点击鼠标,在弹出菜单中选择复制连接地址,然后在Linux系统的命令行终端中使用wget命令下载目标文件,只需将IP地址替换为Windows系统的地址即可,需要注意的是,网上有说法称Xshell的上传文件存在大小限制,比如4G以上的文件可能无法上传。
使用第三方工具(如WinSCP、FileZilla)
- 安装第三方工具:根据所使用的操作系统,下载并安装合适的第三方文件传输工具,如WinSCP或FileZilla,这些工具通常具有跨平台支持的特点,能够满足不同环境下的文件传输需求。
- 建立连接并传输文件:打开安装好的第三方工具,创建一个新的会话连接,在连接设置中填写虚拟机的IP地址、端口号、用户名和密码等信息,成功建立连接后,就可以像操作本地文件一样轻松地在物理机和虚拟机之间拖拽文件进行传输,这类工具尤其适合频繁传输大型文件的场景,因为它们提供了高效的传输速度和稳定的连接性能。
方法名称 | 适用场景 | 优点 | 缺点 |
---|---|---|---|
SSH + Xftp | 适用于大多数Linux发行版;适合对安全性有一定要求的场景 | 安全性高;可远程操作;支持断点续传 | 需要一定的命令行基础;配置相对复杂 |
共享文件夹 | 适用于Windows主机下的虚拟机;适合初学者快速上手 | 操作简单直观;无需额外安装软件 | 仅适用于同一台机器上的不同系统之间;功能较为基础 |
EveryThing | 适用于临时传输大文件;适合不想安装额外软件的用户 | 无需安装额外软件;操作简单快捷 | 稳定性较差;不适合长期使用 |
第三方工具(WinSCP/FileZilla) | 适用于各种操作系统;适合频繁传输大型文件的场景 | 跨平台支持;传输速度快;界面友好易用 | 需要安装额外的软件;部分高级功能可能需要付费解锁 |
FAQs
Q1: 如果SSH服务启动失败怎么办?
A1: 如果SSH服务启动失败,首先检查配置文件是否正确无误,确保已经按照上述步骤修改了/etc/ssh/sshd_config
文件中的相关参数,如果仍然无法启动,可以尝试重新安装OpenSSH服务器组件,在某些情况下,可能是因为端口被防火墙阻止导致服务无法正常启动,这时需要检查防火墙设置并开放相应的端口。
Q2: 为什么使用Xshell上传大文件时会遇到限制?
A2: 根据网络上的一些反馈,Xshell确实存在对上传文件大小的限制,特别是对于超过4GB的文件可能会出现问题,这可能是由于软件本身的设计限制或者底层协议的支持情况决定的,为了避免这个问题,建议使用其他支持大文件传输的工具,如WinSCP或FileZilla,它们通常没有这样的限制并且能够更高效地处理大文件传输任务。
物理机与虚拟机之间的文件传输有多种方法可供选择,每种方法都有其特点和适用场景,用户可以根据自己的实际需求和使用习惯