之前讲过一种方法,PC跟VM在同局域网的情况下,可以用samba的方式挂载linux系统的目录到windows上。但是当PC跟VM不同局域网时这种方式就没办法了。

网络环境

在示意图中,PC只能直连物理机的172.1.11.2,但是PC没办法将VM:10.1.1.10里的目录用samba方式挂载出来。如果是ssh想直连VM,可以通过物理机端口映射的办法设置。方法如下

物理机端口映射

在物理机上配置隧道

ssh -CNfg -L1022:localhost:22 root@10.1.1.10

这样在PC上就可以通过ssh直连VM了。

//ssh -p <端口号> <VM用户名>@<物理机ip>
例:ssh -p 1022 root@172.1.11.2

sshfs安装

sshfs 是通过 ssh 协议的方式,只要你可以通过ssh直连VM,你就可以将VM的目录挂载到本地。

1、linux上安装sshfs

情况1:在线安装

在VM能连外网的情况可以选择这种方式比较方便。

ubuntu系统

# sudo apt install sshfs

centos系统

# yum -y install  epel-release
# yum -y install fuse-sshfs
# yum install sshfs
//如果上面方式失败,可采用
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum repolist

情况2:离线安装

在VM不能连外网的情况时,只能先下载好rpm安装包进行安装。

下载网站:http://rpmfind.net/ (只需搜索包名的前几个词)

需要下载的安装包有:

/root # ls
fuse-libs-2.9.2-11.el7.x86_64.rpm
fuse-2.9.2-11.el7.x86_64.rpm
fuse-sshfs-2.5-1.el7.rf.x86_64.rpm <<< 此包依赖前两个包才能正确安装

安装

# rpm -ivh fuse-libs-2.9.2-11.el7.x86_64.rpm
# rpm -Uvh fuse-2.9.2-11.el7.x86_64.rpm
# rpm -ivh fuse-sshfs-2.5-1.el7.rf.x86_64.rpm
//验证安装成功
# whereis sshfs
sshfs: /usr/bin/sshfs /usr/share/man/man1/sshfs.1.gz

2、win10系统安装 WinFPS 和 SSHFS

参考安装步骤:https://github.com/billziss-gh/sshfs-win

  1. 安装winfsp.msi

  2. 先通过 此电脑 > 属性 确定处理器类型(如:x64)。安装sshfs-win-x64.msi

    遇到过的问题:PC重启后挂载失败,可以再次通过安装包的repair启动服务。

3、win10中映射网络驱动器

设置驱动器方法1:此电脑 > 计算机 > 添加一个网络位置 > 输入网络地址

设置驱动器方法2:此电脑 > 计算机 > 映射网络驱动器

删除驱动器方法:选中驱动器 > 右键菜单 > 断开连接

例如:我的编译VM是通过172.1.1.2的1022端口转发访问的。

sshfs命令格式参考:https://www.cnblogs.com/xieqk/p/ssh-sshfs-win-mount-winfsp-dokan.html

\\sshfs\root@172.1.1.2!1022
\物理机IP !转发的端口号
//指定目录挂载
\\sshfs.r\root@172.1.1.2!1022\home\

Win10上能看到linux VM的目录则挂载成功!然后就可以用本地工具(如:source insight)查看修改文件。

参考

  1. win10挂载linux流程: https://zhuanlan.zhihu.com/p/79122312
  2. https://zhuanlan.zhihu.com/p/314245985
  3. 远程挂载环境:https://cloud.tencent.com/developer/article/1168897
  4. VM的三种连接方式: https://www.cnblogs.com/gester/p/5833539.html
  5. samba配置研究:https://www.oreilly.com/openbook/samba/book/ch04_06.html

windows通过sshfs挂载linux目录的更多相关文章

  1. Linux安装sshfs挂载远程目录到本地及卸载

    挂载远程目录的方式很多,这里把sshfs记录一下备忘.Linux用sshfs挂载远程目录到本地 安装sshfs 在Ubuntu下,只需要使用 $ sudo apt-get install sshfs ...

  2. windows通过NSF挂载centos目录

    windows通过NSF挂载centos目录 来源: http://blog.csdn.net/u012955038/article/details/77151346 CentOS 配置 1.安装NF ...

  3. linux使用windows磁盘,挂载共享目录

    实例说明:客户两台服务器,一台web服务器(linux)只有50G,课程资源太多太大导致磁盘不够用:客户的文档服务器(windows)磁盘很大超过1T,所以产生了,将web资源使用文档服务器磁盘的想法 ...

  4. Linux使用sshfs挂载远程目录到本地

    1安装sshfs [root@iZwz9hy7gff0kpg1swp1d3Z ~]# yum install sshfs 2创建本地目录 [root@iZwz9hy7gff0kpg1swp1d3Z ~ ...

  5. Windows10通过NFS挂载linux目录

    大致分为以下三大步骤: 一.启动NFS服务器 二.启动NFS客户端 三.挂载NFS目录 工具: win10.虚拟机Ubuntu18.0系统 一. 启动linux的NFS服务端: 以下均为Ubuntu操 ...

  6. windows下sshfs挂载远程文件夹-server could not connect故障解决

    使用sshfs挂载server上面的文件夹到windows中.轻松方便. 在之前的系统上挂载.没出问题. 近期买了块固态硬盘.装了个系统. 结果在系统上执行sshfs时报例如以下错误: 事实上非常ea ...

  7. Ubuntu下使用sshfs挂载远程目录到本地(和Windows挂载盘一样)

    访问局域网中其他Ubuntu机器,在不同机器间跳来跳去,很是麻烦,如果能够把远程目录映射到本地无疑会大大方面使用,就像Windows下的网络映射盘一样.在Linux的世界无疑也会有这种机制和方式,最近 ...

  8. Ubuntu下使用sshfs挂载远程目录到本地

    访问局域网中其他Ubuntu机器,在不同机器间跳来跳去,很是麻烦,如果能够把远程目录映射到本地无疑会大大方面使用,就像Windows下的网络映射盘一样.在Linux的世界无疑也会有这种机制和方式,最近 ...

  9. Ubuntu 下使用 sshfs 挂载远程目录到本地

    参考链接:http://blog.csdn.net/netwalk/article/details/12952719 一.Ubuntu 上安装sshfs Ubuntu源中已经包含了sshfs,以及所需 ...

  10. 将windows共享文件夹挂载在linux机器的/mnt/windows/ 目录下进行访问

    将windows共享文件夹挂载在linux机器的/mnt/windows/ 目录下进行访问.windows机器ip:192.168.1.101,用户名:XXXX密码:XXXXlinux机器ip:ip2 ...

随机推荐

  1. GitLab私有化部署 - CI/CD - 持续集成/交付/部署 - 源代码托管 & 自动化部署

    预期目标 源代码管理 借助GitLab实现源代码托管,私有化部署版本,创建项目,创建用户组,分配权限,项目的签入/牵出等. 自动化部署 源代码产生变更时(如签入),自动化编译并发布到指定服务器中部署, ...

  2. Dubbo 03: 直连式 + 接口工程

    进一步改正dubbo框架中简单的直连式的不足 需要用到3个相互独立的maven工程,项目1为maven的java工程作为接口工程,项目2,3为maven的web工程 工程1:o3-link-inter ...

  3. lombok下载和安装

    lombok是什么 第三方的组件:使用注解来简化类的编写,注解替换set/get/构造 注解: @setter @getter @NoArgsConstructor @AllArgsConstruct ...

  4. 使用工厂方法模式设计能够实现包含加法(+)、减法(-)、乘法(*)、除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果。要求使用相关的工具绘制UML类图并严格按照类图的设计编写程序实

    2.使用工厂方法模式设计能够实现包含加法(+).减法(-).乘法(*).除法(/)四种运算的计算机程序,要求输入两个数和运算符,得到运算结果.要求使用相关的工具绘制UML类图并严格按照类图的设计编写程 ...

  5. 复杂场景数据处理的 OLTP 与 OLAP 融合实践

    本文首发于 NebulaGraph 公众号 Dag Controller 介绍 Dag Controller 是 NebulaGraph 企业版的系统,经过反复测试无误后进行了发布,它主要解决的是 O ...

  6. SpringCloud微服务实战——搭建企业级开发框架(四十七):【移动开发】整合uni-app搭建移动端快速开发框架-添加Axios并实现登录功能

      uni-app自带uni.request用于网络请求,因为我们需要自定义拦截器等功能,也是为了和我们后台管理保持统一,这里我们使用比较流行且功能更强大的axios来实现网络请求.   Axios ...

  7. Python基础之函数:1、函数的介绍及名称空间

    目录 一.函数 1.什么是函数 2.函数的语法结构 3.函数的定义与调用 4.函数的分类 5.函数的返回值 6.函数的参数 二.函数参数 1.位置参数 2.默认参数 3.可变长参数 1.一个*号 2. ...

  8. 从 洛谷P5309 Ynoi2011 初始化 看卡常

    一般情况下,程序运行消耗时间主要与时间复杂度有关,超时与否取决于算法是否正确. 但对于某些题目,时间复杂度正确的程序也无法通过,这时我们就需要卡常数,即通过优化一些操作的常数因子减少时间消耗. 比如这 ...

  9. [CS61A] Lecture 4. Higher-Order Functions & Project 1: The Game of Hog

    [CS61A] Lecture 4. Higher-Order Functions & Project 1: The Game of Hog Lecture Lecture 4. Higher ...

  10. laravel 腾讯云短信发送

    public function tecentSms(Request $request) { $phone = $request->input("hiphone"); $app ...